From 1c6e09b1cebcc2964197778baddf7cced90da160 Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Wed, 13 Nov 2019 16:54:04 -0400 Subject: [PATCH 01/16] Fix sourcemaps The `install` script of `@sentry/cli` is required for the Sentry CLI to work correctly. Without this step, the sourcemap upload fails silently. --- .circleci/scripts/deps-install.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.circleci/scripts/deps-install.sh b/.circleci/scripts/deps-install.sh index 20954ec0b..605eb8593 100755 --- a/.circleci/scripts/deps-install.sh +++ b/.circleci/scripts/deps-install.sh @@ -20,3 +20,6 @@ yarn --frozen-lockfile --ignore-scripts --har (cd node_modules/weak && yarn run install) (cd node_modules/chromedriver && yarn run install) (cd node_modules/geckodriver && yarn run postinstall) + +# for release +(cd node_modules/@sentry/cli && yarn run install) From 3673459a54bc9794f0a3b4600d6b3b6803542281 Mon Sep 17 00:00:00 2001 From: Bruno Barbieri Date: Wed, 13 Nov 2019 20:05:56 -0500 Subject: [PATCH 02/16] lock eth-contract-metadata (#7412) --- package.json | 2 +- yarn.lock | 7 +------ 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index 7c8a1ad9f..ab8df0ba7 100644 --- a/package.json +++ b/package.json @@ -87,7 +87,7 @@ "dnode": "^1.2.2", "end-of-stream": "^1.1.0", "eth-block-tracker": "^4.4.2", - "eth-contract-metadata": "^1.9.2", + "eth-contract-metadata": "1.9.3", "eth-ens-namehash": "^2.0.8", "eth-json-rpc-errors": "^1.1.0", "eth-json-rpc-filters": "^4.1.1", diff --git a/yarn.lock b/yarn.lock index 164faf39f..49c7878e6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9668,16 +9668,11 @@ eth-block-tracker@^4.4.2: pify "^3.0.0" safe-event-emitter "^1.0.1" -eth-contract-metadata@^1.9.1: +eth-contract-metadata@1.9.3, eth-contract-metadata@^1.9.1: version "1.9.3" resolved "https://registry.yarnpkg.com/eth-contract-metadata/-/eth-contract-metadata-1.9.3.tgz#d627d81cb6dadbe9d9261ec9594617ada38a25f2" integrity sha512-qDdH9n2yw5GqWW5E6wrh7KZ8WicpEzofrpuJG3FWiJew+Yt6RapnqtXN8ljvxY+UTZPd1QzLXswKfpJyzsH4Tw== -eth-contract-metadata@^1.9.2: - version "1.9.2" - resolved "https://registry.yarnpkg.com/eth-contract-metadata/-/eth-contract-metadata-1.9.2.tgz#6c23383e35de1014c1c00f2c8c787cd48d54ae20" - integrity sha512-2ycmqRQ9u4Tbpir7hwEKZ8Qjy1bc3KaiRBd/jkL8Xye9wqnYMpgaUK4UHPm1uTnCZZ+KoN0Mxg6kL9JILrYdhA== - eth-ens-namehash@2.0.8, eth-ens-namehash@^2.0.8: version "2.0.8" resolved "https://registry.yarnpkg.com/eth-ens-namehash/-/eth-ens-namehash-2.0.8.tgz#229ac46eca86d52e0c991e7cb2aef83ff0f68bcf" From a57ff0b6813c68d17c27528e17a8d94d8ffa1d63 Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Wed, 13 Nov 2019 19:26:26 -0400 Subject: [PATCH 03/16] Add eslint import plugin to help detect unresolved paths Most of the rules in the import plugin are only useful for projects using purely ES6 imports. The `no-unresolved` rule works with mixed CommonJS and ES6 though, so we at least benefit from that in the meantime. --- .eslintrc | 4 +- package.json | 2 + yarn.lock | 469 ++++++++++++++++++++++++++++++++++++++++++++++++++- 3 files changed, 473 insertions(+), 2 deletions(-) diff --git a/.eslintrc b/.eslintrc index 55fcb3c0c..c7c49a5be 100644 --- a/.eslintrc +++ b/.eslintrc @@ -30,7 +30,8 @@ "mocha", "chai", "react", - "json" + "json", + "import" ], "globals": { @@ -43,6 +44,7 @@ }, "rules": { + "import/no-unresolved": ["error", { "commonjs": true }], "no-restricted-globals": ["error", "event"], "accessor-pairs": 2, "arrow-spacing": [2, { "before": true, "after": true }], diff --git a/package.json b/package.json index ab8df0ba7..fad7c4226 100644 --- a/package.json +++ b/package.json @@ -189,6 +189,7 @@ "@babel/preset-react": "^7.0.0", "@babel/register": "^7.5.5", "@sentry/cli": "^1.30.3", + "@storybook/addon-actions": "^5.2.6", "@storybook/addon-info": "^5.1.1", "@storybook/addon-knobs": "^3.4.2", "@storybook/react": "^5.1.1", @@ -211,6 +212,7 @@ "enzyme-adapter-react-15": "^1.0.6", "eslint": "^6.0.1", "eslint-plugin-chai": "0.0.1", + "eslint-plugin-import": "^2.18.2", "eslint-plugin-json": "^1.2.0", "eslint-plugin-mocha": "^5.0.0", "eslint-plugin-react": "^7.4.0", diff --git a/yarn.lock b/yarn.lock index 49c7878e6..0d4e70c87 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1448,6 +1448,16 @@ lodash "^4.17.13" to-fast-properties "^2.0.0" +"@emotion/cache@^10.0.17": + version "10.0.19" + resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-10.0.19.tgz#d258d94d9c707dcadaf1558def968b86bb87ad71" + integrity sha512-BoiLlk4vEsGBg2dAqGSJu0vJl/PgVtCYLBFJaEO8RmQzPugXewQCXZJNXTDFaRlfCs0W+quesayav4fvaif5WQ== + dependencies: + "@emotion/sheet" "0.9.3" + "@emotion/stylis" "0.8.4" + "@emotion/utils" "0.11.2" + "@emotion/weak-memoize" "0.2.4" + "@emotion/cache@^10.0.9": version "10.0.9" resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-10.0.9.tgz#e0c7b7a289f7530edcfad4dcf3858bd2e5700a6f" @@ -1458,6 +1468,18 @@ "@emotion/utils" "0.11.1" "@emotion/weak-memoize" "0.2.2" +"@emotion/core@^10.0.14": + version "10.0.22" + resolved "https://registry.yarnpkg.com/@emotion/core/-/core-10.0.22.tgz#2ac7bcf9b99a1979ab5b0a876fbf37ab0688b177" + integrity sha512-7eoP6KQVUyOjAkE6y4fdlxbZRA4ILs7dqkkm6oZUJmihtHv0UBq98VgPirq9T8F9K2gKu0J/au/TpKryKMinaA== + dependencies: + "@babel/runtime" "^7.5.5" + "@emotion/cache" "^10.0.17" + "@emotion/css" "^10.0.22" + "@emotion/serialize" "^0.11.12" + "@emotion/sheet" "0.9.3" + "@emotion/utils" "0.11.2" + "@emotion/core@^10.0.9": version "10.0.10" resolved "https://registry.yarnpkg.com/@emotion/core/-/core-10.0.10.tgz#8d3114e5a2f8b178a7067c603a2937516f180b08" @@ -1469,6 +1491,15 @@ "@emotion/sheet" "0.9.2" "@emotion/utils" "0.11.1" +"@emotion/css@^10.0.22": + version "10.0.22" + resolved "https://registry.yarnpkg.com/@emotion/css/-/css-10.0.22.tgz#37b1abb6826759fe8ac0af0ac0034d27de6d1793" + integrity sha512-8phfa5mC/OadBTmGpMpwykIVH0gFCbUoO684LUkyixPq4F1Wwri7fK5Xlm8lURNBrd2TuvTbPUGxFsGxF9UacA== + dependencies: + "@emotion/serialize" "^0.11.12" + "@emotion/utils" "0.11.2" + babel-plugin-emotion "^10.0.22" + "@emotion/css@^10.0.9": version "10.0.9" resolved "https://registry.yarnpkg.com/@emotion/css/-/css-10.0.9.tgz#ea0df431965a308f6cb1d61386df8ad61e5befb5" @@ -1483,6 +1514,11 @@ resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.7.1.tgz#9833722341379fb7d67f06a4b00ab3c37913da53" integrity sha512-OYpa/Sg+2GDX+jibUfpZVn1YqSVRpYmTLF2eyAfrFTIJSbwyIrc+YscayoykvaOME/wV4BV0Sa0yqdMrgse6mA== +"@emotion/hash@0.7.3": + version "0.7.3" + resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.7.3.tgz#a166882c81c0c6040975dd30df24fae8549bd96f" + integrity sha512-14ZVlsB9akwvydAdaEnVnvqu6J2P6ySv39hYyl/aoB6w/V+bXX0tay8cF6paqbgZsN2n5Xh15uF4pE+GvE+itw== + "@emotion/is-prop-valid@0.7.3": version "0.7.3" resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-0.7.3.tgz#a6bf4fa5387cbba59d44e698a4680f481a8da6cc" @@ -1490,11 +1526,34 @@ dependencies: "@emotion/memoize" "0.7.1" +"@emotion/is-prop-valid@0.8.5": + version "0.8.5" + resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-0.8.5.tgz#2dda0791f0eafa12b7a0a5b39858405cc7bde983" + integrity sha512-6ZODuZSFofbxSbcxwsFz+6ioPjb0ISJRRPLZ+WIbjcU2IMU0Io+RGQjjaTgOvNQl007KICBm7zXQaYQEC1r6Bg== + dependencies: + "@emotion/memoize" "0.7.3" + "@emotion/memoize@0.7.1": version "0.7.1" resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.7.1.tgz#e93c13942592cf5ef01aa8297444dc192beee52f" integrity sha512-Qv4LTqO11jepd5Qmlp3M1YEjBumoTHcHFdgPTQ+sFlIL5myi/7xu/POwP7IRu6odBdmLXdtIs1D6TuW6kbwbbg== +"@emotion/memoize@0.7.3": + version "0.7.3" + resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.7.3.tgz#5b6b1c11d6a6dddf1f2fc996f74cf3b219644d78" + integrity sha512-2Md9mH6mvo+ygq1trTeVp2uzAKwE2P7In0cRpD/M9Q70aH8L+rxMLbb3JCN2JoSWsV2O+DdFjfbbXoMoLBczow== + +"@emotion/serialize@^0.11.12", "@emotion/serialize@^0.11.14": + version "0.11.14" + resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-0.11.14.tgz#56a6d8d04d837cc5b0126788b2134c51353c6488" + integrity sha512-6hTsySIuQTbDbv00AnUO6O6Xafdwo5GswRlMZ5hHqiFx+4pZ7uGWXUQFW46Kc2taGhP89uXMXn/lWQkdyTosPA== + dependencies: + "@emotion/hash" "0.7.3" + "@emotion/memoize" "0.7.3" + "@emotion/unitless" "0.7.4" + "@emotion/utils" "0.11.2" + csstype "^2.5.7" + "@emotion/serialize@^0.11.6": version "0.11.6" resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-0.11.6.tgz#78be8b9ee9ff49e0196233ba6ec1c1768ba1e1fc" @@ -1511,6 +1570,11 @@ resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-0.9.2.tgz#74e5c6b5e489a1ba30ab246ab5eedd96916487c4" integrity sha512-pVBLzIbC/QCHDKJF2E82V2H/W/B004mDFQZiyo/MSR+VC4pV5JLG0TF/zgQDFvP3fZL/5RTPGEmXlYJBMUuJ+A== +"@emotion/sheet@0.9.3": + version "0.9.3" + resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-0.9.3.tgz#689f135ecf87d3c650ed0c4f5ddcbe579883564a" + integrity sha512-c3Q6V7Df7jfwSq5AzQWbXHa5soeE4F5cbqi40xn0CzXxWW9/6Mxq48WJEtqfWzbZtW9odZdnRAkwCQwN12ob4A== + "@emotion/styled-base@^10.0.10": version "10.0.10" resolved "https://registry.yarnpkg.com/@emotion/styled-base/-/styled-base-10.0.10.tgz#ffb811295c9dcd9b3c12bf93301d7d8bcb02e6f4" @@ -1521,6 +1585,24 @@ "@emotion/utils" "0.11.1" object-assign "^4.1.1" +"@emotion/styled-base@^10.0.23": + version "10.0.24" + resolved "https://registry.yarnpkg.com/@emotion/styled-base/-/styled-base-10.0.24.tgz#9497efd8902dfeddee89d24b0eeb26b0665bfe8b" + integrity sha512-AnBImerf0h4dGAJVo0p0VE8KoAns71F28ErGFK474zbNAHX6yqSWQUasb+1jvg/VPwZjCp19+tAr6oOB0pwmLQ== + dependencies: + "@babel/runtime" "^7.5.5" + "@emotion/is-prop-valid" "0.8.5" + "@emotion/serialize" "^0.11.14" + "@emotion/utils" "0.11.2" + +"@emotion/styled@^10.0.14": + version "10.0.23" + resolved "https://registry.yarnpkg.com/@emotion/styled/-/styled-10.0.23.tgz#2f8279bd59b99d82deade76d1046249ddfab7c1b" + integrity sha512-gNr04eqBQ2iYUx8wFLZDfm3N8/QUOODu/ReDXa693uyQGy2OqA+IhPJk+kA7id8aOfwAsMuvZ0pJImEXXKtaVQ== + dependencies: + "@emotion/styled-base" "^10.0.23" + babel-plugin-emotion "^10.0.23" + "@emotion/styled@^10.0.7": version "10.0.11" resolved "https://registry.yarnpkg.com/@emotion/styled/-/styled-10.0.11.tgz#f749ca95bfe398b3e511b65ea14b16984f049e6d" @@ -1534,21 +1616,41 @@ resolved "https://registry.yarnpkg.com/@emotion/stylis/-/stylis-0.8.3.tgz#3ca7e9bcb31b3cb4afbaeb66156d86ee85e23246" integrity sha512-M3nMfJ6ndJMYloSIbYEBq6G3eqoYD41BpDOxreE8j0cb4fzz/5qvmqU9Mb2hzsXcCnIlGlWhS03PCzVGvTAe0Q== +"@emotion/stylis@0.8.4": + version "0.8.4" + resolved "https://registry.yarnpkg.com/@emotion/stylis/-/stylis-0.8.4.tgz#6c51afdf1dd0d73666ba09d2eb6c25c220d6fe4c" + integrity sha512-TLmkCVm8f8gH0oLv+HWKiu7e8xmBIaokhxcEKPh1m8pXiV/akCiq50FvYgOwY42rjejck8nsdQxZlXZ7pmyBUQ== + "@emotion/unitless@0.7.3": version "0.7.3" resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.7.3.tgz#6310a047f12d21a1036fb031317219892440416f" integrity sha512-4zAPlpDEh2VwXswwr/t8xGNDGg8RQiPxtxZ3qQEXyQsBV39ptTdESCjuBvGze1nLMVrxmTIKmnO/nAV8Tqjjzg== +"@emotion/unitless@0.7.4": + version "0.7.4" + resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.7.4.tgz#a87b4b04e5ae14a88d48ebef15015f6b7d1f5677" + integrity sha512-kBa+cDHOR9jpRJ+kcGMsysrls0leukrm68DmFQoMIWQcXdr2cZvyvypWuGYT7U+9kAExUE7+T7r6G3C3A6L8MQ== + "@emotion/utils@0.11.1": version "0.11.1" resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-0.11.1.tgz#8529b7412a6eb4b48bdf6e720cc1b8e6e1e17628" integrity sha512-8M3VN0hetwhsJ8dH8VkVy7xo5/1VoBsDOk/T4SJOeXwTO1c4uIqVNx2qyecLFnnUWD5vvUqHQ1gASSeUN6zcTg== +"@emotion/utils@0.11.2": + version "0.11.2" + resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-0.11.2.tgz#713056bfdffb396b0a14f1c8f18e7b4d0d200183" + integrity sha512-UHX2XklLl3sIaP6oiMmlVzT0J+2ATTVpf0dHQVyPJHTkOITvXfaSqnRk6mdDhV9pR8T/tHc3cex78IKXssmzrA== + "@emotion/weak-memoize@0.2.2": version "0.2.2" resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.2.2.tgz#63985d3d8b02530e0869962f4da09142ee8e200e" integrity sha512-n/VQ4mbfr81aqkx/XmVicOLjviMuy02eenSdJY33SVA7S2J42EU0P1H0mOogfYedb3wXA0d/LVtBrgTSm04WEA== +"@emotion/weak-memoize@0.2.4": + version "0.2.4" + resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.2.4.tgz#622a72bebd1e3f48d921563b4b60a762295a81fc" + integrity sha512-6PYY5DVdAY1ifaQW6XYTnOMihmBVT27elqSjEoodchsGjzYlEsTQMcEhSud99kVawatyTZRTiVkJ/c6lwbQ7nA== + "@gulp-sourcemaps/identity-map@1.X": version "1.0.1" resolved "https://registry.yarnpkg.com/@gulp-sourcemaps/identity-map/-/identity-map-1.0.1.tgz#cfa23bc5840f9104ce32a65e74db7e7a974bbee1" @@ -2028,6 +2130,26 @@ resolved "https://registry.yarnpkg.com/@stablelib/utf8/-/utf8-0.10.1.tgz#eecf54884da7b2bee235e3c70efb8cd5c07ba5bd" integrity sha512-+uM1YZ4MhBC82vt99prF7DXNGqhYmJ9cQ3p5qNowMNkkzn9OWEkqBvguBW3ChAt7JvqZ3SD5HJOfc6YgnfMTHw== +"@storybook/addon-actions@^5.2.6": + version "5.2.6" + resolved "https://registry.yarnpkg.com/@storybook/addon-actions/-/addon-actions-5.2.6.tgz#4fe411fc3bdb1d44058f23fbc8eb8d1bac29d521" + integrity sha512-CwTJPqe3NcEU7oqS5KoiCX9FXYmI2Dyp1Sh6r90JmXZ8B49ZXm6BDLX0gS3TooD6/AcdU8xdBcSvN0CkxQ5QGA== + dependencies: + "@storybook/addons" "5.2.6" + "@storybook/api" "5.2.6" + "@storybook/client-api" "5.2.6" + "@storybook/components" "5.2.6" + "@storybook/core-events" "5.2.6" + "@storybook/theming" "5.2.6" + core-js "^3.0.1" + fast-deep-equal "^2.0.1" + global "^4.3.2" + polished "^3.3.1" + prop-types "^15.7.2" + react "^16.8.3" + react-inspector "^3.0.2" + uuid "^3.3.2" + "@storybook/addon-info@^5.1.1": version "5.1.1" resolved "https://registry.yarnpkg.com/@storybook/addon-info/-/addon-info-5.1.1.tgz#17230d82a5f3aaa3a74c35806f63ff1ce24e01fa" @@ -2079,6 +2201,19 @@ global "^4.3.2" util-deprecate "^1.0.2" +"@storybook/addons@5.2.6": + version "5.2.6" + resolved "https://registry.yarnpkg.com/@storybook/addons/-/addons-5.2.6.tgz#c1278137acb3502e068b0b0d07a8371c607e9c02" + integrity sha512-5MF64lsAhIEMxTbVpYROz5Wez595iwSw45yXyP8gWt12d+EmFO5tdy7cYJCxcMuVhDfaCI78tFqS9orr1atVyA== + dependencies: + "@storybook/api" "5.2.6" + "@storybook/channels" "5.2.6" + "@storybook/client-logger" "5.2.6" + "@storybook/core-events" "5.2.6" + core-js "^3.0.1" + global "^4.3.2" + util-deprecate "^1.0.2" + "@storybook/api@5.1.1": version "5.1.1" resolved "https://registry.yarnpkg.com/@storybook/api/-/api-5.1.1.tgz#9f758fa694644a76a70b9d522d340ddafa9892af" @@ -2102,6 +2237,29 @@ telejson "^2.2.1" util-deprecate "^1.0.2" +"@storybook/api@5.2.6": + version "5.2.6" + resolved "https://registry.yarnpkg.com/@storybook/api/-/api-5.2.6.tgz#43d3c20b90e585e6c94b36e29845d39704ae2135" + integrity sha512-X/di44/SAL68mD6RHTX2qdWwhjRW6BgcfPtu0dMd38ErB3AfsfP4BITXs6kFOeSM8kWiaQoyuw0pOBzA8vlYug== + dependencies: + "@storybook/channels" "5.2.6" + "@storybook/client-logger" "5.2.6" + "@storybook/core-events" "5.2.6" + "@storybook/router" "5.2.6" + "@storybook/theming" "5.2.6" + core-js "^3.0.1" + fast-deep-equal "^2.0.1" + global "^4.3.2" + lodash "^4.17.15" + memoizerific "^1.11.3" + prop-types "^15.6.2" + react "^16.8.3" + semver "^6.0.0" + shallow-equal "^1.1.0" + store2 "^2.7.1" + telejson "^3.0.2" + util-deprecate "^1.0.2" + "@storybook/channel-postmessage@5.1.1": version "5.1.1" resolved "https://registry.yarnpkg.com/@storybook/channel-postmessage/-/channel-postmessage-5.1.1.tgz#e322cbcdd9fbef48aadb93c52aa29cb7e1e7aa5c" @@ -2113,6 +2271,17 @@ global "^4.3.2" telejson "^2.2.1" +"@storybook/channel-postmessage@5.2.6": + version "5.2.6" + resolved "https://registry.yarnpkg.com/@storybook/channel-postmessage/-/channel-postmessage-5.2.6.tgz#60aaef0e80300c9812a571ca3ce0f28e2c404f04" + integrity sha512-y+63wWiEc/Q4s4MZ3KJ//5A8j5VLufxuLvPxwv9FuS4z8lmN0fqeGJn857qIlFGbZhzsQaoRdmfsCQpBBgUneg== + dependencies: + "@storybook/channels" "5.2.6" + "@storybook/client-logger" "5.2.6" + core-js "^3.0.1" + global "^4.3.2" + telejson "^3.0.2" + "@storybook/channels@5.1.1": version "5.1.1" resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-5.1.1.tgz#a8947a9e1575dcceabf223c31fc3d49fcf69b442" @@ -2120,6 +2289,13 @@ dependencies: core-js "^3.0.1" +"@storybook/channels@5.2.6": + version "5.2.6" + resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-5.2.6.tgz#e2837508864dc4d5b5e03f078886f0ce113762ea" + integrity sha512-/UsktYsXuvb1efjVPCEivhh5ywRhm7hl73pQnpJLJHRqyLMM2I5nGPFELTTNuU9yWy7sP9QL5gRqBBPe1sqjZQ== + dependencies: + core-js "^3.0.1" + "@storybook/client-api@5.1.1": version "5.1.1" resolved "https://registry.yarnpkg.com/@storybook/client-api/-/client-api-5.1.1.tgz#a29cc1e78ea15229aa2461a42006e4953b336f5a" @@ -2138,6 +2314,27 @@ memoizerific "^1.11.3" qs "^6.6.0" +"@storybook/client-api@5.2.6": + version "5.2.6" + resolved "https://registry.yarnpkg.com/@storybook/client-api/-/client-api-5.2.6.tgz#5760cb4302d82ce9210a63f3f55b1e05f04759c1" + integrity sha512-upynf4ER2fkThNnE+mBlfRFFJxTiOh60fho1ODFcBun9BbvRD2wOHLvw7+WigIhb99HM20vk8f2dhv3I5Udzlg== + dependencies: + "@storybook/addons" "5.2.6" + "@storybook/channel-postmessage" "5.2.6" + "@storybook/channels" "5.2.6" + "@storybook/client-logger" "5.2.6" + "@storybook/core-events" "5.2.6" + "@storybook/router" "5.2.6" + common-tags "^1.8.0" + core-js "^3.0.1" + eventemitter3 "^4.0.0" + global "^4.3.2" + is-plain-object "^3.0.0" + lodash "^4.17.15" + memoizerific "^1.11.3" + qs "^6.6.0" + util-deprecate "^1.0.2" + "@storybook/client-logger@5.1.1": version "5.1.1" resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-5.1.1.tgz#e62a214a801079e75b4b101afd73cc66c262701d" @@ -2145,6 +2342,13 @@ dependencies: core-js "^3.0.1" +"@storybook/client-logger@5.2.6": + version "5.2.6" + resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-5.2.6.tgz#cfc4536e9b724b086f7509c2bb34c221016713c9" + integrity sha512-hJvPD267cCwLIRMOISjDH8h9wbwOcXIJip29UlJbU9iMtZtgE+YelmlpmZJvqcDfUiXWWrOh7tP76mj8EAfwIQ== + dependencies: + core-js "^3.0.1" + "@storybook/components@3.4.3": version "3.4.3" resolved "https://registry.yarnpkg.com/@storybook/components/-/components-3.4.3.tgz#d21a9eb63c61529cfbb802d96ceaa67fb7fd50b0" @@ -2178,6 +2382,31 @@ recompose "^0.30.0" simplebar-react "^1.0.0-alpha.6" +"@storybook/components@5.2.6": + version "5.2.6" + resolved "https://registry.yarnpkg.com/@storybook/components/-/components-5.2.6.tgz#cddb60227720aea7cae34fe782d0370bcdbd4005" + integrity sha512-C7OS90bZ1ZvxlWUZ3B2MPFFggqAtUo7X8DqqS3IwsuDUiK9dD/KS0MwPgOuFDnOTW1R5XqmQd/ylt53w3s/U5g== + dependencies: + "@storybook/client-logger" "5.2.6" + "@storybook/theming" "5.2.6" + "@types/react-syntax-highlighter" "10.1.0" + "@types/react-textarea-autosize" "^4.3.3" + core-js "^3.0.1" + global "^4.3.2" + markdown-to-jsx "^6.9.1" + memoizerific "^1.11.3" + polished "^3.3.1" + popper.js "^1.14.7" + prop-types "^15.7.2" + react "^16.8.3" + react-dom "^16.8.3" + react-focus-lock "^1.18.3" + react-helmet-async "^1.0.2" + react-popper-tooltip "^2.8.3" + react-syntax-highlighter "^8.0.1" + react-textarea-autosize "^7.1.0" + simplebar-react "^1.0.0-alpha.6" + "@storybook/core-events@5.1.1": version "5.1.1" resolved "https://registry.yarnpkg.com/@storybook/core-events/-/core-events-5.1.1.tgz#179ca9e49fb7e81c5ed4ce3a8eb93d90003f6478" @@ -2185,6 +2414,13 @@ dependencies: core-js "^3.0.1" +"@storybook/core-events@5.2.6": + version "5.2.6" + resolved "https://registry.yarnpkg.com/@storybook/core-events/-/core-events-5.2.6.tgz#34c9aae256e7e5f4a565b81f1e77dda8bccc6752" + integrity sha512-W8kLJ7tc0aAxs11CPUxUOCReocKL4MYGyjTg8qwk0USLzPUb/FUQWmhcm2ilFz6Nz8dXLcKrXdRVYTmiMsgAeg== + dependencies: + core-js "^3.0.1" + "@storybook/core@5.1.1": version "5.1.1" resolved "https://registry.yarnpkg.com/@storybook/core/-/core-5.1.1.tgz#f2697258fe1d7636e08e29206e8551f36f5d99b8" @@ -2302,6 +2538,19 @@ memoizerific "^1.11.3" qs "^6.6.0" +"@storybook/router@5.2.6": + version "5.2.6" + resolved "https://registry.yarnpkg.com/@storybook/router/-/router-5.2.6.tgz#5180d3785501699283c6c3717986c877f84fead5" + integrity sha512-/FZd3fYg5s2QzOqSIP8UMOSnCIFFIlli/jKlOxvm3WpcpxgwQOY4lfHsLO+r9ThCLs2UvVg2R/HqGrOHqDFU7A== + dependencies: + "@reach/router" "^1.2.1" + "@types/reach__router" "^1.2.3" + core-js "^3.0.1" + global "^4.3.2" + lodash "^4.17.15" + memoizerific "^1.11.3" + qs "^6.6.0" + "@storybook/theming@5.1.1": version "5.1.1" resolved "https://registry.yarnpkg.com/@storybook/theming/-/theming-5.1.1.tgz#605572b650049457dbd102aa5686933ff2202ace" @@ -2320,6 +2569,24 @@ prop-types "^15.7.2" resolve-from "^5.0.0" +"@storybook/theming@5.2.6": + version "5.2.6" + resolved "https://registry.yarnpkg.com/@storybook/theming/-/theming-5.2.6.tgz#e04170b3e53dcfc791b2381c8a39192ae88cd291" + integrity sha512-Xa9R/H8DDgmvxsCHloJUJ2d9ZQl80AeqHrL+c/AKNpx05s9lV74DcinusCf0kz72YGUO/Xt1bAjuOvLnAaS8Gw== + dependencies: + "@emotion/core" "^10.0.14" + "@emotion/styled" "^10.0.14" + "@storybook/client-logger" "5.2.6" + common-tags "^1.8.0" + core-js "^3.0.1" + deep-object-diff "^1.1.0" + emotion-theming "^10.0.14" + global "^4.3.2" + memoizerific "^1.11.3" + polished "^3.3.1" + prop-types "^15.7.2" + resolve-from "^5.0.0" + "@storybook/ui@5.1.1": version "5.1.1" resolved "https://registry.yarnpkg.com/@storybook/ui/-/ui-5.1.1.tgz#8c285102e2f6bd9978ce13ead7141b066c032d6e" @@ -2483,11 +2750,21 @@ "@types/minimatch" "*" "@types/node" "*" +"@types/history@*": + version "4.7.3" + resolved "https://registry.yarnpkg.com/@types/history/-/history-4.7.3.tgz#856c99cdc1551d22c22b18b5402719affec9839a" + integrity sha512-cS5owqtwzLN5kY+l+KgKdRJ/Cee8tlmQoGQuIE9tWnSmS3JMKzmxo2HIAk2wODMifGwO20d62xZQLYz+RLfXmw== + "@types/invariant@^2.2.29": version "2.2.29" resolved "https://registry.yarnpkg.com/@types/invariant/-/invariant-2.2.29.tgz#aa845204cd0a289f65d47e0de63a6a815e30cc66" integrity sha512-lRVw09gOvgviOfeUrKc/pmTiRZ7g7oDOU6OAutyuSHpm1/o2RaBQvRhgK8QEdu+FFuw/wnWb29A/iuxv9i8OpQ== +"@types/is-function@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@types/is-function/-/is-function-1.0.0.tgz#1b0b819b1636c7baf0d6785d030d12edf70c3e83" + integrity sha512-iTs9HReBu7evG77Q4EC8hZnqRt57irBDkK9nvmHroiOIVwYMQc4IvYvdRgwKfYepunIY7Oh/dBuuld+Gj9uo6w== + "@types/jss@^9.5.3": version "9.5.3" resolved "https://registry.yarnpkg.com/@types/jss/-/jss-9.5.3.tgz#0c106de3fe0b324cd4173fac7dab26c12cda624e" @@ -2531,6 +2808,28 @@ resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.2.tgz#690a1475b84f2a884fd07cd797c00f5f31356ea8" integrity sha512-ce5d3q03Ex0sy4R14722Rmt6MT07Ua+k4FwDfdcToYJcMKNtRVQvJ6JCAPdAmAnbRb6CsX6aYb9m96NGod9uTw== +"@types/reach__router@^1.2.3": + version "1.2.6" + resolved "https://registry.yarnpkg.com/@types/reach__router/-/reach__router-1.2.6.tgz#b14cf1adbd1a365d204bbf6605cd9dd7b8816c87" + integrity sha512-Oh5DAVr/L2svBvubw6QEFpXGu295Y406BPs4i9t1n2pp7M+q3pmCmhzb9oZV5wncR41KCD3NHl1Yhi7uKnTPsA== + dependencies: + "@types/history" "*" + "@types/react" "*" + +"@types/react-syntax-highlighter@10.1.0": + version "10.1.0" + resolved "https://registry.yarnpkg.com/@types/react-syntax-highlighter/-/react-syntax-highlighter-10.1.0.tgz#9c534e29bbe05dba9beae1234f3ae944836685d4" + integrity sha512-dF49hC4FZp1dIKyzacOrHvqMUe8U2IXyQCQXOcT1e6n64gLBp+xM6qGtPsThIT9XjiIHSg2W5Jc2V5IqekBfnA== + dependencies: + "@types/react" "*" + +"@types/react-textarea-autosize@^4.3.3": + version "4.3.5" + resolved "https://registry.yarnpkg.com/@types/react-textarea-autosize/-/react-textarea-autosize-4.3.5.tgz#6c4d2753fa1864c98c0b2b517f67bb1f6e4c46de" + integrity sha512-PiDL83kPMTolyZAWW3lyzO6ktooTb9tFTntVy7CA83/qFLWKLJ5bLeRboy6J6j3b1e8h2Eec6gBTEOOJRjV14A== + dependencies: + "@types/react" "*" + "@types/react-transition-group@^2.0.8": version "2.0.9" resolved "https://registry.yarnpkg.com/@types/react-transition-group/-/react-transition-group-2.0.9.tgz#ed6a71fb711e524345844defec2a861c1a222a03" @@ -4256,6 +4555,22 @@ babel-plugin-dynamic-import-node@^2.3.0: dependencies: object.assign "^4.1.0" +babel-plugin-emotion@^10.0.22, babel-plugin-emotion@^10.0.23: + version "10.0.23" + resolved "https://registry.yarnpkg.com/babel-plugin-emotion/-/babel-plugin-emotion-10.0.23.tgz#040d40bf61dcab6d31dd6043d10e180240b8515b" + integrity sha512-1JiCyXU0t5S2xCbItejCduLGGcKmF3POT0Ujbexog2MI4IlRcIn/kWjkYwCUZlxpON0O5FC635yPl/3slr7cKQ== + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@emotion/hash" "0.7.3" + "@emotion/memoize" "0.7.3" + "@emotion/serialize" "^0.11.14" + babel-plugin-macros "^2.0.0" + babel-plugin-syntax-jsx "^6.18.0" + convert-source-map "^1.5.0" + escape-string-regexp "^1.0.5" + find-root "^1.1.0" + source-map "^0.5.7" + babel-plugin-emotion@^10.0.9: version "10.0.9" resolved "https://registry.yarnpkg.com/babel-plugin-emotion/-/babel-plugin-emotion-10.0.9.tgz#04a0404d5a4084d5296357a393d344c0f8303ae4" @@ -6917,6 +7232,11 @@ constants-browserify@^1.0.0, constants-browserify@~1.0.0: resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" integrity sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U= +contains-path@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" + integrity sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo= + content-disposition@0.5.3, content-disposition@^0.5.2: version "0.5.3" resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.3.tgz#e130caf7e7279087c5616c2007d0485698984fbd" @@ -8478,6 +8798,14 @@ dns-packet@^4.0.0: ip "^1.1.5" safe-buffer "^5.1.1" +doctrine@1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" + integrity sha1-N53Ocw9hZvds76TmcHoVmwLFpvo= + dependencies: + esutils "^2.0.2" + isarray "^1.0.0" + doctrine@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.0.2.tgz#68f96ce8efc56cc42651f1faadb4f175273b0075" @@ -8861,6 +9189,15 @@ emojis-list@^2.0.0: resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" integrity sha1-TapNnbAPmBmIDHn6RXrlsJof04k= +emotion-theming@^10.0.14: + version "10.0.19" + resolved "https://registry.yarnpkg.com/emotion-theming/-/emotion-theming-10.0.19.tgz#66d13db74fccaefad71ba57c915b306cf2250295" + integrity sha512-dQRBPLAAQ6eA8JKhkLCIWC8fdjPbiNC1zNTdFF292h9amhZXofcNGUP7axHoHX4XesqQESYwZrXp53OPInMrKw== + dependencies: + "@babel/runtime" "^7.5.5" + "@emotion/weak-memoize" "0.2.4" + hoist-non-react-statics "^3.3.0" + emotion-theming@^10.0.9: version "10.0.10" resolved "https://registry.yarnpkg.com/emotion-theming/-/emotion-theming-10.0.10.tgz#efe8751119751bdc70fdc1795fe4cde0fb0cf14c" @@ -9305,11 +9642,44 @@ escope@^3.6.0: esrecurse "^4.1.0" estraverse "^4.1.1" +eslint-import-resolver-node@^0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz#58f15fb839b8d0576ca980413476aab2472db66a" + integrity sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q== + dependencies: + debug "^2.6.9" + resolve "^1.5.0" + +eslint-module-utils@^2.4.0: + version "2.4.1" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.4.1.tgz#7b4675875bf96b0dbf1b21977456e5bb1f5e018c" + integrity sha512-H6DOj+ejw7Tesdgbfs4jeS4YMFrT8uI8xwd1gtQqXssaR0EQ26L+2O/w6wkYFy2MymON0fTwHmXBvvfLNZVZEw== + dependencies: + debug "^2.6.8" + pkg-dir "^2.0.0" + eslint-plugin-chai@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/eslint-plugin-chai/-/eslint-plugin-chai-0.0.1.tgz#9a1dea58b335c31242219d059b37ffb14309f6e1" integrity sha1-mh3qWLM1wxJCIZ0Fmzf/sUMJ9uE= +eslint-plugin-import@^2.18.2: + version "2.18.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.18.2.tgz#02f1180b90b077b33d447a17a2326ceb400aceb6" + integrity sha512-5ohpsHAiUBRNaBWAF08izwUGlbrJoJJ+W9/TBwsGoR1MnlgfwMIKrFeSjWbt6moabiXW9xNvtFz+97KHRfI4HQ== + dependencies: + array-includes "^3.0.3" + contains-path "^0.1.0" + debug "^2.6.9" + doctrine "1.5.0" + eslint-import-resolver-node "^0.3.2" + eslint-module-utils "^2.4.0" + has "^1.0.3" + minimatch "^3.0.4" + object.values "^1.1.0" + read-pkg-up "^2.0.0" + resolve "^1.11.0" + eslint-plugin-json@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/eslint-plugin-json/-/eslint-plugin-json-1.2.0.tgz#9ba73bb0be99d50093e889f5b968463d2a30efae" @@ -10524,6 +10894,11 @@ eventemitter3@^3.0.0: resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.0.tgz#090b4d6cdbd645ed10bf750d4b5407942d7ba163" integrity sha512-ivIvhpq/Y0uSjcHDcOIccjmYjGLcP09MFGE7ysAwkAvkXfpZlC985pH2/ui64DKazbTW/4kN3yqozUxlXzI6cA== +eventemitter3@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.0.tgz#d65176163887ee59f386d64c82610b696a4a74eb" + integrity sha512-qerSRB0p+UDEssxTtm6EDKcE7W4OaoisfIMl4CngyEhjpYglocpNg6UEqCvemdGhosAsg4sO2dXJOdyBifPGCg== + events-to-array@^1.0.1: version "1.1.2" resolved "https://registry.yarnpkg.com/events-to-array/-/events-to-array-1.1.2.tgz#2d41f563e1fe400ed4962fe1a4d5c6a7539df7f6" @@ -12295,6 +12670,14 @@ global@^4.3.2, global@~4.3.0: min-document "^2.19.0" process "~0.5.1" +global@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/global/-/global-4.4.0.tgz#3e7b105179006a323ed71aafca3e9c57a5cc6406" + integrity sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w== + dependencies: + min-document "^2.19.0" + process "^0.11.10" + globals@^11.0.1, globals@^11.1.0, globals@^11.7.0: version "11.12.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" @@ -16806,6 +17189,16 @@ load-json-file@^1.0.0: pinkie-promise "^2.0.0" strip-bom "^2.0.0" +load-json-file@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" + integrity sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg= + dependencies: + graceful-fs "^4.1.2" + parse-json "^2.2.0" + pify "^2.0.0" + strip-bom "^3.0.0" + load-json-file@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" @@ -20108,6 +20501,13 @@ path-type@^1.0.0: pify "^2.0.0" pinkie-promise "^2.0.0" +path-type@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" + integrity sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM= + dependencies: + pify "^2.0.0" + path-type@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" @@ -21719,6 +22119,16 @@ react-dom@^15.6.2: object-assign "^4.1.0" prop-types "^15.5.10" +react-dom@^16.8.3: + version "16.11.0" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.11.0.tgz#7e7c4a5a85a569d565c2462f5d345da2dd849af5" + integrity sha512-nrRyIUE1e7j8PaXSPtyRKtz+2y9ubW/ghNgqKFHHAHaeP0fpF5uXR+sq8IMRHC+ZUxw7W9NyCDTBtwWxvkb0iA== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + prop-types "^15.6.2" + scheduler "^0.17.0" + react-dom@^16.8.4: version "16.8.6" resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.8.6.tgz#71d6303f631e8b0097f56165ef608f051ff6e10f" @@ -21825,6 +22235,15 @@ react-inspector@^2.3.0: babel-runtime "^6.26.0" is-dom "^1.0.9" +react-inspector@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/react-inspector/-/react-inspector-3.0.2.tgz#c530a06101f562475537e47df428e1d7aff16ed8" + integrity sha512-PSR8xDoGFN8R3LKmq1NT+hBBwhxjd9Qwz8yKY+5NXY/CHpxXHm01CVabxzI7zFwFav/M3JoC/Z0Ro2kSX6Ef2Q== + dependencies: + babel-runtime "^6.26.0" + is-dom "^1.0.9" + prop-types "^15.6.1" + react-is@^16.4.2: version "16.4.2" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.4.2.tgz#84891b56c2b6d9efdee577cc83501dfc5ecead88" @@ -22085,6 +22504,15 @@ react@^16.7.0, react@^16.8.4: prop-types "^15.6.2" scheduler "^0.13.6" +react@^16.8.3: + version "16.11.0" + resolved "https://registry.yarnpkg.com/react/-/react-16.11.0.tgz#d294545fe62299ccee83363599bf904e4a07fdbb" + integrity sha512-M5Y8yITaLmU0ynd0r1Yvfq98Rmll6q8AxaEe88c8e7LxO8fZ2cNgmFt0aGAS9wzf1Ao32NKXtCl+/tVVtkxq6g== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + prop-types "^15.6.2" + reactcss@^1.2.0: version "1.2.3" resolved "https://registry.yarnpkg.com/reactcss/-/reactcss-1.2.3.tgz#c00013875e557b1cf0dfd9a368a1c3dab3b548dd" @@ -22149,6 +22577,14 @@ read-pkg-up@^1.0.1: find-up "^1.0.0" read-pkg "^1.0.0" +read-pkg-up@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" + integrity sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4= + dependencies: + find-up "^2.0.0" + read-pkg "^2.0.0" + read-pkg-up@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07" @@ -22166,6 +22602,15 @@ read-pkg@^1.0.0: normalize-package-data "^2.3.2" path-type "^1.0.0" +read-pkg@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" + integrity sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg= + dependencies: + load-json-file "^2.0.0" + normalize-package-data "^2.3.2" + path-type "^2.0.0" + read-pkg@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" @@ -23088,7 +23533,7 @@ resolve@^1.10.0, resolve@^1.11.0, resolve@^1.8.1, resolve@~1.11.1: dependencies: path-parse "^1.0.6" -resolve@^1.3.2: +resolve@^1.3.2, resolve@^1.5.0: version "1.12.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.12.0.tgz#3fc644a35c84a48554609ff26ec52b66fa577df6" integrity sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w== @@ -23470,6 +23915,14 @@ scheduler@^0.13.6: loose-envify "^1.1.0" object-assign "^4.1.1" +scheduler@^0.17.0: + version "0.17.0" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.17.0.tgz#7c9c673e4ec781fac853927916d1c426b6f3ddfe" + integrity sha512-7rro8Io3tnCPuY4la/NuI5F2yfESpnfZyT6TtkXnSWVkcu0BCDJ+8gk5ozUaFaxpIyNuWAPXrH0yFcSi28fnDA== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + schema-utils@^0.4.5: version "0.4.5" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.5.tgz#21836f0608aac17b78f9e3e24daff14a5ca13a3e" @@ -25548,6 +26001,20 @@ telejson@^2.2.1: lodash.get "^4.4.2" memoizerific "^1.11.3" +telejson@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/telejson/-/telejson-3.1.0.tgz#c648479afe0d8edd90aeaf478b0b8a2fe9f59513" + integrity sha512-mhiVy+xp2atri1bzSzdy/gVGXlOhibaoZ092AUq5xhnrZGdzhF0fLaOduHJQghkro+qmjYMwhsOL9CkD2zTicg== + dependencies: + "@types/is-function" "^1.0.0" + global "^4.4.0" + is-function "^1.0.1" + is-regex "^1.0.4" + is-symbol "^1.0.2" + isobject "^4.0.0" + lodash "^4.17.15" + memoizerific "^1.11.3" + temp-dir@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-1.0.0.tgz#0a7c0ea26d3a39afa7e0ebea9c1fc0bc4daa011d" From 9ca22d8fae9689059763c4284aba553c3f2f5845 Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Thu, 14 Nov 2019 09:17:55 -0400 Subject: [PATCH 04/16] Disable `import/no-unresolved` on lines that require build Certain lines only work after a build stage has been completed, so these failure can be ignored by the no-unresolved rule. --- development/metamaskbot-build-announce.js | 2 +- development/mock-dev.js | 4 +++- development/sentry-publish.js | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/development/metamaskbot-build-announce.js b/development/metamaskbot-build-announce.js index 2198d7e36..d5b05e03c 100755 --- a/development/metamaskbot-build-announce.js +++ b/development/metamaskbot-build-announce.js @@ -1,6 +1,6 @@ #!/usr/bin/env node const request = require('request-promise') -const VERSION = require('../dist/chrome/manifest.json').version +const VERSION = require('../dist/chrome/manifest.json').version // eslint-disable-line import/no-unresolved start().catch(console.error) diff --git a/development/mock-dev.js b/development/mock-dev.js index 188c04678..8da625149 100644 --- a/development/mock-dev.js +++ b/development/mock-dev.js @@ -15,7 +15,6 @@ const h = require('react-hyperscript') const Root = require('../ui/app/pages') const configureStore = require('../ui/app/store/store') const actions = require('../ui/app/store/actions') -const states = require('./states') const backGroundConnectionModifiers = require('./backGroundConnectionModifiers') const Selector = require('./selector') const MetamaskController = require('../app/scripts/metamask-controller') @@ -23,6 +22,9 @@ const firstTimeState = require('../app/scripts/first-time-state') const ExtensionPlatform = require('../app/scripts/platforms/extension') const noop = function () {} +// the states file is generated before this file is run, but after `lint` is run +const states = require('./states') /* eslint-disable-line import/no-unresolved */ + const log = require('loglevel') window.log = log log.setLevel('debug') diff --git a/development/sentry-publish.js b/development/sentry-publish.js index cab3d1ac8..8d9333a86 100644 --- a/development/sentry-publish.js +++ b/development/sentry-publish.js @@ -1,7 +1,7 @@ #!/usr/bin/env node const pify = require('pify') const exec = pify(require('child_process').exec, { multiArgs: true }) -const VERSION = require('../dist/chrome/manifest.json').version +const VERSION = require('../dist/chrome/manifest.json').version // eslint-disable-line import/no-unresolved start().catch(console.error) From f8aaec6d32aa342a17e76bf72ae4d12efb05145b Mon Sep 17 00:00:00 2001 From: Dan Miller Date: Thu, 14 Nov 2019 10:22:34 -0330 Subject: [PATCH 05/16] Adds and end to end test for typed signature requests --- test/e2e/contract-test/contract.js | 54 ++++++++ test/e2e/contract-test/index.html | 7 ++ test/e2e/run-all.sh | 8 ++ test/e2e/signature-request.spec.js | 191 +++++++++++++++++++++++++++++ 4 files changed, 260 insertions(+) create mode 100644 test/e2e/signature-request.spec.js diff --git a/test/e2e/contract-test/contract.js b/test/e2e/contract-test/contract.js index 971523de2..ebfea34ec 100644 --- a/test/e2e/contract-test/contract.js +++ b/test/e2e/contract-test/contract.js @@ -41,6 +41,7 @@ web3.currentProvider.enable().then(() => { const approveTokens = document.getElementById('approveTokens') const transferTokensWithoutGas = document.getElementById('transferTokensWithoutGas') const approveTokensWithoutGas = document.getElementById('approveTokensWithoutGas') + const signTypedData = document.getElementById('signTypedData') deployButton.addEventListener('click', async function () { document.getElementById('contractStatus').innerHTML = 'Deploying' @@ -184,4 +185,57 @@ web3.currentProvider.enable().then(() => { ethereum.on('accountsChanged', (accounts) => { accountsDiv.innerHTML = accounts }) + + const signTypedDataResultsDiv = document.getElementById('signTypedDataResult') + signTypedData.addEventListener('click', function () { + + const typedData = { + types: { + EIP712Domain: [ + { name: 'name', type: 'string' }, + { name: 'version', type: 'string' }, + { name: 'chainId', type: 'uint256' }, + { name: 'verifyingContract', type: 'address' }, + ], + Person: [ + { name: 'name', type: 'string' }, + { name: 'wallet', type: 'address' }, + ], + Mail: [ + { name: 'from', type: 'Person' }, + { name: 'to', type: 'Person' }, + { name: 'contents', type: 'string' }, + ], + }, + primaryType: 'Mail', + domain: { + name: 'Ether Mail', + version: '1', + chainId: 3, + verifyingContract: '0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC', + }, + message: { + sender: { + name: 'Cow', + wallet: '0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826', + }, + recipient: { + name: 'Bob', + wallet: '0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB', + }, + contents: 'Hello, Bob!', + }, + } + web3.currentProvider.sendAsync({ + method: 'eth_signTypedData_v3', + params: [ethereum.selectedAddress, JSON.stringify(typedData)], + from: ethereum.selectedAddress, + }, function (err, result) { + if (err) { + console.log(err) + } else { + signTypedDataResultsDiv.innerHTML = result + } + }) + }) }) diff --git a/test/e2e/contract-test/index.html b/test/e2e/contract-test/index.html index 03792de76..9689654ee 100644 --- a/test/e2e/contract-test/index.html +++ b/test/e2e/contract-test/index.html @@ -37,6 +37,13 @@
Accounts:
+
+
Sign Typed Data
+
+ +
Sign Typed Data Result:
+
+
diff --git a/test/e2e/run-all.sh b/test/e2e/run-all.sh index 259926760..33c2428da 100755 --- a/test/e2e/run-all.sh +++ b/test/e2e/run-all.sh @@ -29,6 +29,14 @@ concurrently --kill-others \ 'yarn dapp' \ 'sleep 5 && mocha test/e2e/metamask-responsive-ui.spec' +concurrently --kill-others \ + --names 'ganache,dapp,e2e' \ + --prefix '[{time}][{name}]' \ + --success first \ + 'yarn ganache:start' \ + 'yarn dapp' \ + 'sleep 5 && mocha test/e2e/signature-request.spec' + export GANACHE_ARGS="${BASE_GANACHE_ARGS} --deterministic --account=0x53CB0AB5226EEBF4D872113D98332C1555DC304443BEE1CF759D15798D3C55A9,25000000000000000000" concurrently --kill-others \ --names 'ganache,e2e' \ diff --git a/test/e2e/signature-request.spec.js b/test/e2e/signature-request.spec.js new file mode 100644 index 000000000..e9490e08d --- /dev/null +++ b/test/e2e/signature-request.spec.js @@ -0,0 +1,191 @@ +const assert = require('assert') +const webdriver = require('selenium-webdriver') +const { By, until } = webdriver +const { + delay, +} = require('./func') +const { + checkBrowserForConsoleErrors, + findElement, + findElements, + openNewPage, + verboseReportOnFailure, + waitUntilXWindowHandles, + switchToWindowWithTitle, + setupFetchMocking, + prepareExtensionForTesting, +} = require('./helpers') +const enLocaleMessages = require('../../app/_locales/en/messages.json') + +describe('MetaMask', function () { + let driver + let publicAddress + + const tinyDelayMs = 200 + const regularDelayMs = tinyDelayMs * 2 + const largeDelayMs = regularDelayMs * 2 + + this.timeout(0) + this.bail(true) + + before(async function () { + const result = await prepareExtensionForTesting() + driver = result.driver + await setupFetchMocking(driver) + }) + + afterEach(async function () { + if (process.env.SELENIUM_BROWSER === 'chrome') { + const errors = await checkBrowserForConsoleErrors(driver) + if (errors.length) { + const errorReports = errors.map(err => err.message) + const errorMessage = `Errors found in browser console:\n${errorReports.join('\n')}` + console.error(new Error(errorMessage)) + } + } + if (this.currentTest.state === 'failed') { + await verboseReportOnFailure(driver, this.currentTest) + } + }) + + after(async function () { + await driver.quit() + }) + + describe('Going through the first time flow, but skipping the seed phrase challenge', () => { + it('clicks the continue button on the welcome screen', async () => { + await findElement(driver, By.css('.welcome-page__header')) + const welcomeScreenBtn = await findElement(driver, By.xpath(`//button[contains(text(), '${enLocaleMessages.getStarted.message}')]`)) + welcomeScreenBtn.click() + await delay(largeDelayMs) + }) + + it('clicks the "Create New Wallet" option', async () => { + const customRpcButton = await findElement(driver, By.xpath(`//button[contains(text(), 'Create a Wallet')]`)) + customRpcButton.click() + await delay(largeDelayMs) + }) + + it('clicks the "No thanks" option on the metametrics opt-in screen', async () => { + const optOutButton = await findElement(driver, By.css('.btn-default')) + optOutButton.click() + await delay(largeDelayMs) + }) + + it('accepts a secure password', async () => { + const passwordBox = await findElement(driver, By.css('.first-time-flow__form #create-password')) + const passwordBoxConfirm = await findElement(driver, By.css('.first-time-flow__form #confirm-password')) + const button = await findElement(driver, By.css('.first-time-flow__form button')) + + await passwordBox.sendKeys('correct horse battery staple') + await passwordBoxConfirm.sendKeys('correct horse battery staple') + + const tosCheckBox = await findElement(driver, By.css('.first-time-flow__checkbox')) + await tosCheckBox.click() + + await button.click() + await delay(largeDelayMs) + }) + + it('skips the seed phrase challenge', async () => { + const button = await findElement(driver, By.xpath(`//button[contains(text(), '${enLocaleMessages.remindMeLater.message}')]`)) + await button.click() + await delay(regularDelayMs) + + const detailsButton = await findElement(driver, By.css('.account-details__details-button')) + await detailsButton.click() + await delay(regularDelayMs) + }) + + it('gets the current accounts address', async () => { + const addressInput = await findElement(driver, By.css('.qr-ellip-address')) + publicAddress = (await addressInput.getAttribute('value')).toLowerCase() + const accountModal = await driver.findElement(By.css('span .modal')) + + await driver.executeScript("document.querySelector('.account-modal-close').click()") + + await driver.wait(until.stalenessOf(accountModal)) + await delay(regularDelayMs) + }) + + it('changes the network', async () => { + const networkDropdown = await findElement(driver, By.css('.network-name')) + await networkDropdown.click() + await delay(regularDelayMs) + + const ropstenButton = await findElement(driver, By.xpath(`//span[contains(text(), 'Ropsten')]`)) + await ropstenButton.click() + await delay(largeDelayMs) + }) + }) + + describe('provider listening for events', () => { + let extension + let popup + let dapp + let windowHandles + it('switches to a dapp', async () => { + await openNewPage(driver, 'http://127.0.0.1:8080/') + await delay(regularDelayMs) + + await waitUntilXWindowHandles(driver, 3) + windowHandles = await driver.getAllWindowHandles() + + extension = windowHandles[0] + popup = await switchToWindowWithTitle(driver, 'MetaMask Notification', windowHandles) + dapp = windowHandles.find(handle => handle !== extension && handle !== popup) + + await delay(regularDelayMs) + const approveButton = await findElement(driver, By.xpath(`//button[contains(text(), 'Connect')]`)) + await approveButton.click() + + await driver.switchTo().window(dapp) + await delay(regularDelayMs) + }) + + it('creates a sign typed data signature request', async () => { + const signTypedMessage = await findElement(driver, By.xpath(`//button[contains(text(), 'Sign')]`), 10000) + await signTypedMessage.click() + await delay(largeDelayMs) + + windowHandles = await driver.getAllWindowHandles() + await switchToWindowWithTitle(driver, 'MetaMask Notification', windowHandles) + await delay(regularDelayMs) + + const title = await findElement(driver, By.css('.signature-request-content__title')) + const name = await findElement(driver, By.css('.signature-request-content__info--bolded')) + const content = await findElements(driver, By.css('.signature-request-content__info')) + const origin = content[0] + const address = content[1] + assert.equal(await title.getText(), 'Signature Request') + assert.equal(await name.getText(), 'Ether Mail') + assert.equal(await origin.getText(), '127.0.0.1') + assert.equal(await address.getText(), publicAddress.slice(0, 8) + '...' + publicAddress.slice(publicAddress.length - 8)) + }) + + it('signs the transaction', async () => { + const signButton = await findElement(driver, By.xpath(`//button[contains(text(), 'Sign')]`), 10000) + await signButton.click() + await delay(regularDelayMs) + + extension = windowHandles[0] + await driver.switchTo().window(extension) + }) + + it('gets the current accounts address', async () => { + const detailsButton = await findElement(driver, By.css('.account-details__details-button')) + await detailsButton.click() + await delay(regularDelayMs) + + const addressInput = await findElement(driver, By.css('.qr-ellip-address')) + const newPublicAddress = await addressInput.getAttribute('value') + const accountModal = await driver.findElement(By.css('span .modal')) + + await driver.executeScript("document.querySelector('.account-modal-close').click()") + + await driver.wait(until.stalenessOf(accountModal)) + await delay(regularDelayMs) + assert.equal(newPublicAddress.toLowerCase(), publicAddress) + }) + }) +}) From f2e3fa58b6280534e9fa92e085ce7b0c350635f6 Mon Sep 17 00:00:00 2001 From: Whymarrh Whitby Date: Thu, 14 Nov 2019 13:17:32 -0330 Subject: [PATCH 06/16] circleci: v2.1 (#7421) --- .circleci/config.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index f5d0aa3ea..b0aab4c7f 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,7 +1,6 @@ -version: 2 +version: 2.1 workflows: - version: 2 test_and_release: jobs: - create_release_pull_request: From f5cec3e6b7a2fa303ffbeec96cc3e6240b1612a0 Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Thu, 14 Nov 2019 14:28:40 -0400 Subject: [PATCH 07/16] Ensure SignatureRequestOriginal 'beforeunload' handler is bound (#7414) The 'beforeunload' handler was being bound to the module scope instead of the instance scope, because the class was defined using prototypes rather than the ES6 class syntax. The arrow functions were removed, and the handler is now bound explicitly in the constructor. --- ui/app/components/app/signature-request-original.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/ui/app/components/app/signature-request-original.js b/ui/app/components/app/signature-request-original.js index 60b910eb0..e23d724cb 100644 --- a/ui/app/components/app/signature-request-original.js +++ b/ui/app/components/app/signature-request-original.js @@ -101,9 +101,10 @@ function SignatureRequest (props) { this.state = { selectedAccount: props.selectedAccount, } + this._beforeUnload = this._beforeUnload.bind(this) } -SignatureRequest.prototype._beforeUnload = (event) => { +SignatureRequest.prototype._beforeUnload = function (event) { const { clearConfirmTransaction, cancel } = this.props const { metricsEvent } = this.context metricsEvent({ @@ -117,7 +118,7 @@ SignatureRequest.prototype._beforeUnload = (event) => { cancel(event) } -SignatureRequest.prototype._removeBeforeUnload = () => { +SignatureRequest.prototype._removeBeforeUnload = function () { if (getEnvironmentType(window.location.href) === ENVIRONMENT_TYPE_NOTIFICATION) { window.removeEventListener('beforeunload', this._beforeUnload) } From 5bce06098571cf61a957e9835c9dbb485e2f37d6 Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Thu, 14 Nov 2019 18:19:03 -0400 Subject: [PATCH 08/16] Update badge colour The badge colour is now '#037DD6', which stands out a bit more on both light and dark modes. --- app/scripts/background.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/scripts/background.js b/app/scripts/background.js index 7c347d62e..2639d7703 100644 --- a/app/scripts/background.js +++ b/app/scripts/background.js @@ -426,7 +426,7 @@ function setupController (initState, initLangCode) { label = String(count) } extension.browserAction.setBadgeText({ text: label }) - extension.browserAction.setBadgeBackgroundColor({ color: '#506F8B' }) + extension.browserAction.setBadgeBackgroundColor({ color: '#037DD6' }) } return Promise.resolve() From fb83b2937e23f991fcfa5982d4bf8421b866a990 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sergej=20M=C3=BCller?= Date: Thu, 14 Nov 2019 23:54:24 +0100 Subject: [PATCH 09/16] Utilize the full size of icon space (#7408) * Utilize the full width of icon space * Replace extension icon by the front-facing logo --- app/images/icon-128.png | Bin 4334 -> 4074 bytes app/images/icon-16.png | Bin 439 -> 606 bytes app/images/icon-19.png | Bin 523 -> 904 bytes app/images/icon-32.png | Bin 1284 -> 1961 bytes app/images/icon-38.png | Bin 1142 -> 2325 bytes app/images/icon-512.png | Bin 35988 -> 37184 bytes app/images/icon-64.png | Bin 2837 -> 4204 bytes 7 files changed, 0 insertions(+), 0 deletions(-) diff --git a/app/images/icon-128.png b/app/images/icon-128.png index ffeb4563da48ecfa753b0e09c512297f0f35f03e..8d593bc0c92188c81d467ba5e9a20d70831b5ed7 100644 GIT binary patch literal 4074 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 literal 4334 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 YzM9OGcjEsiFaSVX{efDQs#WNJ0Fo9nwEzGB diff --git a/app/images/icon-16.png b/app/images/icon-16.png index c7b3248b3007c59a9d57304cce6edb156d08b985..3343f97743f356461d08b014eb3a2d31f6c395a7 100644 GIT binary patch delta 582 zcmV-M0=fOS1KtFXBYy%VNkl~4}8k8q!$wr#h$TWi0L zYTLGL+h%H;n zvD|YvR@mQGlGkIHO)*{|);5lCt%tyyAsioziwOH3;FgwH*-((@$ADn27d$k)8#+t_ zF83_ae)LVP9<6n2@MFX5S`m(QjC_E5C+$Zc)zTEY|JeJ*ZW0grh&13qEbO%8PotPo zgI8md>{iUF6Mw$m-!8!In8RqdkPaWA6qmGFKTcdTht$!XVYIDLEn z`y@ZhJ`@+u^#bvHK#0@2G`4jtp9UQ4QWiJ*3A`BKcYnrrSU8qF?I+GW?H_@-ZTH{U zEqh0W-;!{=9m-4EEza)<&#=2X8tWJ7W)Fokt;^tkEb(GkdF*UofSv8~?Yu*)3ENiM zdA#4A&NDawuHjZvsJeC%nJmkHnzf5I6-t4-6)!c;rt7kVrG0yA`0BQpE Ur=gZW3IG5A07*qoM6N<$f*X4;IsgCw delta 414 zcmV;P0b%~$1h)f_BYy#YNkl@M)e8#Q#Bf zU6Ne!gL;Lu#|=ukk7|{dJ+4!EzARP&BqxVebB&v<6-XltPYaR%|EWvm|7Re+Tdnec za*+K0dUx4F_-tPQ(Tu=XE0q6#>rweXJ6r+GuXU5H#Am=+WPi>3vy}cnZ&U#r@T5WI z|HMF`3q0he;WPjka7D7hcEOxp`EWdVoBto)wEXO`tt$lvPZ!1m0F$c)P9g$T)&Kwi07*qo IM6N<$f*fGSqW}N^ diff --git a/app/images/icon-19.png b/app/images/icon-19.png index 6263cf3cf3585c56e2435c84ca2a3d74668b1a4b..5257d444aa668702214dd4eac7d58216c4a12cd5 100644 GIT binary patch delta 882 zcmV-&1C9KP1c(QaBYy)=Nkl9{okO#akoUx zWn+v=J;)q}8No`b3qq8iZI4&|e7jh6*N0m5jMp{l>Q@`I*{~S^5(mkDXi(3%RjjdV z8-Qza2)Nw};`nb)l8euLwr%^pO>Hb|uj*}$U3ayuRlDok)ql2ae&)?h&P_rUXtfwYx%d%n<_thHA!ZKN*WAUC+`U4sVm-@Ja{@IKV8VuJG9(%2)l0 z0Zu3^V7AlL?tcan`A_5X41D1`<;y;ps2g!&4gcjI@Y1*5zR3E>zq}b~s(O!0)xHQ| z&`HtxduacJWmktp1#yM{y5I7;)F9Qu&+CLW(;R|eM(*=G ztN))90HG$%VizXmpAzLu1X{|*{BC9QELc6&5e1+MLVqF5^Ho`WQ`TRQaXBvn-t4P< zjywCA&qkN^>YaNRdX8M~**@Et)+`8M21a3K#Ua4-tiLVej>z~unQqC{^v-;a1K6|J zFI?DTR3k{d&_5LLTYtb${UP;45P^DK_&Lje8weWxoNJ08*X@~Sivir=)$=;kyW@QE z4rs0@J%8<<_iI(2{;i|98!><^Z|A+q3f*m<=BhUMLg$XPTjq6y<fBI}i@l!k!RUO4Trhv2h_uh2GAT z>D8FP1w^3`ptNYh$YjJXgJD)PTAB@U5Q>xx?SFA`8Xfdren1^wg)kH>^KoqSrCr?h zzT@)eCb;VZM_1$RVlm5E; z0&e@bl{?>o+dpdMmo*n4%a2T3+oG?V%Ql|#?U_!^-kQ5*&G$}DeabuI(Yn{iQnL%x z{A+=vW7f8T#mAg4t-U{9f5}Z=>;SUAL9eD=@HwK=tQ>A@457oP{wM^??XVZa28VExnv0Pat+A4&h`>i_@%07*qo IM6N<$f-9iTEdT%j delta 498 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 l2d>}*k)M6}1N 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 V%PjM5k!An@002ovPDHLkV1g>#%HaS2 literal 35988 zcmY&;bzIZm7x!l{7)XP3g90kuJz6BC1Oy2YkVd*UKtPo421P=Ykd)j2rAxX)y1U2r z?E8D3f1bTwdu^}J=bm%#iF?lboO`36>pUg7$8Zk-0Fr0wD*6C`gZ+yG5a45f&iux2 z03gQfnTn#JA84;V6#EQ-7upzR+P4Ir(tYf)#!7DZdZK}N=rxs09LSXB09;iuTBun{21P!b!}~TeMDx~q{Tb$m`}yvc z_(K3LNB|Nkqg#6Ioj=`B^E<8VM#ch~E@M{oQ%<#a3jp2=az2mFaBkml^0!BvMc*~@ z-(a3^JTtuh)qJ}W)&E!{5+7iLZ$|~i8fm3X$7cUCF3bAr@!H}{RqsQu@HP+qJpc|A z)3Qhgo$IW0aUAY7xLlK!@&^2E)_6=&_{JRoz7-Qz`DJLwLk-V4}GtPQg;l}WuK6^?CSb3b`kuQ=o(miyTZ#{_5z6;-_ZQVMh zt>4LF6t^tm!jJ$81O)v3zj=Bo1I<>lPVya#0+j!wBLFGZtshd|1_i#tY>)81m6Z9s zh5!Kspmtt4B`t9`-DH{D0JDLyZ!;6*zUe&Iz5t-4ASiLxHQ7VeT)nUa#l2|@VSXyZ zC#M&aguuh9>~DK?hUibH&7qLz=~ZQR&!N5-x75ckcI%os0l@qoUFd?q>!9jCYK=8e zFb@V^0&zvBC9(cbNLF&>Q9@uDOstKESOVhbkUV<#uwvtOk{sJt7qy~|*(zQ%vbf9RD00MbeX$vDh~5468%erz;AmwUWk+&Fx4Y=Kqy6@n9tD$)4O z^UOvj(dqiO9<`Y#k-9}kC`;TaIOw@<&@ZjA5eB<^a6}a73tAFSx&xtN%}ulpb))L% zxsqB22ApMV)jj*Y2F%rY2YKEF4h#%v^<%%!IAwB1J(z|uvF3bh^?Se5?oO_Q?EU-i z)=65rL3B98LjrigcbyswrtbPTwB&odN(70zxPfm*AfY8MULLc|NuKV0`p3;tYL|Tn zc`r#!hm$uBTaT1Nbq^Ag_nHLgJb6n{PtE?m=Y`d!EvX^fvMr_C!MlNt92>M%Y3I(t zP{s+Qyk@OLC%TJl5%yU5c{wT~;ka!Mhd4BQvXZy;TP3|JCK>L<+w?}jieQm|{k@kD zj`GpVh5F+(7S|$t^Ha^%`JFybgV#s>A=Z6S@;3K#zFLq!YGqZdJ58VBcw_sdN^3MH z(g?GkorUUQFd)BrdRuGS%;$s`2`5*Y^c58ZC*dj=tnIa;8@hk$AgeGs`BiyL9(+wLnu*3cH9Bi=rMQBW0xa?u1wG+ z`_)CW7?!nue#I~93{-XJjm%}V?AYXZLPKn);4(Cuc2Y31#XMcRhY4RE-KrFqeYIJs zF9X1SS*1Bc3(o>IeTK9gxC=$>;9cZ~A~1H9nL`yToyU{#iQ}$-pW4S1db$fYJw9nv4_>@bK{E(>11DPq}(2;dzHx5&}erK!iNmV^sO+ za{-BUK312L2GpM`=0CMCh}BfYr%?7%pI_r5)qa2P6Jw^W(b^a`)b4P`5r!_frd76s z{5>xFT5CS&qKbq992)erW9QvK<$B}w+G+m6ZV_64`F8FaJ$XlZ8Xy_razF{llyly3h@xpXp(#BhL-%B$t)&MTEI>KGT)(Dd2|;X;tRb8%jd~m zxnsuLkN;dvz`kUOpXC)yzD2$9nXb>W0}k`MEBk#T?|N-^TGl~Uf7ZYKEj7|yj1f14 z=xH=R`q-&kRSazXIZav#fU{Ghb1|mZR1&c;t*&b9+LGNa^sO%WqX=-;yF|=t?VX)0 zwzSf-o1I1IUE-5@uEhPg8Z*F9s-R)+V zqn`aN^m^ouo-!+T#B!zDB-;$*BEyTs?$8*U$!R+o*Y%~3YB%p$yV}!26m;&Bku(*f zZvV93qWSuV;^L#n3jZ##5HN&QAtT0d4*+H4*iTkBhE2`-X?_!dH={Q)EG`*c(P?}x8DRXQRO1tmKSrV3)ss; zWpZ&xcCn$K^jNkxMRT&_QKdSeyR$=5Y@R%GM8SSp$mCq+KTT&b6w z4_mmlO?Q{;pEAdRm|Ff+CfLuCT>rUlw?&jwp?_MNe-$leC!nfJV7N%s1(e~|K2tvD z=iKehi-F|70OIyE3Z=Ef&|aC~g87qUIg>nz{fJN)Y2+Q^XVYSpeD=}s(cMnl{VUZ6 zPoBNv2wE1=7N%-BToNyf@8JnU0D@raFrsfp7Y(7&V|E80jWC@uA&a^ykI^pJ<(Bt1 zaQp1LirD+lOIGTdz+SYM5kt&ws4I>nXwk;4h`+2GHMwKDpJdCS(QGl}N{%U#oRjcW zSl*$blVzAMm!WEvpEc220)lV89ze#x&2lgGt!3O{OcXo&>{@$4lO_P<|^ouYg z+0C{wbF=8cro`sZJPIqiGe)NOYGx_7QV48aNTVO_Cwv3*8^ioLc@NcdgJ0(~bYIyk zDl4eBHbQISBdxTvh3dY`9oq@m3=YX`AgTgbj3!zcl6Pk|-g-ygZ7`yOj7Uyr+WR}c zZw$=;B2KIJ0Z0_5mz5l&aglz)u2xt5)p4f}Z5-|3>O0Lf-;m_w`rp4gww;n%5ll)( ze`xTijLfmgNv7IZy7^_qw0-sjwakpBOR_%g5$620)u1d+qSJg|@y}mTg^oEI zsvj4xbirZ|Daxb-@j``rE|-d;xHqhxTdYfMM3Q``L`(TE z5*kM!8c)%?^3x^^8_A1}L!V{oH5+Obz>0J$N{$h^qq?-)ga-#tyXFm1x&*TT9gb3m z3QiT&;+_`z52P<^9U{8+{_nq;$)zb^QMJXbaTHrtra=iQ^7=PuiCiBlUUW7MuWOdce0Gzn4!AHG+l=t5+(J` zBHqZUe;TPA9nvPZ$eF0L!qu2!+fj`N%fZJ=}}GQtpP&=-4yS0U#j;wzd+&L9Qi=jbFWoAjbWiVz_Wh9YcWMn7M!rx+Oh3o~&`w zq!M|L)&Js3C$Mf<8Mh+^)>tJv@HC}SfZzp2Jgmxqh>!y9(3QZDeLYpSwX1sx`ndHN ze6ShH&h|BDjYsfN5c!sO*5bGgqo>^575h*pOyPX=@<~uA=&fwIM`bfC@^E{aX$krM{ID-|$E_!8P&yOwX9Hlep_^ z&{WVbU6Y7qzBYTtkch);kb0i0$lB&+>Pq#}1~+CQ&T4c-R6+Pq%L;Xc$sPUs1FE1L zT&DB)JW$~GQZzhapB)A!ZtrIWMJn{lXuE}Q*|6l-#0n4-oU#yyAUd8Fi39}(Md*&- zqMM;Jq9Of=AE;MTUqdLuUKY^kugA%-nrzfgXV2Fzu0ME$`ksF6(~ zNg$GK&z*h3x$8Fc*zgQ9?-j&cGTAnvlS}66Znj9%=zGtGfPk>a0r>!Ec0D-W%M>qc zcak96^&GUNyNE9%?=11JuJm%KOsIJ@-VkA*{uq;=7u^}8lOLmdat`GvrFLXD()wB$ z@bqQ+ee_Df5P=?T*p2E(JI-WQJd)5PsxH?&mlnR^axH-d7L#o4o)w*bL{(H53hHt1 zY`=A{fy<^(V32I+mivWIJ?s`^2&Rg&0Fft-l9As>f3De%>&hn|C*xSc-FvtA_52vu z1kHK;NXnItr9nPcaiVbO$Ow8Tdl~+{>J+5TV#-2%nt2~jqP&u}M5W}ER}fqW(CT}e zTYWKw>U~|kk7no6|4GJPDyMRAPs;3xbTyYoKF*Dzf*ZAmFzA43Vz2J*4(G2 zZbP1(L+?&0WDzh2my-4Pu0hUwJ13_J3>&AXHFnQrq#C;e(0=D%Lj(cA0MI?_S4kl-LVZxD<4PxCK1nS;Nlo=>F z6>@MBlVA0k3NiHXG?t;k9(0SK4N&p`8+^`@O!s7G@SZwKfFS0{_rK*-?NhS$}7^6 zaL06wgw-|Y2Onl|2@U0BX~^j~js{(=~H8BV!o+k15OM1Ej1esj3v@=nnnq46R1V{Hg)*vqdp`XKvO zgRz7%RAoC6*Et1x{DFFiuLCNq!#Io7AMF_%)i&8R5gQeY2^{H`iC=%flFt3aGPw4 zSlsERL-U!JNTK=%n$>m(mP?mrk3w|o?L{}{8!zWQNl}Nns3k~XegMm1YvKBB9{OF# zM(I*{*-}HYiwjX}e#xo83UC@u(tE_U7%w2f)p;v?{+(;trqxnzsajp^H1kBoBIF|f zch9Hd<*1G?cxyImCL4%M`F2*}a!+lk5$d$S3bOvzqAKZ2b5vjnIym)b)Vb7*!=09I z3q#;PWwO98><{KP7#ii!2Hfd)tYVf!J)a(*+3MW%tcX*uk#znrR#wqt|sKhp!e~{^oFX zQ)#LDB!Cr>CRbW-TsMBwpI=crxOgsOBy6?0wAv8UQq}<_r=&Rbe%5aig#*3OC(&fF z)ccNO7}4J4MbKW~=M^t{dfnbARxQ-9Xo*+-aC#SYsF|Z3mPl)K5(TnPI#I1-Y`1hH zb;`EyS@?d%&!pJ+MUsrIq01bvAn+;771Xw5R;p zj>C4wwGzh;E7rk{y3PVO@%+f)1?JCWWQ2gyVmo=K?2cq~P~0~Q;k`ftCw(v10E1$mhpE=~vLmUc3@ z2K?rqk^!kj{IWUW9kF7gN5C|vrt-nJX?mdmy6u7iC_qWEnwBDlE~RC&uwL$U$&weR2fo853+c_Q%qySLkeQ}4QD9Od z&Z_XQHokE=;u<0^E<83sY*&{@r?fO{A8&t!+t6pK{Js+5e3f#Xtvo8+Of-ms+$RVa zs!)wU-Wvy-n4N%tv#M?erIvV$_4;3xwhhe3tTJ0vVTq)DN7^eTr$KFgzpo6dk##U2 zs_1p({6YlVE7w*Y0z>`BmH)`nrw*PRtnz0X4$Kd2ovMT-;`g1$hCWS(+2SqT;g-sc zLR$&yKz%L-&lqqOFV&AQOEpF!th8?3u~&ySUy~_e%3A?c*L#hhr^Kfq7c|)@NY&X} zWmm^P`U+AmZckJ>*v_ivXg0Bu7$k|Q;T*PYFq{aDsz|jxI>I|=p1#zA4RV7yXD7yLP20iy&LJWUrO?ve>a(6 zEn=sp^MspryeCpBL;#g*o0Rq~4RCbM4vG=g-*F?*8Q*H)EXqVf+^6@sA(2GjR9T>7 z^2HkH{>z!ee(uuqkYQA?EmObW`@}env)F=d1FsJ**U(ox9Z;a(p7G=}J}+L1GR(dW zFO(cLB^qISD_glfn}OOx#Qi^lt%7Bu9l|-KVHl6H3(&vp8ftQnC!8>h^{g6Z$(Y1q zK08oqqcJ|{H$z!*H>@sFbj3BYmN1-mxiR&1w?CbPsFcKgI8)J!m^a))6raIB!a#}= z+Qv3D(CrziFLX*9<7M>44J=FKPIhspEXB9^9$B(lXPbeiU{mljoGt4*==8qD;pOWi z`|XTgTqn%GVN5uflO*+Dwt~Sp?9JoIJj`qkIrsD|lq{&2gS zz`C8hr^lb*7R~*;_@}YDf}=AJ7Ky)|s!!{kdQ$U65Rwb6#S#rta)CP{ML*u6E=}9b zMOZ8QCDR%s{+4ehT7CW28-nZ3yQ=u(uG5eg4|Uv^MTw^{Jvrpt&aia1RLz5&N|A3A z?JdoG^R@X|3q55by_=CQh7=zVe7LVk!cS^g_FiG+C)Z0X4)jb2Ac+0tOIh#>__68cM~ zsS9fS8Q_};xg=XQ>9h@N@V#GiA7Io!AV&KN5caJLJU+nP&d5UNAK#n`u(K8h1KjLn zz5)*{IbK`jc=eVtu(h`Zsug??Zm(*UTdR;mA6K8)(Z<-6-U11PP76Su7I^ly)CS`576yI znjmPaq=|wHum(Ca{2PFQR+9FrSo_}fpyTNfc3?a2RwXZ8RBiD^}i0`){ScM1AH(sc%h6}Y3AUM1)-P$@oVSQE;1ZytFCk(w7 z$ItrGj1kkeo)H@6eLc&Xl$N=2dZDehiktI3{5F06XC4L^`har8RVcCt0%~^e>Z-T0 z$$Cmd_=aQ)H_}zYD452#1d!B&4_=ICRyvkn+KsWo!M7XVis$8AU9gr2*0G(sg@x!1 zKG?nHydM4;Qx{|Py08sESgLeHXGzR;sy=uCH%`aNtKlvq0T{ENObu){muT1jB6|?U zXkA3FsHh3JzcVSngT$%-If?==Zd9e%_Q_3g_UMk&mHy}l9AVH~)VpHmjsVOXTc!}# z4+DPZ5^=>2Fx*?gyM(CCBP&#w!sk)$+n-Q#3$u>%5cO`Y)FqD#Gu$ye&J2?Syzt^u zj541(8aGz*hiBUko#YGPJ*b}D=;jTgIUTIoj9|s4C{N$lKmAJ|P+}#1umVleTh+x9 zFjL`Ryle**!`Pgi4E%wIjvK4Qm6zP^3#l!~x*R)*c#1VL?oj5H(`dinqAz!FU!soz z-u&`D@Kl^0JGqaSRtQkAh#B};rS-DsL;%uuo9^@bgHTvlAPBHjkl3C*gCMOf+N{q3sz}F9LxByTGx%+G@ z=CP~_BA+Z#RxQ7*^zAso40Q#-q@?r=27k=|Cb$=#jJ)D#;-ywTVYQ-B(AGQLV|v9! zS6@q0Ph92mVCGQs)1WXu%>BM*D`^X67mFMz*0c}9p=dCrB{6Iyy*4Ix`UWC6FMO3J zg6rY-7cVRUGSZpnK-_GfvJfpaDT~)Dmi4g9?lekV&gp=*AZ8ix{^MXoZ$LC zSpQ)##>a@SqVV1`+Zs%45q9`2%at%IVKF`qLYM8DY#GjHlzUoZ8zw|RCxo1Q$i206 z__Se|X4Nxl-)_X`3ju2tFA$Km!s?ZhfC89s^3S%}@3K z%PSgvrxAmR5l9_o^UBimmR?CPtivI2Il9!E6B|AM3AZEKWF;xVpSxK|Q9IYZ>67jq zYxk)yL)+gBpoBPi@_Znu@h8s&9V^JZbb~I*;6;E;*eoE$m>u=xcHvzBd2fh;x|oa8 zM+Vk6;6Gz01ypI6TEh?n9{`Ii_&(_|vQ5!#-Pn})ZIDN1XbqgQ4iS7TSyz-vJKp;3 zjR7I)P4WGlO4OX;o3Jw9c{1>mw_u-`p2^?GIt z;>DeGfS}RdCSr(KM^DpIeJXpj9;b#O8mslRNJ!3y8`zG?Djp1QSIfe^yBM9lqgoo_ z`QYM8YI_Q_`JCLZC5vM37Ot0iI;Cal$3dv}Tr`;U%!4EUZswA?qnA^r8*vMPujeeF zYlxgAN0?2H?4Ca5C;uX#P)U_$DJS&2Jrj6tWR_bBeQ2gG820S%rh=~Qr{aejZQFy7 z`c*cd$Y1SC2}@83S`=9=dxR|q6>fltSuI zCZcykYZXR`^v$POL;6%@UD5$O!M(wo%IB!fTo4^NWhsIA7z%4VXJ{wj()}K;tuhcn z2LMbh)JOZ=cdVLJ8v!CVu$zgfqJIzQ+SeSs zt9-^`0(Jmkp`~qoIYWgHJF}PAWo57gk{|s(8EJd8I~w}oU4>_d44Jhd!~bZ;eV1tzfbpA6pZdn_ zy_WNxHsX;?7qXxc&}gzO!H1_Bk_1Qvu})23Cnp4nmiUcsP7~zTj`lgLZuYI4@rxg%<@%8plP`?@3jYj4s{4EFWH=Z+bpSzvl9(FoAd*BNi|CNXb zXnbK4lS?%)aVhZaRTejHh32|%UcfZjuWls+2YVbrf~o;6+1G7@ZE@g2R45H3vzHWz zsgz0kY|F`p%*C{7I(j?|(Jae$8EX+0WQ8qmYLXz)w*v(+=}m70@j>CTR7a#TI$?St z3fZ{YDuek_dc=SNqC8|t`l0a>LU!_D=jEafbT}ZFmB_mlA!U+r62wd%i4pV!-i+@S-|s6JkLACI|^J+rd=&A z0`591q56W-k|P@mG8+)fks^FR;a1k*V(kF+MB(lSC>8?D%_*x6=9Ff_8RNt>WeDKx zQO9h{b&PRY{B-TpvM_i)2PLazy-MvM(Ox?Mc#W7>?%W#lUWtr@m&+4W^CiRxmR)0t zT1f?|1beFS`qo?LDX*R59>E`Yc^n;u~h}m;{A0#I9v&e`PC#&8&s@y>F!`v zehLKa_vUwUr;{~MsI8B3gu}2slg?bI9T55OOP5^zQwV@1L9|HHqP{DbA1(llV@16P zzb}d;IPSr;bSM!NN=B_Yf;^@Rk_T0|-AZ_jiz=YS5-np|J-HkY46beAeC5``4Y)oj z{E*d9C*^AE3zaF5Brml}ZJ3+Rmsxz;>OKD#rmp^s@0?=%c_V z`u`fhMWM}SOu*j21}G)ObiM7=@y%Gs!|->TZh6?~uo)e`g<>L9)3|Lh9iyUv4Qvcx zyjmNZGX?H9RAO)?f7rBr#&P2RWhj(_&;Rsw@nia+DSAZO3YSov`nfa?h2Y)J5X7w^SpP(`*RGfFb2ew7Dqo*(DVWiH+{OmK^u-mj?9mB z8*Q;0;h{A7(aZI&z{?sc?l^{(1=JID8{3mBV1-p2qqLYXl`? zndUqR>FvCB&DZ02=?R9Qd`os>hgO<7M2z|RlVd}G@vK9ee#cj|SDy8CpLyM-(u~E6 zJ5DD5fL!JXxcz*5ACN6eL`xT@{SDw~=dpbL2QgjNjIApNM1G|qtlbMR_n?REx$;|v zOPKcEYJ=X2KW6`G`H1E>-}hzNd>-15?amhdd^l>NMgsmd_B|jN_Bv$$34L8jZ}(fJ z=dFkgW}&4ul|dhG-%6Vi$oM4;xq#gqPK-Y-_cxv~Wof7q+J@`x4g68H> z(4)d=MI*GneuC9+R_E-#e^Y#!WaKD}pQ=kmP5!Qn!(TrcD?EG?In=xq>+?gWtn{S6hHvS9-P46kpKqrwoQyYKaAehq}f#kAS|6guLS)3A%OhoY!4N{!qXsNWvo>YzmkD|otP45>}u_aKH6vb)QS4cV@FouRU7H}CWba{%` zS;<&6de@XN8Zla9N)-Xg7xe+l7k=Zv&Ta~!9CSkajXUYDg0R^(=pBOJf&Q{cR+t>y zxV{~(Ol-{~LYER2*vU_de_O3wV`Jk@A7qiE0-p5`R4sW0-^9wRX$4lG*H?uw+_|MQ z=`r-9?FxW71L{ytB*STU*ZL+6|G@k4Qq1;B(dRp9f)4f9%MJ9wzKfs3jzxamq$A2d zshsXLTwxtiBNga0Ph|uM(3iY~8?)U3ivikBIPUhp`|{l^e6DVd=)gRV#gY`~u<*Y- zoh5{7oyc>Ddo)`+&%3i2Xh0@|9q9;Rg4WGECZm-YA6ziO$q_Dgl?i9dyef9d6fJ3H{ z5CK-<*)$m*xrO#e_K!I&miFNWnXr}jHNC~h(tKfv8?#%S!sE~qvI<+NYr2`VYoBi6 z0D7Fi<3N9c1XGFc(eTXd7i-hyp?m8ftr4}W=8|vX9eIdT3=THJvOu!fSPNBh-^r)n z4*}JHo^OYs_dR11IiSc*MZ^L82Sbve(PFQJ?(rfU+Z2mDg^;TiI0NLDNEMgOg*~D; zg>v31K{9!tC>-V69~iGen#9TptAt)LhXZ0n-gEx|h~{A}-jEMY3|+c#AM0CRq_RAv z770#RobB1yz6@5ZO|`V|4jRxz3o(~nPR8`^f%UxZ-Z?NMznvHH#5j?@LD$2!;E2DM z%TP^uHJ#t)39WDq6BPm^Jv|@`wL6MpDP9m(FkXiMRCN>$=)_uv$XdvsYxzwr`WN( z&t%_E^Ow8O*XDy;P@owQr;MheNsj;f)@Q)ap2IOGG502(9=5q3y34HjO6!kq6i5Rl z@8`mvxoCnvJzF*>tZ;6@icRb5Nye`l*1CopuoWHFZ7Ee=n=(e<@_l|z3c2CDu0Sv7 z{9fkOTkQ{ehe-}cEzY<7HBVLeai{!~Db0$^{pe89O5j7E8tc}m6Hp~@+KOBKG(BQo zl1gw~dI|-?RC|ZU1*ne^@)nyIz>=I+W*+nr7Zr|@O(8nFeKnq`uXT(o z>8zS-iC*s`zjt^4bN2q;I5sdD!B`y0NAABf(t+Pdpjl&vE)%U%Sl!nJaw}k`iTxZK zPFF+dLZ9D~p9ID+Ixp4oo9MEnrb|o@D%$2lS+K#?OO@~5oz}k!&l;bi(C@N}DX<2F zh3RgwV`%1^0rREjnjGjf-afKlC+YQkt6we}Hx6oT`^Md?jPXs2^$TCXyQCsfceVuR zhi^^4zmkJHBJ2X_EazOe*)n>E4u(jX8{hC>)2&0y@A~KTFh!60=TlVrEi=NFG5w#M zG^#5ZYk-?n{Ke_LxX>BwsT*3nBQ6V6WylAJY(L#q{!4)VUABm%p)A`cmPQ#$8#6r9H}Km zcKlhhNvXy;T>kW>+1s_?4KoIye0-J9$g5lr^{R1k2^hpVlRB8K@E@jR0S|mz1i`6< zD(t~ozPK$Pd!~Y%pMT}pkjX7Qp7J6VLtA@L?lqU-y%7lWp825}S@)QvrLOL#4@Y-g z?J908T-d@mHCF#6+3;-c5xxu zO@S;ot$#g8{EZag7yRz}#Okr#h0wn!HrXS|X&couZ98GR`HIQdq_og=kmOqz%p6TN zH8FZ*cPkZA-~;t)cAru^>|sNGt8j!j)8Ap6&{=eE{YS7pQ?GU&y-kUnQh(3K;=<$~ ztkkUN9#pqOk-K@RXb6KD&aKS(W1^haHgjo$tqfz;34qT)Tr~_`e7$BPDl~Gl9PhvV zIZSUg2kFGz-}3ioWX&@nPAr(cUe#_KBGqlTaG4(eG2^2^OEwvB)#&1CBuduzBGfit z>eBo~D2wh0qu{Y3+Ft7KGq@7OUUw`yT46XaF8LH_M-1nc$-uULp3jn0@oyi{XN&PN zXWt-RrLGMQE)QA!gcoDU*DM6pC5YO$e$*_5sB`>tTMh+isYki4KoCsawc{YH?+~TO z@at7R2#`?zXXA6ZSy%svH}|m#j{6spj*>iGY}I8IBhXP059W*z_)#fHxHu)hG_ZJH zsY;&bfemWJz%ST8nd^#8vB@rn5T5*>d96q&}B^M zoB;dM36;gFC+}&Dxq`y-Wy^eSxcS)o_Xx-F5vakwp#uY7hK_sIOu zGb5fYTH1-8^_u>%yWzMDl9&QNY-=Tojg_-xD2UclL06EZV7m29Ui1g~jw^E_yw^9UfE>bjNWqE0H z@%0lE{E@F*$Vu_Tjbg9(HL!d7;OkF#3*Dt&3ZKGd*B`9ZY!3Npk9M#rbjx6|VA)-c=1l z0TJq5F;#sW=V&&-7me{0hrs5q1MPsSa_#tPWOmm1m8`@OvZZb@r=ZjF!e4PUi4(7I z6lb6G>Zx0B(K1C*Hw5(S6k#8I56yGD`*1gDnslp95#C4mHdkf?i-=5*c4Gi3;Gw7Q zk?j|ue=vc{N1s{X-J+_I;h3feVF+4WHCPFkZKxO>uqI6)KXpIt*{eQDLl59>xi>A;0hT(tO@pWP*2@$ zi=#+c>LF5Bi^&LtfC$h$Cxu21R(y7#TE>yC&dl@POpm9+LF2mr@^iWf`kdDAdL#+C z9aY9E=)v$#=}kr^RN_$ywORZql5vcEL4J;S^Kft5C1A?SpAXwpvyddb{gk|nq-3NA zE2Qpbxb-c9!w{}bnWSQ%`i9*);*s2*Awc%eRy{R#U;4-1;1Kh1TAOv@$r31RA|FqR zr-vibe9Er43XrqB~7L#h88cal&l;+orp zEvB?m?*)HRY!=f~aIkVYF&8hf?-PqYI{v@hkYw%SY|Hh1WH?CrN5{8*ouL?V9IqPf z!9`ZUS$+4||KM%z!~EDNc`y4Dk}!%CR-KOD7bG}e>>?l_^37!ovd-o(3V*Av6+w(N zWAQHCPuQ;U$G7@3ka@z0ZSB}bQ6)%Vt7Zx@bc07Y;B^tWB@Kqr!RW1`@QXsHy5ulY zcH>qR+|&Vg3)~40!8hu3eW zdq&Mm<4z#sK89{Wrva-@eM$)d`k0jOp+UV-1D1q;O9MZX6x7h{)F`6(2Y!CUntHJAgubj zldq=uyG$H9^|O`~dZgw>+!oWSlR@pdgTi*!G?D*o>qqa{4$Hamm;(HWm2I0tU&xss z1)C1IC0uV^fx<29)sxPWgVwef%rX$hP#}856U@R-)H0O!ZI)F+q>PE@pLUhK_thZ^ zBK7-0N_VlH=uK#cv%~QPo7MNI23%M5A;b07bipzvf>;?!I9fS^F2`0V|x%F z29nK#EKdx(8hq>r<~|RT9>}Q(mJ#zDksx93CH5_h4rEB^tQb9O0Dy-iXRvbnXR9gr zZL5euaL8erIH4LfND_42H~%z@qVmpd;2}ow`pkv~_*m5#QOTTw=aW64o*TZb!STQS z^BG%3JH^i#TsOnkaNaaPL2UHyX3Y?&NCi%5USQ5h|C+%AIwSn$2lwG6MKFmGqrc5C z9;*ea0&ID3bRi6fKpWV_aFJVq+{spk6mY5pvPLZUixsP68gRYq1PV@SfNNhI@Unx4 zGsJ5Nu;ME`$EJtJIPN$n6H9t?O(p*VF`qGTQvl$_b#^_UtTt(203=0Vy`|OI8wI+V zjP~*fCtJP)bcrhs&J#{bSnv?%O1Q8OC+9t(dUlYEj52G8wMKTV z0y}04^g}Zs@RM`=emMx30-5yvj~$sT-rdx#!Butq?9#+2#&Su$Id)0q?D0FBD+IwfmGWZ`SYo^TNPCU0q9_CVa z@#X+FKBV;dgt`pYylF6y(QHcs7k&igz@v{Q5f+AMWlJyjO<|-?JU=e6-&>hwgDIN)b02bHM+4j|Y*?r;PTMpOyTsZ9 zE7Rcy=!b4&2wO{fI)LseJ;7p7B@Brh6$&!hji32`r?wHV-R1SjV9QG?E2r7XW~ zCsy_w4RqR4DLDAodX%`#8{gNoMJV3L2@?U>qIYs*p&IGBRCe9MTu*Prf(55^CZ>VO zW(Vj*A~+x+w51u@m|7t*hkGf_Z;|(GC}mh|P&!j@y}eWbIT>dfW$)_VKMN(U+C0s~ z!Q;jCDv*3pH(_+!%Ahl;MRRJV@5;GRU`32Rm%+!wnF@u;87RRP4`6p=;Ts+Ri3m)qNs?~3B})&U)y zWGLs)nkQa#x_6#)mJK?X&a{o_Kro` zyR3H|g~EwOr>^LdRQQ}OfQZ*bh_G>Ceq(SKF-6+wN@%4$_5<3A!pz7Jm5Ns%#_Pgq zb{3YJMt`juvau_@BX|(eHyIpD^KFEN$NO{j38t|b`_WwRE^qQ?zl0qM%0yL*K6sOq z)|>4qZ}0Qn-;Jwv$ydy??|Dss`Wwd0XH_r7?!C8Bfz%V?Ncg@D>FGlEaniCS(8AmO zJabV=ph|Z8$x9KT$>NC4!5ab6{v1hOd#yj@PK#@xLbbtiyQP6HM)$3MlaKl?*tx^^D_ua))N{x zI67wDTH09vlT05d*ofV&lVwkVFXmm4690p?;os4ABuv~d9G0gwNSGY-J3rg@=u@M9 z4o!clxn>btON$#|k+81v(enQHA@Tej0j)osGgShkOkGK3ZU47(fmKlvFOb#qTXR$F zc8D&}JA6ITo5A|(vzkpDuW_fM=mvzrs0yKo7r1L!WuK`3Mqr`&r>_v~lGR}nv$_4Q zt$XZLmdtLNn^;WdQ!;NPEhTvzh5ze-^lV-(@bBV#xLsBi^r$r z`u5*IK#=YmE*yThqGYKGGO5w8p~_)G+{%j!z@h2=CdKrm@Yu(g8E@&gnMpFz{iYYS zGkWNPUL)!86bT0_wMcH36%Ha!J6h83k`Wl2EERc1lQbOoyAT`0C zAm6nEW3Rk8Iiu3Y2veTQMo>c13!EDBbiS^=rXeCia$H_W2-6~wB`lT zY0LG@_K=3Hqs6)nm)Rcz&5((aO?%zA)nBn-+DCN%ho!F$h_d;@eRo+pr9)r|=@L*H zmXa2w6)7ockj`DY8w8|7Ktk%1js-zLTBK{~?#{jZ?!E8-XJ*cs=giDGGv|4qH#-jk z52}}rrUci+Y9);)i!C&(Jz8vX&u;>6GZeC+z&a;D#GlGXjOgC;+{iGy{P-e3rs&!= z9_Lo`!*pIa@i4tmXOjN6=WEwFwQD-krqxu0LZa5hJX~M-7W@E@8hoxM(U6uVZC}op z^XM4vAe_AP%S1L(@biEZD=%EDLH;?d*y>p{%^A&um zdd7*iVwdNKZFY}wj{R_@k7&;}UCv%k&Q^U|0boEG?o6;9*{^6aQ})%@T#1KPegl_; zH2#WU&ELI@ngSeipb_|^{|9%T8yH0$)<)^OZ(8lUT!ODrU9Lw_4{S+O9Kq_A8;E1G z3tqNJaV0O@miBDWWqjSIvv~fRq0fbGC7lXklw>s3V25_)Wz$5*M00>&N1%@cn4GJo z{fRF#ZC5lK`dc_jLPfsKR*8K1j+&|UtKQHJa`oeUYDd7Y^J=L<+rjfSX3^7ZxA3X- zZ7yv?qg2hJHC?IFk?&8-=%sjTs;ha7^HJnDy$LDP?|JS5qgz^aF9(ORYqIZp6<`gK zfe!Dvf(yG@*&qd|0GSXhFJjujTwY;Q2l$!Hul#2PAW|{*UjoQ}-Lj)xs?Yy1(fo;u z>I?!S)Acdc*h8rB^15do82~ihR;W$375{&0SHf&*mo{~6J7#vqJpu!bHY%Z^^^mwZ z@<(IZL^ffXI8OPU{U&mVp@aYK8Cp<4kVF?TY|7Qqgms6(85jGnI$plO*UCHX^D)>d%qq1 zk7O%)#9A_U=fXzg^`Q`3Z-^3alP-(4{kLEx>p@1;F?lb`Q~CEF9XpS{9z0chFvnp= z{rGvOL+X_$OS{_rCVyGKOMmmdSw(r4jN*F|ZR1q!ko z5If>H_3=d$T5(lV4%%x(#6Fr_%YJr$=q;+9N%SydaW@-mUiMSZ*Rpozz<)4(*B{ze z{Yly5_Z=i{AQgE6Oiyg$w-5Ii&6Y8Y5SZvwQ@zAypjD9Z%zHZ&0%MHj&1Qg$E_L_D z#d`2NDGwSE;NDL&n*57iw;V&cY2HH<>gd*{DMee`3bY?&Y=7p}Un_u)_|(cB&iv&0 zIQQ}yu?e5;h)!6EQl!09G50WK&ii%RI1}j&G+F-o7rLmBHV_9kReRd?yojZkGCC4| zYjDC?D6uJWE-jXzibKqY+rxq+KrMlG2O2t$f)XxI><)`+bqZ0m$9o{lMcP)4`Sj zKCLfYqEFbQ{7f&>ZQk+4cW&hzrFge)CZ@Fhc|ub-fMxw{gc0Q?PDb)toceihDq;VVg#jrXU0;Y#vGwEt zKS6aBUkn?}o$J$&e$cp4uF*4L-OZa@E%Z`$!{iofitx+SKQUwZsKPs%GU&AM=(CJnnn*v)`d4ibxgKFD>{78w1@b)n#l-0yqA@ zEUH!rhdO<9SwmF?M)W+usJ`0vL(bIOp&!nHV%6;7W#H0}&{B}PXYdISSMd_u zIt5Z*ZH6cfUbkPqd-_6N_}RB~Y!p%e+3gjQj1@LdrQ8ocPMg(THQ4MxnK9=%kwM~r zK$)Ou$v`Q&&(q(Zsd}ORQ}1*3>B9+m2Jl2oyv0SAO(1{ZJcAtI+atOKkl%PuXv5sC z9G1EOUlQ9JZQT!}<=E^KZ`Wo1mf~)8iouT2^$6cXnTfI%(;;q6jghK1C8BK7WsHaZ zqoO}PZgFf57VYgdVK~S5O8(CdY?R*aEgKD2mRm4rl0Z5RG_F#C2|9idlyc+_CPepI zTP4ip5Fm=YqVSi!%tKDdXnTkdZ6TnwbA9gyWKwm!_0kfxHDNr(RM7Ut+ zP{cA7DfUCdl&x7mtFM_=z_(%BOR0QUUCEThL%N3;^VeE>lR+Rd_Q`J7dF99X0LlN3 z#^{i9@jp)xMGuVK%LzS>r1bk}yN@>xNbs)YOBu=+pC`fO4fqukr@F0rpZ-Sin-1^q z3uxg$zOCxGEFbWPC0QfBTQ*?v{TFqHoV+BlbB`*tHNFOGfG-2`A2S{T;SDTRY8cwM z>un#6_-XA{cnJ(`(?91c@ky8v^fuMdc#%m&eb&P#e$P+3@gP({NCpZSHL5nj1Ladx zkeau?TBN8TBY+oGLsv`t)mJ%YtCZD&m?i5KqMJs9l8~G1^TqE}xC3>V>n< zq#SxfPVrwEMB|5VopNEl{wn+g6WJ^pk_--up$h*7xAoHPjY(gt-a!b208Mg-bH#FJ z8J`|*(Uf+1op!tL4-_v;K@9` z{>zi9)jBL!mFoM$L-6!5@4_}HdF!O@^6pc6;)gLa-xqPXG+X&clkYQrVmjgu?J5LS zy9Dv3Y_1>5VaE}+`x_`r6Day+8xz<}WJ& zs6r8xPzq~wHtTaU({Cs*ceGEFzRm3vZIS)_1WMw-l(*7*8eo@$`Ma5$W0Jcw(nP$J zAI654Bu`j&Bo4vK2;{r8MR>jpe@TBN8uqAm${i?XM2@X@`f9)CrNO+ot4+WJd>pqH6HRnHZm9;w9dq9?u3Q$S{sH~0 zwpCpe)%PCL#wx+?1?v+OdLRcekPujv={!1k5Y`W{ffeE^*TS36D!=U(4D(!}d9;3= zeHKZbiFCcb#URH^f4f|q?zVI@!>@n&4#-ki6J|Qv|7kmIM0bZM8T%3SCMP-92hy?BUWb_|AMC!icbtE~59NB* zBIzv9J^9DiHkDkP$gXP1fTcjJkE!(bpJpU1*<{ym1oz0gNl2nqZ9#W|ydj}3>p zUohVd;|WCmyt`*4t93c~RECFR4u;}mWZ51VDeTKii*ToM$@@ILD{S!2uc&}L%-9BI zN^mT3IS)_l+Q}`t+Tyqc`&KLm4*osC<{gfdZ@~jXS}?G7F%ZurxQxFqv4D`KS@G>S zBq0dOIG)1y4+PY^TvVEldf|Q$gdz^+oonLjtrtrY*k9gYBad!{-%NzthwR)eo&pzz z&hJHR_UJVbeMfem+XTMVl03A{g0pib7cbXoKU?`n7*p@zTwzH!IPt&cAL8JLkFI5f zfb&Fa%F2>{f~~-L)<5dYr{-t-A7iR%a!_|uC6;LGBEeGGNJ#N_A`VW@<=EoM4T{$##mjHx6a>$$e6h7CkfZspF}t33DN#lvUh>@EMhG5kydKKn z-miIgJ7T&FtjvcEFY`Z!OUEI_%VOh>Ax3tUN5@pZVXNfqIM(BgGcE~h3(<=89aDlTC zzbDze(h}AREN8laYVD&{LUv}>1(}XwCjw7_IAM-_j{>sf+X{ex{BSJH@Uc`->e6I7 zPv)14U6P=ne{iiJ)e#u_+@%P-OufvK89G0mf4w~6L3wLEZ<6(n%IJx6!B5Yry>$;& z+wqeUG4-#QUW$ZAWq5Ip0-aTQ7RcW-O@3KZZw-icKJZ6^$0+REHIwiNy^W^@ym>7D zQ_BRX5#te0y8!*GdZg|2xt8f+|2m8Iif5v zc-faE^o*0+bs0#r)02FRUSuhwkz|^4L-dzbkK2)#L=-bhBeHlpk$ss|&e7@5Rha$+ z2Z2ttQ!I_Np#&Cfj=QX^3ular@0Ef)3yrmsn-r$@z`XN+`PP>*?wTn+PD}4gQZ*Qm z$85TXM&xN+&rW?>>z;K>0)rsYg<^?E$_>(F7b3tLSXr5U%#|?_)*3(_R^75D9v;t# zBt|7qGCq2SqE2zQSSv7PeupgwXJaKQboS;j;*Ymtn(}jm3tK-+Zx%j|w0MWQ+%PP4 z&33~@1eSx=k_&5pTz-b#TnpKK!^J#`MC6BlxMMeT$8PNQR{2v<+Z_`Vicv}^@ThXW z3Eb-nOy%j&GRw!IgY_7!$O0ecpSHa)qLjlvlPY>ROcCB#`W^=V&%kuxsf7ADrCj|S zOB9$K65+-S73m;&&FfzUMCe2)PR|95q+Xz~HO8t^<#clF2`lkXpQ0Z;Kb-tyEe!Yr zYnV$!uAujtSG%l-BMo<1`wY^M+OYY>@0eG4M11yRU5EO`1sv6~DmI)& z9#6oO-Lzo>(=Xl6vSaOObpkIVLP6cq_if%FWp#R!eC9x^2?eCcoZG`M-e!K8FXFso z7U?lkK-ub(I41i0i(m{Nbd}$gKSs@e+gy+F`I$&_ymBhT_AfwdgZ#>5?5!~<3QQjr zME)t~;L*}N3qC{GbkfknuE6HE78TvNh{V(CJ|*CTET7|F2nC*KgDkINas?`sGU_pl zJWI^!YQ=78F|x@GJWe0|{q?W$ZTNOD&hR~{PFc6dfLYG zGKR(J(%{2?)&(4W!N-c<^2nO0u`bAUy6V=iot3F6-CEy~y>&S!>S#E@#mq9S+Wy&g z^5CP26JyMbnzI|j7_IQ_kseA-$<-7BusHv3uQ$I|2fVImA2*eo=hiG7;6>vp;@Br+ zuP=v5UiET&E#-%|Ij~*5mS_9-+T-+FgmBDnL;4t zFV&L0HnwAh!fi9x;2S`Cj;yjX99@n&7t~sXlg=!mwjR zY}+mTVi?@&U~#*`;@L77qrv0MAoRblBXs2pxc1ky+xEyKA?0A>d@*&eS=?%Z)L|J} zn@`=3kG-_-lHxlKFU5Ki>BTMwvwcS>jIi|pp~iJQ@r8p&+7(T}`t_bJeI4*C)|Mu? zHs)iyNYj{C40?5uYEoFZH5&r63o%6+fjv9#M94#90ZLE#TaFj#eKyV77L&qG5y^w~pX6=m)uqh8i zCUiP&>1qe36LAaK`FJf$sdBj^6T2XTz~OKRk75xT3zoK!gQWaX&vf-gP3{=IlmS!6 z^n_8L5@?Ev&S?KaETP6p_KP}>ijwP{S`-E zUD4(IJ3zRn83$|aNksIA?MFUKk-?{b(LjX+mg7D(GT(`A&8dfZ1!baE+CWxM z@jyzeUp~byXb3=wmrS4?nViv5vjhD%R5C>XRInb$S&Aeul+RlUY_{92OcvS-DmAEX zgdd`CM88BF*J=Fr{ePXYDqgp^)vafs0pQh&A&qJ9Wo3HePjkU}4EgCem8x(pG+i86 z8A5(4E~HS~FAE4$^GlubQ9h~_T*V*PAyzQxPCZq5PRFOd00x*%h2PqX0O^k7OyDSC zgW1PK^g(UO(Y= z^!NZ&JE&*hOGsMV(Cn|}C9?CCS`1D83%uH#5eBydJY}-}$C4ekOmlM+dV8%a{^$5u zYpC7mLb^>VLB-n#3}6mrR)%ARxE>{0`z4q68VOpv1eW$01Py2|2`(Vc=UR zo$a~VEvN*!{3Z|T2MHV~1?WZ&x=$Im`6-Ni5xv3&A`qfs82!?x3@@3$d}oWJHTzA> zNcO3Ca2&1^qCiML1=Lq8k#o8PNyb0g54CJQuc}~3JkAFmZC>zg-W};x*YX0C-w$z% z_H{Omzxh>&(76wF2r8MydkXrm`ys>hGpM}NZYgEQz|CDyML}<@5@`F}JasLMh08}19rFL=htq4l6ntfil_uxm02G|m z4gLT!Qu8fQzZ3+G?=OoHL5Jrchml&bu+EN#PApNYgZh7N6L9j>k^TN-*6x@FGaQDZL;p>VJw;4! zUOQFebQXc`T$wyN*!LgMAZs+BY-(-zxJ42pztxX7Qp**KKQxS)a5LFee;%TFlCdKuLtQR2W#)wHCRH!dh0fBR2{a9CI zZVHlzKF5g&`Tl43U5M#l;GvmX6&>$A_h=pkqI{|GZ0`rCKxgm}Ig%O2 zz-xMPw+~75n%$JRzu{S&kYuc*ku5K4SDgwzN}Q0wn1u0WFGKi<-PiF*%J8DeTg z0MSiEu_K1RzAM~X#AN}wP$*DlNejJ4**uv*e+B`vCVT&}84B<8>g^|1dc3KLs#4GZ zx)D^y*DLcaPneO?qz0aqckDs^*jFpeTUgXR2PO=F?9$i%oU*B_aS2^+RMm(bRhCqR zQ#u*+{nV?>HjYOsJs{8GT?XQaz~d|V3sSh8z%?R@uiZ-U>uptsU*!_)PzK=JD>%`< zCBwB#;}2@v?`eNx_kJ#+$vdG&-C?7}!brkkYqr@p@9H5$9x~{ecx5jT@YVDLMA3n8 zYq$tkYco8##|G9g?`J$>i6`cSrg6FZBuwwKJ8!hWgf5N-(T=emKVv^2_~$WxF@eAM zRP1RFvQj5#_E0{U#c%$qA@D$d16L1FjjX!F=FXOEVBW2W)f@7fd$f5mI6c1t3u638 zl!wvc{AeB!cNul4sI=ATxtn zB)Cnn$ySWsx%gIV!e1R{n53bbf!mkJ^fY%nu06iN=o<+^UtvM?xT6(q3*6a^z{K_x>AuM&$jywn? zrepDz`@Z9>kiYTeloRv{qk34Y>YRt`A~{^QR+Zwr|C6(YRTVi1g*Pi5CV51NKW{gT zCiU1*f|Q!55vSVr*M|56)!jCRJ}1PL@l8$WHr*Xvv=nU=8a9!%P0@09J$!ETaGx@} zL^DKuqa|81vb<;Vh1y^#b@;zsNnR5I)4Vr0f*`kei|=fvW;N^{Y6pgM6hTe+rF{ji z4mb4^h12)?G#rb&M*NE`#fFMK4@d^QKi3XENla$TvZJ1q7#Cva>ft!ANice9ps&RA zvvKlP5lu}V_gW8}&*TIyfkpnCx0LyeL5C*$!9Xb+s-2zdLX*+Jb1AuLz!T?z{W8tx zf*+l3+B$=B?eZt749!en`faFcN1+~;$7Z@7@m#ffuZk0|a~|Z?OpV6UzGC6m+L90W zT!Y<)hWc6HJn2?235fEz?!CmhY-3kIR&jLM|ArI1%yHt*+U@pVQwYl|Oi7x1scnT) zL_QBXt`Z0}UB_rOaz=3CFYIXCaV$in-(kybZm`W?4nHO7@xA`ilB)Qj_j@p@2bwe< zw_>HiTfYau!utl!!c~s$LUyni499RlxQS8MK^cyfWH#;92v>hqqv$%nodNirqXgSvBiCKRnK~oP74+AY~|541IrSV>GUD^~H`s7m#dWd;NK41f!7 z@GXG~Nrfb$B>G#+S;GcH1m=zv#@0}-!_>8NuxhaDTEmtK;)mf+Pjo&sgCA?wCH{TU zRD52T>L8>DQ!w64V&wmhbO@! z$5LOV4n)paPv0+El}icE4MV za)iX(B{g@kDhxU;5pzp{0WV8F7rU;bpWtv*W8_F7`eY4Qez}&5f2d6@-pA{V!uF~s zxgX8eEWBjYfo{zupKZ*B_C6pF?u-JwXr}2d7T~y2N8JW1t-Y`?<#1yN$+Ko`tpCQD zTjrIjeyUZyyHDLE52C(y@Dn%Tuti*PteP+PwpC@*nSer8XpbJ*1<(dwYZ$=M#k{30%N_sE>`>3%VIf9U> z%Fm+4^S**h6w3L@EV+nPeBRlfyYWPvPGo3eJFq``@C?0yU-maia#HQ8Wo71i(7m@GN!LCvz;G&$HALRbv6^%767%AM2--<*ny)J%!?po&|hHOFw568DSekJV8|I+Ca9TmpH2>40WT>7^eKjU>XJSNZ;6DXqhZS$bw* zhB(6nzqpwP9%HuXzb~F z|Ax4}j2G~9j<@wDaNRYp>#Ua@GsGM>@jdZgA|e?F8pHvIZ)5oFnX={ov$M5m% z-*kghkLN5PxdZ4(;)Kw}^#;($PyLwF;Lr z;j7(snVSGgCWD`=GjiX(_SQwQ06|gzH=6?YxTGW)dUGz~KnBPbRAfh#hGVcT^tc_B z{dmR~OH%Rm(IjJ1>fW`>p>w6V9#4A#7#4n_+t!#h%Rord|2~~w@Ng>Bu$}|CF6*D=`ulx{aM)l~67w~3m zV;Dre0drU|Jq&w0`Htzn)_%wmue0pQ2;~aD^`AGVu1>US-FsZx4WKKg_qv_vZfS#u zu%F4M!e;vw_h~fgoLdYWKYY1NnGvdW#p(~^&mJ2f9HAhZv>hgcH_u+nwE4{YL>DT#dY)yzWEyI}%WZ?cit6a5h*LV+Uyx_A5gUdfP zqFJEzz(T-|{2m!q>cgfbpYgg%|-d>}kU&Dz5`djdm|4sZc!% z=wuS|IBqfrEI_Q_C(eEicmqpsf(MZnc9tdQmJv1sQUX`KAdjJ*Dv}9d$x^}Sq$CF# z!7)Ohh;()VZ4+~g=`Dn-Rs0N#Yg1a8vJbP$p`ZsR1;>Dr8O0Q&i=V@P)poD0@^eRI zR~mjuc__OQ?*4Y3nQB$HOvH zv0(IpYIR@UcepCYD_~8qn*ZrJAbj^}pal-Z2WEK0&tpj7MI+P`Hn0qs^Yndr(e#g4 zQ~o~M6~h@^oFBvfv0R=l3KZy-_yL%L5GF);0D*W-Y3Pc$o z1wnV6)Fx~Lri)1OpwNUre6L0N4vQtX9)FFa0=ecuT^V2Y-h*+1-VT`OY3H1x6x0IB z^8`fyKy185-;%0H-NZ^VM3V5>>o^{dR67J07bmg<5a0+hD~qiKk@O~xz3n+*RJN*k z_u7ytgBtT4#A513h1Gpm!~&a77l)FKD*&WZDk%Ohf(JMX)5iXXj6?+be`SBvb1&uI zt4`qQpR?vIhEG^}kczRNe8V17M)&)6^-4IDlw8fCXo2WaLeJ3wx~BkF@vlY`APQ<3 z1#ZVo>qZ(x_hDTbL3rHoK`Hg`F>c+48At2xm{tik#~fmwho+*D!SF|S&a{u@^%iA( zWa}_^SR@{2gag0wmm42F#nZ`%z~UtVdBH)*pE&XQE$PEdWIQQxp%fp+`8d&M4C%sqcvq3o?L8*8yv_ zJz|_$sCqq6PChm#0+8qS*q; zbh%;C_}5``d6+hGvka=_Tv>l{SorfNSLdHT98{-FobrnS538jyZ5%hME!xze)1}JvGO=aQ}KFgNo&BwSbxCIGr|-; z;PAo^8`HNw&&f9^e!gjm z1QyZf8m(!jvcE*A1g9&2dYU959AJ7lJMCz5Zz#tE2SeLL_0`ZG&v;>XCf_F*V+$Fu;S6x=+1@P}|Pvg2s z9AvOa4NhkttruP|kP2o-T{->?a)4LgRlbH|X`M;Ve35B3@RRyTiy4gOi43Ec*h3xK z)k4@W3JvojuorM-UVO->CjnFnKCT9MDjrJ#Bp4gby-1(5$E3{FdkFmPHd=CsZwntQ zg|LrQ$X579FldZL4wZ;T5jxGhw6`6hXsJ=P1Oe(n-D|M)2OU!2Im7CAub2@xg9V5j zB;gsq*hyp_E$nlMCD++VmG`Cu3#43l1wZ%smk23UqPH`u3tm8$*qXyz6q14B&^HzM z2(F9sio0rKtoGC!b8uC8nl^6f#Ut^bF7DTLdWWEpYiXe1rFT3{ z5y!w_%f;S@*z#sR5!9}Q+wkGmm*>|baH|9LRBRt^c3CGy&OqzBzYhLwZ$;>|M&P7_ zx-vm6GEy{{DF(C-xj;o+0{f1snijIX}6jxzao zni1snc2HM`l1s3z?5%q3I%v021{O_*~pEsm#C;AqVPiMR_% zkhM6}s~%s@TAaxvAA4iyE9TetcOYPx@M=Uj_b}UA3Ur6Wh$^ho^QSupIny9GdGf=h zg83fCdS~v1YUN&M_k9)Y2xC5=?22pT>2>@f@phg)p<3paNxAL8UAf{47w?vZWbPgQ zn0%FNqa91s4G1S&5|Tgez_Am~`O@8iZYRPS3ZXGnm?HxAd$C~g7#qG?jCKYXS1C-eQ&b4eV4d` zMCak7-;7uS#YaV4*xwmp6}SFctG?(#z${uU`+kvUHuc5DXZ9SmP8@ZNLKmj35r2pl zKb#?Hpua}RQ$()Foijv2MDA*f&ux!)?cWGv@8uKH3$?g=9bdiaNC}e5L<)e!&Wj33 zh^XQwQs`U&RNPF_tHk!jqusgx-c;isKG1mV)HmukJ)uxf46D-F9tapJYoQ}Nm4!c; zC-|LnCm1}KM>u(*K6ADEmS=}4F|ohxa8{XbsqI>{6@mo~KUS8Z?;Qqj7xh2mPXX7R z5;Mei^?GqUz%ThAxp*I}vssfYss|i{Y1fY7_~|&KqE#c-y{r3}SsK%SL!kTZOLMM= zXajRJr}#xUH0=9TU#I@tX%WL07pNX>)~(I>jmhamBGU1oNC|6To=;z>pbt#Xx_15S zSzNpA(p5Vm!lQ`_k@(RS1@PS+JMX|1B5%JvPM5@su|)HRkTw_4)`%a87JmR<(m(*> zg-2qPQ;@*q)Gwuae6x~bF{V8^)CglRN%2a5Wy9LkuC4g`S-Tr?d>ME zlB~xcQa~VP`OrxQXhK_DS5sdPTwxj;qHu|+b^mcX{Ts>uai!lL)Ab;)-XnukW8_X^ zV@Q;5?pyJn@74$6pl#3SoUGqX7f)UIt=?_|&|6E=$t?$xF-_CA%yT3>(BHfG@0MSQ zlX~vN@KcR%W=&4fox9fjegKW;q9F_BOLq_j;#LBt#4s7}i0)b2tlgT>?0KKe{YhL( zHzL6PlHV3h%p7GuD*L&b7>aBGSp?%Qb|&N<6$byk9w~5~n!!v7XsBvS)d(@JsM{U! zC)aZFBO|pt44baUbKB$pOMj7!-Ay49qIKlfQ@Ief;3I@W*61m$&UI`k842x{@EwZ% zd%Vwc5E_Po5I(^Uu|wZ`x1W>s z8s#Lir4bFIigo3NN1dPd_UMYxz8-I4=%J^VXmX2w!&lQgl^nLQcQe{I^Wlkwd$=h<$^fTQuZI z$58B2yU%R{8XU{snk9}Rms~KC8CO}0ycJOG7kUa5B`&FFJ~vMZW>9>!^#+0@`zV8` zC&=_`B!E66Ai8Y&aeH_^Aj)mr=+3)4jLBD&@&&0Qx=nN|#2B_#Zt^YeN+W)h{^HBC znbb<(Iu^^h(8f)-o^jE4hJ)|sm8hQrUb+Hq(TBc*S$BKT2=t{ ztEz&bK>gS|e^om1UWU9&ip+&S>~ClpI^t+ItqQ8)fR-q`G^f^aCPSU=-b%A!k@*Yp z3n`AZ?0e@{$=hTa46s}?d2vB?@0C71$THQKTMRFJn7Hm_Te?Y%h- zGy8E<^@0T0KpB@Hz-V#Ih}t~2R8?_8`obCUW4i^$dS4jcx!9t3BU-5PZCs0;_bC|^ zFbZeYUR+rB{F&r8cyXa{(QNqNx;xHggxE25=o`Zy*)LnN`{wp01%(Gps2}n2-^S-} zS?0asSQQr|QUC<80!vw%c>O?(A3J}P0QF?M%8Od(;+6mS`bYNf{@2Audq0J0GZ#Xt z(TEU#B?Q(#H%FM+61;NA@q*98WA|~aC+-jBW#YM0_e3k^5I=TxN}6j^L4S}5EtLW2 zpz5k+?Czn1n!BC&rZ{}OMoJ^2Z`nOfq$PWweC2iB$_PD0m+^e&!v97loOGsai6rXwrEAjjW4!jk3P62^MF~yk%j3Sxp9>~#z)tkoVz!Y zPe1Kv%!xLZ@pch<+xS&)LubST^vQdoaACBQ8d;L>fOnW3263#UhV#RQ4H+6bQAzSD zsOSGU4hMooQjc5iHmr#IVf)S+yQ#g9od3g0rEh@T>Q?Ju6-4jN5=5Nfp0%l;tV zV&?4btFy^>PneNdze}ojWvWM>3ZQ)dmb}j1ffg|T+2=o3%TWP;(o|GYH6p86Q~p}= z`rxREwM>K5^5HsN{y4U1#ASBlgd6kCt|}=^DViJO;SaR%!r4?^sq~~RJJEFLBP-ZQ zV}jIVSM9y+-+|2+fA&IPZ%>j`fxp$HeYRIUwMR^CpUP}^>X+dRo1@1&@9U6FR zvD9zIurk%WQV0~Thu-c_W-}6q@S4wP&dWzn+WhWjjVOl-#M{&Ut@S6f<1h(B%a^It)SBrpKj!LT)=w2|C2W*?UFtP@rNVI< zREM`Sx9@zare07+^mE`!ndSMB;Xu0YYZzV`C6@Y09lX+s_MGRrEodw+Uy5uDPCX!DMAG2B<{QRH;hAVc8#QDHuVIu-q_?- zetPa+)9m$1jz- z@h6Aby@3@mCOpLJ3%i24z&8Zz!tX7ku+;WwwYvcysUI|k^KqomFAu#ca*OgYd+JkC z;0Oo%N``StpBuZYwz1iT5BHK)cQuxI?1F?L#b&xeZ>;9>n%?teE55JMOJ84T$w+7FPyC>j$vto>GkkWdhp}sIY>|C-CKh>TK_1m=8Pf3#YjfXb#u2| zCE%_5U&=?oAL+QGUgXK0-_i(m&(jUi^y_pW^*Z&RtZf$Fp&v8yi-HeJMDP62vuP1DjzNr`Xvw z1Z)pyT1@ z{q3q-$z4nc=E+lfPG<3|O|Uys4S2kI4R*WP3OIzoBnEPD_Sw zKPDqe2(DseB|m#MakovZ&OTyh&)C}5EXx0rUEQ}p3pssB2Dufn9%PZ3D{#f z;qUm$$Jkmf7naj(!uQGR{ly@D|2iVq=C#2i!PX!YF4=e%Khe?QrFK{c?%TQQIT?gi zw{-mk%>kVFSdu*wZXbvbPev=#2v>H0QvY2|hV#;3Sa^Lb3Tm%)T9RgxVjzq#n?=Rf z@K&eub9GHkGYHUo%bD)<4RRstJ0oHQ^~moCm>NY+cCt5(sAWv>4Q;(8xP2*z?@rU{ zK0N<*y8!d(B`MH@xfXK@>?BtYx4O4OWV ziv|W>`{^Mw!!ewb0r!W(_grh-qi|z9w*;ku5AMA7FT=@cD1umikaFOCJu=SubTU;K z6+ij$5dJJ7#TaCPefN<#nDxf5XOq~XxGhlU#N%78xbvyyd=I>FY4y{**313cqPZ7V zl}=IV>-W>td1Ug-7N+ZE6SQx9T~}4Mf*#1FfixzBH9N-R+X6Wxcf+^oc%ubMdgEst zXCbiur%Dbl1714whg}P~cA0WBh5kk7D9G=B?=*b_%!E2HtbL7E0nDDgOC8Kblr)B` z-uk(_7Au*f^>XX>X6X1bCl6h+!Dn-y|LWMtpw)Awjl3N1s0-_{&@{)+M|Pibz7C9I zw}d4H3UBr1l2qr7MGoCI?5;G<<(W1Rl0TJM&#fY3xFR&T_WbRYnSb&T+ETNCasEYo z$#*3aG{MDKe%m>?W#sJ8or^ZB{rAG7p`i$8OKF`IL2k#v%}qv(xg(r+?LLw<@q{R# zmF4|}!=eVVfiljtDRrr7CC?GY!=d5V#mWfoP&r)b|C)#(>x;8L7dY`C_5D+v6+*Fb zP~@A^07?-)f=HWlF|wT~R_CHKq^owdpc@ZR-0PG;^61+>Yl!pVQ0Va|l-e|%!}EGv zXwEyaSY<(h3S4|$@G6$VsbjDng|Ne4RD+vGoA=WfCR@KR{~4UWhPKqM%M*Ihf3p=d zJy>Qg78W@=-db=l-c+Ohedcu66u-}r?ZHMe=iNpEyC~{wIUt2qR1U+X>v7uy%>#!- z^*-rg)oPMGE!ktM9^^2$r#m}R2iK|Qfy;i1-);(@pyRLq+Y#aER>AntdmoIx&LxL= zShisMoJo}6R7mo_aKv$oH>lQby>m>taBsH=M_;a+r=>TTB%X;bVp@FNysgI4F-TdL zdR(;KL&}C7@v%i|(x+(3U-Pe6KzBbaD|=rrV3o=p)ysOg=6^L#_YBOHxc%iw$$whFUMVeQ*oCaji@-O39mAD=Wig2T{1%S`@;8II+uZux!<14J%m#~ zS8Q6%@r97=MoGIeIkMjI>Fw4v#>5vPtT8QOSs32UXyc3Z@eI*gX8F$~in|NkO#Y|T z)WE`zA(JkXrU7ftp@ex@4TL92limwuGcF!zgYFDA_gS{o7GKFCm%>$5x%D1oW=veJ zIbrHpAy`EmPDMYO-(!34U}Yv2e=^h0iyO8ch<4^bp(CD``E=H`fvHyuQeuzpTO|H+P$_RzJ&+3;OZ4vptY!$G=M^KAk2wQ zA-tYYk2fMc89&v$+RxGaqGtFm^p!4aK6V;ksf6n(`ZgI$hvQK{t)ywUw$p-pk?&lv zi)%kt1@(iLnl;6WEB!(nr{4#eRbm(s=aTuq596dQ_u&tPpp2vZJ32qns^6pe@)_JQ zl3|0`I#1UOEFES0d*@rHtTHoQ z3B-g$S#@x`_lFU8oZIW@8mW_Q4NG%PaFVRXxQr~AgONk^vni~vtc*FY_&2*|@1HxR z$WNC1UvaR*f4ICz4jc=&dR3?G_eptdG_|iR91s=TiCLdXY-ed)sFM0{o#BgiPXoAw z>*2_Ns@3v2yiaVfq@{)5IRXDC9SY+0dQXK*#|Yj-n6qEi?=5~S5R(<8$rcho`Aku+ zce^zp6D}&cmMa52b3@#*tq+YO4)VJkZSj{~PQycrRu$k4i2S^`rO!HnAL5xwlSnRq z15~JN{c!SR5?eg3F?^>yuY_$qZy!|-Bsx5Sk4Nu52c^9;9n<>V#Tt-N))xj+6f0_J zX%SLNZMOeW5pN2fj$uIG#0U909v|Cvgtr#ve%pZgvu;3ac;yXHYo3>2k_4O`TV}E%vIO#bA1kjdCmo5!OxQbDin&c z!sQY`41xc=&S>SeNCJA6pd@cx=EB(6=g!R=5c54DSeFU>n4iGkyJhicYBc?I z0;LYUD1ZuC!8|Bd$$R+Nn+1b@${5IlmHsxL^LhNa2YP2Z-_c)w*=a!1OG18DFe-G4 zGSBA|vaFU-y#ASsQIh`=0_}Qi5oF5Mm8tv;Oy(%#YO}d8FK$3I6O+|#k=&2&&3yxB z3eT{+yXF2d^B;d)02R7|cu0K)2@JL=AF#;zd<16|e`0I_&uU>r^k{Hi-v)7=pZ8fW}DK$s1L`6m0M z0e`<-$>37_+V-p}LFdS?{IeVUEDdFUt^jpJtEK{FC{R!ji{RhW@6L|~z9eL(@Nwt< zUQ{O<@cn%=>2sb1#F{-tLjRLsG%^%LdG>$*6+jGCfw6oP48d+mM|7xjKQY2r80YqG z1HQU8a|0rp3)dfKF9B~gES*!Iope|oPx<3&&-;LeQwrum^=}E0oLTbGZN3vbdUr== z-abnEJbL%>UbpL`y8BZ_KtArBs8#5!Yv@rlO3A8?XjA(!5} za&k98?nfDSHDyK_w?(*wf25ZkWg7f~b_x7U=Y$T^9DjWGy_EuJIHlko7$b0Zjp8-I zdcWH!>2v3P3fA{|oOkwlORfZB`e7mDA!4K`$_Z3er2(<|VgES@gfox`^k9o1wXnH1 zhqo5yzDmI5{OnQ28^C-=qF}WNen))VuPx-i14wyw{E`d*pS^p4awPl00DfPMZCl-c zn`@!wwo%3rO`JQs`F$>}U?&{3L z82GBIo@FNdteu!T2E(^0Ah?CTcng?TqvZFf?08UzsL0i_L1je zb{z?M-SL$H`YJ6%lC~&oNDnN(#}4&f z0#~8*uA1rNV{gI!ei$#iq&V&0jez9WBxEXSK#Z~D%h)j?P0E`EP<4r`6$0il+cFkn znSF1_n_ssoaJ;ci_4vf2Nw$5Owxc70Aox_ zu`4%61G24>j<)G~909ZmgMnD6+#Rz`M&HK2yEg!_i08KkX! z>+c#47oP91AXyY6mgZy*hZO zLdv!dM>%2+e}Acd(u=RWC4lw~OUQ3pekHW!naTfN>1+d_D325RTVF_)=%c>@K3I{S zoV+w`NHZY!S)|EzB!C!WY=5M@SuDmCxHQ}2>KrtUdqZAh>Euyms`kGMuqa4i-nyC# zwW6x4qwUyhn?@wyQT6=Y@p~~;4=;)rK$ zJ@}rsAnX@}eEC&D%k9F)dfPUQ96Wt(z%nkfE#usv>H70Hk3KlyarGQk^j&Lw-WFp< zxEoh|I#~cUWUOrqAh!P!{s$ocr-`!jghEFWV~ow5IaBPGQXwT|#zXLt2_uRpsgl0o z+OCBb>}PQQgwyOOsy>$Oe7w4#RuIrCyq!QF?gTp22Kn|%U;b*$(5E5n!;?mr4a3Ly z5=-{)1S~xzU>eui9{nP$YMhSe|7w>TzYlrydyFgjuFcGm-!ukl$iV+yAb_MiTM&_$ zKi?yKzBe>IKVPg#NfEES@|r@29^)SZV~iaGq$D7xFQpH2X5;GZu%+OHH`Kl!A-@w=z=VqO0zZPi0B`d#o>$B2j|5HQ z#&MQ@>DZFIe~u~58#1=&`(A-^y}jROv>f3sZ4A^9DR&9^e!7sEnIZ)|9*>Yx)~l>k z0S~`<@x>QkeDTE>U(#Ko0V%fS`a{4pvN0>43#-t$XKv-N!U;jk@IzkE)IYRMJvZPn z?(>)FHwR4pLc7fPYtUDa94j2Y9&Zy4IFMel0nlc|EM>K#FRH$cW1 zW06Qi?AoZX zqq6|)+qPT+-YPi;00;m8KmY&$0ssII004jh000C403ZMW009612mk=!1VHe9(F~PC Q&;S4c07*qoM6N<$f>dyJm;e9( diff --git a/app/images/icon-64.png b/app/images/icon-64.png index 5f99e6a3fde91038e66e32fe65e19c3808ec8ecf..643c02b3108fb5b2c8eb86854b2e2f28866cf320 100644 GIT binary patch literal 4204 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 h90}k^0RPGU7t_wD%PDHLkV1kEDShoNG From 5e84c5055c7a1e31993f7d75905e6c26c3db13e4 Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Thu, 14 Nov 2019 23:31:34 -0400 Subject: [PATCH 10/16] Add all icons to manifest (#7431) Of the 7 different icon sizes we have, only four were referenced in the manifest. All 7 are now listed, which leaves the browser more to choose from when deciding which to use. --- app/manifest.json | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/app/manifest.json b/app/manifest.json index 2ffca545a..dbdfef334 100644 --- a/app/manifest.json +++ b/app/manifest.json @@ -17,7 +17,12 @@ }, "icons": { "16": "images/icon-16.png", - "128": "images/icon-128.png" + "19": "images/icon-19.png", + "32": "images/icon-32.png", + "38": "images/icon-38.png", + "64": "images/icon-64.png", + "128": "images/icon-128.png", + "512": "images/icon-512.png" }, "applications": { "gecko": { @@ -36,8 +41,13 @@ }, "browser_action": { "default_icon": { + "16": "images/icon-16.png", "19": "images/icon-19.png", - "38": "images/icon-38.png" + "32": "images/icon-32.png", + "38": "images/icon-38.png", + "64": "images/icon-64.png", + "128": "images/icon-128.png", + "512": "images/icon-512.png" }, "default_title": "MetaMask", "default_popup": "popup.html" From 00e43d0b47e630f860226ee9723c99d917009573 Mon Sep 17 00:00:00 2001 From: Whymarrh Whitby Date: Fri, 15 Nov 2019 13:47:42 -0330 Subject: [PATCH 11/16] Ensure Etherscan result is valid before reading it (#7426) --- app/scripts/controllers/incoming-transactions.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/scripts/controllers/incoming-transactions.js b/app/scripts/controllers/incoming-transactions.js index 9ce6a4dd9..029bf47aa 100644 --- a/app/scripts/controllers/incoming-transactions.js +++ b/app/scripts/controllers/incoming-transactions.js @@ -208,7 +208,7 @@ class IncomingTransactionsController { } _processTxFetchResponse ({ status, result = [], address, currentNetworkID }) { - if (status !== '0' && result.length > 0) { + if (status === '1' && Array.isArray(result) && result.length > 0) { const remoteTxList = {} const remoteTxs = [] result.forEach((tx) => { From 10114a969790eedc32844fa131a37f9891a75083 Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Fri, 15 Nov 2019 13:23:59 -0400 Subject: [PATCH 12/16] Update 512px icon (#7434) This updated 512px icon morely closely resembles the other sizes, particularly in colour. --- app/images/icon-512.png | Bin 37184 -> 24191 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/app/images/icon-512.png b/app/images/icon-512.png index 8cc71f38aea4bd48dad8f9b56fdcd8d44f0d7312..a506fabe7bbc5da258e203822fb85e4efd137d31 100644 GIT binary patch literal 24191 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 RS^LLDU)w~hNYf$W{{TRNWrY9$ literal 37184 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 V%PjM5k!An@002ovPDHLkV1g>#%HaS2 From 23ab6e2d544d1879882214c97a96defc2128fb57 Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Fri, 15 Nov 2019 14:04:36 -0400 Subject: [PATCH 13/16] Add metricsEvent to contextTypes (#7439) The metricsEvent context type was missing, resulting in an error when it was called. --- .../app/signature-request/signature-request.component.js | 1 + 1 file changed, 1 insertion(+) diff --git a/ui/app/components/app/signature-request/signature-request.component.js b/ui/app/components/app/signature-request/signature-request.component.js index 81befa1c9..b108c02c4 100644 --- a/ui/app/components/app/signature-request/signature-request.component.js +++ b/ui/app/components/app/signature-request/signature-request.component.js @@ -23,6 +23,7 @@ export default class SignatureRequest extends PureComponent { static contextTypes = { t: PropTypes.func, + metricsEvent: PropTypes.func, } componentDidMount () { From 37b5449c132b81b9c37b1399502baaf4d897c0ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Eduardo=20Antu=C3=B1a=20D=C3=ADez?= <20141918+eduadiez@users.noreply.github.com> Date: Fri, 15 Nov 2019 19:23:46 +0100 Subject: [PATCH 14/16] Added webRequest.RequestFilter to filter main_frame .eth requests (#7419) Added webRequest.RequestFilter to filter main_frame .eth requests --- app/scripts/lib/ens-ipfs/setup.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/scripts/lib/ens-ipfs/setup.js b/app/scripts/lib/ens-ipfs/setup.js index 6b75adfa4..a3711c5f9 100644 --- a/app/scripts/lib/ens-ipfs/setup.js +++ b/app/scripts/lib/ens-ipfs/setup.js @@ -10,7 +10,7 @@ function setupEnsIpfsResolver ({ provider }) { // install listener const urlPatterns = supportedTopLevelDomains.map(tld => `*://*.${tld}/*`) - extension.webRequest.onErrorOccurred.addListener(webRequestDidFail, { urls: urlPatterns }) + extension.webRequest.onErrorOccurred.addListener(webRequestDidFail, { urls: urlPatterns, types: ['main_frame']}) // return api object return { From c3966aecdbcbf7ad13ff8bdf182c3c14be3c5f95 Mon Sep 17 00:00:00 2001 From: MetaMask Bot Date: Fri, 15 Nov 2019 19:39:23 +0000 Subject: [PATCH 15/16] Version v7.5.3 --- CHANGELOG.md | 2 ++ app/manifest.json | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 633374a91..8145bccac 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,8 @@ ## Current Develop Branch +## 7.5.3 Fri Nov 15 2019 + ## 7.5.2 Thu Nov 14 2019 - [#7414](https://github.com/MetaMask/metamask-extension/pull/7414): Ensure SignatureRequestOriginal 'beforeunload' handler is bound diff --git a/app/manifest.json b/app/manifest.json index 21bc38bea..f3fc9ca36 100644 --- a/app/manifest.json +++ b/app/manifest.json @@ -1,7 +1,7 @@ { "name": "__MSG_appName__", "short_name": "__MSG_appName__", - "version": "7.5.2", + "version": "7.5.3", "manifest_version": 2, "author": "https://metamask.io", "description": "__MSG_appDescription__", From 83e34d90338b5043d094460cbf64e305f96b2fc6 Mon Sep 17 00:00:00 2001 From: Whymarrh Whitby Date: Fri, 15 Nov 2019 16:19:55 -0330 Subject: [PATCH 16/16] Update changelog for v7.5.3 --- CHANGELOG.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8145bccac..22a22f75a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,18 @@ ## Current Develop Branch ## 7.5.3 Fri Nov 15 2019 +- [#7412](https://github.com/MetaMask/metamask-extension/pull/7412): lock eth-contract-metadata (#7412) +- [#7416](https://github.com/MetaMask/metamask-extension/pull/7416): Add eslint import plugin to help detect unresolved paths +- [#7414](https://github.com/MetaMask/metamask-extension/pull/7414): Ensure SignatureRequestOriginal 'beforeunload' handler is bound (#7414) +- [#7430](https://github.com/MetaMask/metamask-extension/pull/7430): Update badge colour +- [#7408](https://github.com/MetaMask/metamask-extension/pull/7408): Utilize the full size of icon space (#7408) +- [#7431](https://github.com/MetaMask/metamask-extension/pull/7431): Add all icons to manifest (#7431) +- [#7426](https://github.com/MetaMask/metamask-extension/pull/7426): Ensure Etherscan result is valid before reading it (#7426) +- [#7434](https://github.com/MetaMask/metamask-extension/pull/7434): Update 512px icon (#7434) +- [#7410](https://github.com/MetaMask/metamask-extension/pull/7410): Fix sourcemaps for Sentry +- [#7420](https://github.com/MetaMask/metamask-extension/pull/7420): Adds and end to end test for typed signature requests +- [#7439](https://github.com/MetaMask/metamask-extension/pull/7439): Add metricsEvent to contextTypes (#7439) +- [#7419](https://github.com/MetaMask/metamask-extension/pull/7419): Added webRequest.RequestFilter to filter main_frame .eth requests (#7419) ## 7.5.2 Thu Nov 14 2019 - [#7414](https://github.com/MetaMask/metamask-extension/pull/7414): Ensure SignatureRequestOriginal 'beforeunload' handler is bound