diff --git a/artwork/README.md b/artwork/README.md
deleted file mode 100644
index dab59a98..00000000
--- a/artwork/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-The artwork can be found here:
-
-https://github.com/tobspr/shapez.io-artwork
diff --git a/electron/package.json b/electron/package.json
index a67249a0..c8d3a124 100644
--- a/electron/package.json
+++ b/electron/package.json
@@ -1,16 +1,16 @@
-{
- "name": "electron",
- "version": "1.0.0",
- "main": "index.js",
- "license": "MIT",
- "private": true,
- "scripts": {
- "startDev": "electron --disable-direct-composition --in-process-gpu . --dev --local",
- "startDevGpu": "electron --enable-gpu-rasterization --enable-accelerated-2d-canvas --num-raster-threads=8 --enable-zero-copy . --dev --local",
- "start": "electron --disable-direct-composition --in-process-gpu ."
- },
- "devDependencies": {
- "electron": "^6.1.12"
- },
- "dependencies": {}
-}
+{
+ "name": "electron",
+ "version": "1.0.0",
+ "main": "index.js",
+ "license": "MIT",
+ "private": true,
+ "scripts": {
+ "startDev": "electron --disable-direct-composition --in-process-gpu . --dev --local",
+ "startDevGpu": "electron --enable-gpu-rasterization --enable-accelerated-2d-canvas --num-raster-threads=8 --enable-zero-copy . --dev --local",
+ "start": "electron --disable-direct-composition --in-process-gpu ."
+ },
+ "devDependencies": {
+ "electron": "10.1.3"
+ },
+ "dependencies": {}
+}
diff --git a/electron/yarn.lock b/electron/yarn.lock
index 01214c92..fa92ec46 100644
--- a/electron/yarn.lock
+++ b/electron/yarn.lock
@@ -1,961 +1,572 @@
-# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
-# yarn lockfile v1
-
-
-"@types/node@^10.12.18":
- version "10.17.24"
- resolved "https://registry.yarnpkg.com/@types/node/-/node-10.17.24.tgz#c57511e3a19c4b5e9692bb2995c40a3a52167944"
- integrity sha512-5SCfvCxV74kzR3uWgTYiGxrd69TbT1I6+cMx1A5kEly/IVveJBimtAMlXiEyVFn5DvUFewQWxOOiJhlxeQwxgA==
-
-ajv@^6.5.5:
- version "6.12.2"
- resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.2.tgz#c629c5eced17baf314437918d2da88c99d5958cd"
- integrity sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==
- dependencies:
- fast-deep-equal "^3.1.1"
- fast-json-stable-stringify "^2.0.0"
- json-schema-traverse "^0.4.1"
- uri-js "^4.2.2"
-
-ansi-regex@^2.0.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
- integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8=
-
-array-find-index@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1"
- integrity sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=
-
-asn1@~0.2.3:
- version "0.2.4"
- resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136"
- integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==
- dependencies:
- safer-buffer "~2.1.0"
-
-assert-plus@1.0.0, assert-plus@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525"
- integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=
-
-asynckit@^0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
- integrity sha1-x57Zf380y48robyXkLzDZkdLS3k=
-
-aws-sign2@~0.7.0:
- version "0.7.0"
- resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8"
- integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=
-
-aws4@^1.8.0:
- version "1.9.1"
- resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.9.1.tgz#7e33d8f7d449b3f673cd72deb9abdc552dbe528e"
- integrity sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==
-
-bcrypt-pbkdf@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e"
- integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=
- dependencies:
- tweetnacl "^0.14.3"
-
-buffer-from@^1.0.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef"
- integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==
-
-camelcase-keys@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7"
- integrity sha1-MIvur/3ygRkFHvodkyITyRuPkuc=
- dependencies:
- camelcase "^2.0.0"
- map-obj "^1.0.0"
-
-camelcase@^2.0.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f"
- integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=
-
-caseless@~0.12.0:
- version "0.12.0"
- resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
- integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=
-
-code-point-at@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77"
- integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=
-
-combined-stream@^1.0.6, combined-stream@~1.0.6:
- version "1.0.8"
- resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f"
- integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==
- dependencies:
- delayed-stream "~1.0.0"
-
-concat-stream@1.6.2:
- version "1.6.2"
- resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34"
- integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==
- dependencies:
- buffer-from "^1.0.0"
- inherits "^2.0.3"
- readable-stream "^2.2.2"
- typedarray "^0.0.6"
-
-core-util-is@1.0.2, core-util-is@~1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
- integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
-
-currently-unhandled@^0.4.1:
- version "0.4.1"
- resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea"
- integrity sha1-mI3zP+qxke95mmE2nddsF635V+o=
- dependencies:
- array-find-index "^1.0.1"
-
-dashdash@^1.12.0:
- version "1.14.1"
- resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0"
- integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=
- dependencies:
- assert-plus "^1.0.0"
-
-debug@2.6.9, debug@^2.1.3, debug@^2.2.0:
- version "2.6.9"
- resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
- integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
- dependencies:
- ms "2.0.0"
-
-debug@^3.0.0:
- version "3.2.6"
- resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b"
- integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==
- dependencies:
- ms "^2.1.1"
-
-decamelize@^1.1.2:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
- integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=
-
-deep-extend@^0.6.0:
- version "0.6.0"
- resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac"
- integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==
-
-delayed-stream@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
- integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk=
-
-ecc-jsbn@~0.1.1:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9"
- integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=
- dependencies:
- jsbn "~0.1.0"
- safer-buffer "^2.1.0"
-
-electron-download@^4.1.0:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/electron-download/-/electron-download-4.1.1.tgz#02e69556705cc456e520f9e035556ed5a015ebe8"
- integrity sha512-FjEWG9Jb/ppK/2zToP+U5dds114fM1ZOJqMAR4aXXL5CvyPE9fiqBK/9YcwC9poIFQTEJk/EM/zyRwziziRZrg==
- dependencies:
- debug "^3.0.0"
- env-paths "^1.0.0"
- fs-extra "^4.0.1"
- minimist "^1.2.0"
- nugget "^2.0.1"
- path-exists "^3.0.0"
- rc "^1.2.1"
- semver "^5.4.1"
- sumchecker "^2.0.2"
-
-electron@^6.1.12:
- version "6.1.12"
- resolved "https://registry.yarnpkg.com/electron/-/electron-6.1.12.tgz#a7aee6dfa75b57f32b3645ef8e14dcef6d5f31a9"
- integrity sha512-RUPM8xJfTcm53V9EKMBhvpLu1+CQkmuvWDmVCypR5XbUG1OOrOLiKl0CqUZ9+tEDuOmC+DmzmJP2MZXScBU5IA==
- dependencies:
- "@types/node" "^10.12.18"
- electron-download "^4.1.0"
- extract-zip "^1.0.3"
-
-env-paths@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-1.0.0.tgz#4168133b42bb05c38a35b1ae4397c8298ab369e0"
- integrity sha1-QWgTO0K7BcOKNbGuQ5fIKYqzaeA=
-
-error-ex@^1.2.0:
- version "1.3.2"
- resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
- integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==
- dependencies:
- is-arrayish "^0.2.1"
-
-extend@~3.0.2:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa"
- integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==
-
-extract-zip@^1.0.3:
- version "1.6.7"
- resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.6.7.tgz#a840b4b8af6403264c8db57f4f1a74333ef81fe9"
- integrity sha1-qEC0uK9kAyZMjbV/Txp0Mz74H+k=
- dependencies:
- concat-stream "1.6.2"
- debug "2.6.9"
- mkdirp "0.5.1"
- yauzl "2.4.1"
-
-extsprintf@1.3.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05"
- integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=
-
-extsprintf@^1.2.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f"
- integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8=
-
-fast-deep-equal@^3.1.1:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz#545145077c501491e33b15ec408c294376e94ae4"
- integrity sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==
-
-fast-json-stable-stringify@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
- integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
-
-fd-slicer@~1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.0.1.tgz#8b5bcbd9ec327c5041bf9ab023fd6750f1177e65"
- integrity sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=
- dependencies:
- pend "~1.2.0"
-
-find-up@^1.0.0:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f"
- integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=
- dependencies:
- path-exists "^2.0.0"
- pinkie-promise "^2.0.0"
-
-forever-agent@~0.6.1:
- version "0.6.1"
- resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"
- integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=
-
-form-data@~2.3.2:
- version "2.3.3"
- resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6"
- integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==
- dependencies:
- asynckit "^0.4.0"
- combined-stream "^1.0.6"
- mime-types "^2.1.12"
-
-fs-extra@^4.0.1:
- version "4.0.3"
- resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.3.tgz#0d852122e5bc5beb453fb028e9c0c9bf36340c94"
- integrity sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==
- dependencies:
- graceful-fs "^4.1.2"
- jsonfile "^4.0.0"
- universalify "^0.1.0"
-
-get-stdin@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe"
- integrity sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=
-
-getpass@^0.1.1:
- version "0.1.7"
- resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa"
- integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=
- dependencies:
- assert-plus "^1.0.0"
-
-graceful-fs@^4.1.2:
- version "4.2.4"
- resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb"
- integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==
-
-graceful-fs@^4.1.6:
- version "4.2.2"
- resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.2.tgz#6f0952605d0140c1cfdb138ed005775b92d67b02"
- integrity sha512-IItsdsea19BoLC7ELy13q1iJFNmd7ofZH5+X/pJr90/nRoPEX0DJo1dHDbgtYWOhJhcCgMDTOw84RZ72q6lB+Q==
-
-har-schema@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92"
- integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=
-
-har-validator@~5.1.3:
- version "5.1.3"
- resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080"
- integrity sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==
- dependencies:
- ajv "^6.5.5"
- har-schema "^2.0.0"
-
-hosted-git-info@^2.1.4:
- version "2.8.8"
- resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.8.tgz#7539bd4bc1e0e0a895815a2e0262420b12858488"
- integrity sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==
-
-http-signature@~1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1"
- integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=
- dependencies:
- assert-plus "^1.0.0"
- jsprim "^1.2.2"
- sshpk "^1.7.0"
-
-indent-string@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80"
- integrity sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=
- dependencies:
- repeating "^2.0.0"
-
-inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
- integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
-
-ini@~1.3.0:
- version "1.3.5"
- resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927"
- integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==
-
-is-arrayish@^0.2.1:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
- integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=
-
-is-finite@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.1.0.tgz#904135c77fb42c0641d6aa1bcdbc4daa8da082f3"
- integrity sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==
-
-is-fullwidth-code-point@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb"
- integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs=
- dependencies:
- number-is-nan "^1.0.0"
-
-is-typedarray@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
- integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=
-
-is-utf8@^0.2.0:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72"
- integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=
-
-isarray@0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf"
- integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=
-
-isarray@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
- integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
-
-isstream@~0.1.2:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
- integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=
-
-jsbn@~0.1.0:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"
- integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM=
-
-json-schema-traverse@^0.4.1:
- version "0.4.1"
- resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
- integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==
-
-json-schema@0.2.3:
- version "0.2.3"
- resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13"
- integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=
-
-json-stringify-safe@~5.0.1:
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb"
- integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=
-
-jsonfile@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb"
- integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=
- optionalDependencies:
- graceful-fs "^4.1.6"
-
-jsprim@^1.2.2:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2"
- integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=
- dependencies:
- assert-plus "1.0.0"
- extsprintf "1.3.0"
- json-schema "0.2.3"
- verror "1.10.0"
-
-load-json-file@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0"
- integrity sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=
- dependencies:
- graceful-fs "^4.1.2"
- parse-json "^2.2.0"
- pify "^2.0.0"
- pinkie-promise "^2.0.0"
- strip-bom "^2.0.0"
-
-loud-rejection@^1.0.0:
- version "1.6.0"
- resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f"
- integrity sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=
- dependencies:
- currently-unhandled "^0.4.1"
- signal-exit "^3.0.0"
-
-map-obj@^1.0.0, map-obj@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d"
- integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=
-
-meow@^3.1.0:
- version "3.7.0"
- resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb"
- integrity sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=
- dependencies:
- camelcase-keys "^2.0.0"
- decamelize "^1.1.2"
- loud-rejection "^1.0.0"
- map-obj "^1.0.1"
- minimist "^1.1.3"
- normalize-package-data "^2.3.4"
- object-assign "^4.0.1"
- read-pkg-up "^1.0.1"
- redent "^1.0.0"
- trim-newlines "^1.0.0"
-
-mime-db@1.44.0:
- version "1.44.0"
- resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.44.0.tgz#fa11c5eb0aca1334b4233cb4d52f10c5a6272f92"
- integrity sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==
-
-mime-types@^2.1.12, mime-types@~2.1.19:
- version "2.1.27"
- resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.27.tgz#47949f98e279ea53119f5722e0f34e529bec009f"
- integrity sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==
- dependencies:
- mime-db "1.44.0"
-
-minimist@0.0.8:
- version "0.0.8"
- resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
- integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=
-
-minimist@^1.1.0, minimist@^1.1.3, minimist@^1.2.0:
- version "1.2.5"
- resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602"
- integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==
-
-mkdirp@0.5.1:
- version "0.5.1"
- resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
- integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=
- dependencies:
- minimist "0.0.8"
-
-ms@2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
- integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
-
-ms@^2.1.1:
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
- integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
-
-normalize-package-data@^2.3.2, normalize-package-data@^2.3.4:
- version "2.5.0"
- resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8"
- integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==
- dependencies:
- hosted-git-info "^2.1.4"
- resolve "^1.10.0"
- semver "2 || 3 || 4 || 5"
- validate-npm-package-license "^3.0.1"
-
-nugget@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/nugget/-/nugget-2.0.1.tgz#201095a487e1ad36081b3432fa3cada4f8d071b0"
- integrity sha1-IBCVpIfhrTYIGzQy+jytpPjQcbA=
- dependencies:
- debug "^2.1.3"
- minimist "^1.1.0"
- pretty-bytes "^1.0.2"
- progress-stream "^1.1.0"
- request "^2.45.0"
- single-line-log "^1.1.2"
- throttleit "0.0.2"
-
-number-is-nan@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
- integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=
-
-oauth-sign@~0.9.0:
- version "0.9.0"
- resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455"
- integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==
-
-object-assign@^4.0.1:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
- integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
-
-object-keys@~0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-0.4.0.tgz#28a6aae7428dd2c3a92f3d95f21335dd204e0336"
- integrity sha1-KKaq50KN0sOpLz2V8hM13SBOAzY=
-
-parse-json@^2.2.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9"
- integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=
- dependencies:
- error-ex "^1.2.0"
-
-path-exists@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b"
- integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=
- dependencies:
- pinkie-promise "^2.0.0"
-
-path-exists@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515"
- integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=
-
-path-parse@^1.0.6:
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c"
- integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==
-
-path-type@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441"
- integrity sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=
- dependencies:
- graceful-fs "^4.1.2"
- pify "^2.0.0"
- pinkie-promise "^2.0.0"
-
-pend@~1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50"
- integrity sha1-elfrVQpng/kRUzH89GY9XI4AelA=
-
-performance-now@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
- integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=
-
-pify@^2.0.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
- integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw=
-
-pinkie-promise@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa"
- integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o=
- dependencies:
- pinkie "^2.0.0"
-
-pinkie@^2.0.0:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870"
- integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA=
-
-pretty-bytes@^1.0.2:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-1.0.4.tgz#0a22e8210609ad35542f8c8d5d2159aff0751c84"
- integrity sha1-CiLoIQYJrTVUL4yNXSFZr/B1HIQ=
- dependencies:
- get-stdin "^4.0.1"
- meow "^3.1.0"
-
-process-nextick-args@~2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
- integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
-
-progress-stream@^1.1.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/progress-stream/-/progress-stream-1.2.0.tgz#2cd3cfea33ba3a89c9c121ec3347abe9ab125f77"
- integrity sha1-LNPP6jO6OonJwSHsM0er6asSX3c=
- dependencies:
- speedometer "~0.1.2"
- through2 "~0.2.3"
-
-psl@^1.1.28:
- version "1.8.0"
- resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24"
- integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==
-
-punycode@^2.1.0, punycode@^2.1.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec"
- integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
-
-qs@~6.5.2:
- version "6.5.2"
- resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36"
- integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==
-
-rc@^1.2.1:
- version "1.2.8"
- resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed"
- integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==
- dependencies:
- deep-extend "^0.6.0"
- ini "~1.3.0"
- minimist "^1.2.0"
- strip-json-comments "~2.0.1"
-
-read-pkg-up@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02"
- integrity sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=
- dependencies:
- find-up "^1.0.0"
- read-pkg "^1.0.0"
-
-read-pkg@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28"
- integrity sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=
- dependencies:
- load-json-file "^1.0.0"
- normalize-package-data "^2.3.2"
- path-type "^1.0.0"
-
-readable-stream@^2.2.2:
- version "2.3.6"
- resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf"
- integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==
- dependencies:
- core-util-is "~1.0.0"
- inherits "~2.0.3"
- isarray "~1.0.0"
- process-nextick-args "~2.0.0"
- safe-buffer "~5.1.1"
- string_decoder "~1.1.1"
- util-deprecate "~1.0.1"
-
-readable-stream@~1.1.9:
- version "1.1.14"
- resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9"
- integrity sha1-fPTFTvZI44EwhMY23SB54WbAgdk=
- dependencies:
- core-util-is "~1.0.0"
- inherits "~2.0.1"
- isarray "0.0.1"
- string_decoder "~0.10.x"
-
-redent@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde"
- integrity sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=
- dependencies:
- indent-string "^2.1.0"
- strip-indent "^1.0.1"
-
-repeating@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda"
- integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=
- dependencies:
- is-finite "^1.0.0"
-
-request@^2.45.0:
- version "2.88.2"
- resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3"
- integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==
- dependencies:
- aws-sign2 "~0.7.0"
- aws4 "^1.8.0"
- caseless "~0.12.0"
- combined-stream "~1.0.6"
- extend "~3.0.2"
- forever-agent "~0.6.1"
- form-data "~2.3.2"
- har-validator "~5.1.3"
- http-signature "~1.2.0"
- is-typedarray "~1.0.0"
- isstream "~0.1.2"
- json-stringify-safe "~5.0.1"
- mime-types "~2.1.19"
- oauth-sign "~0.9.0"
- performance-now "^2.1.0"
- qs "~6.5.2"
- safe-buffer "^5.1.2"
- tough-cookie "~2.5.0"
- tunnel-agent "^0.6.0"
- uuid "^3.3.2"
-
-resolve@^1.10.0:
- version "1.17.0"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.17.0.tgz#b25941b54968231cc2d1bb76a79cb7f2c0bf8444"
- integrity sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==
- dependencies:
- path-parse "^1.0.6"
-
-safe-buffer@^5.0.1, safe-buffer@^5.1.2:
- version "5.2.1"
- resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
- integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
-
-safe-buffer@~5.1.0, safe-buffer@~5.1.1:
- version "5.1.2"
- resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
- integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
-
-safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0:
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
- integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
-
-"semver@2 || 3 || 4 || 5", semver@^5.4.1:
- version "5.7.1"
- resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7"
- integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==
-
-signal-exit@^3.0.0:
- version "3.0.3"
- resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c"
- integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==
-
-single-line-log@^1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/single-line-log/-/single-line-log-1.1.2.tgz#c2f83f273a3e1a16edb0995661da0ed5ef033364"
- integrity sha1-wvg/Jzo+GhbtsJlWYdoO1e8DM2Q=
- dependencies:
- string-width "^1.0.1"
-
-spdx-correct@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.0.tgz#fb83e504445268f154b074e218c87c003cd31df4"
- integrity sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==
- dependencies:
- spdx-expression-parse "^3.0.0"
- spdx-license-ids "^3.0.0"
-
-spdx-exceptions@^2.1.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d"
- integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==
-
-spdx-expression-parse@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679"
- integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==
- dependencies:
- spdx-exceptions "^2.1.0"
- spdx-license-ids "^3.0.0"
-
-spdx-license-ids@^3.0.0:
- version "3.0.5"
- resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz#3694b5804567a458d3c8045842a6358632f62654"
- integrity sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==
-
-speedometer@~0.1.2:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/speedometer/-/speedometer-0.1.4.tgz#9876dbd2a169d3115402d48e6ea6329c8816a50d"
- integrity sha1-mHbb0qFp0xFUAtSObqYynIgWpQ0=
-
-sshpk@^1.7.0:
- version "1.16.1"
- resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877"
- integrity sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==
- dependencies:
- asn1 "~0.2.3"
- assert-plus "^1.0.0"
- bcrypt-pbkdf "^1.0.0"
- dashdash "^1.12.0"
- ecc-jsbn "~0.1.1"
- getpass "^0.1.1"
- jsbn "~0.1.0"
- safer-buffer "^2.0.2"
- tweetnacl "~0.14.0"
-
-string-width@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3"
- integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=
- dependencies:
- code-point-at "^1.0.0"
- is-fullwidth-code-point "^1.0.0"
- strip-ansi "^3.0.0"
-
-string_decoder@~0.10.x:
- version "0.10.31"
- resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94"
- integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=
-
-string_decoder@~1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
- integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==
- dependencies:
- safe-buffer "~5.1.0"
-
-strip-ansi@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
- integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=
- dependencies:
- ansi-regex "^2.0.0"
-
-strip-bom@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e"
- integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=
- dependencies:
- is-utf8 "^0.2.0"
-
-strip-indent@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2"
- integrity sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=
- dependencies:
- get-stdin "^4.0.1"
-
-strip-json-comments@~2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
- integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo=
-
-sumchecker@^2.0.2:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/sumchecker/-/sumchecker-2.0.2.tgz#0f42c10e5d05da5d42eea3e56c3399a37d6c5b3e"
- integrity sha1-D0LBDl0F2l1C7qPlbDOZo31sWz4=
- dependencies:
- debug "^2.2.0"
-
-throttleit@0.0.2:
- version "0.0.2"
- resolved "https://registry.yarnpkg.com/throttleit/-/throttleit-0.0.2.tgz#cfedf88e60c00dd9697b61fdd2a8343a9b680eaf"
- integrity sha1-z+34jmDADdlpe2H90qg0OptoDq8=
-
-through2@~0.2.3:
- version "0.2.3"
- resolved "https://registry.yarnpkg.com/through2/-/through2-0.2.3.tgz#eb3284da4ea311b6cc8ace3653748a52abf25a3f"
- integrity sha1-6zKE2k6jEbbMis42U3SKUqvyWj8=
- dependencies:
- readable-stream "~1.1.9"
- xtend "~2.1.1"
-
-tough-cookie@~2.5.0:
- version "2.5.0"
- resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2"
- integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==
- dependencies:
- psl "^1.1.28"
- punycode "^2.1.1"
-
-trim-newlines@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613"
- integrity sha1-WIeWa7WCpFA6QetST301ARgVphM=
-
-tunnel-agent@^0.6.0:
- version "0.6.0"
- resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd"
- integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=
- dependencies:
- safe-buffer "^5.0.1"
-
-tweetnacl@^0.14.3, tweetnacl@~0.14.0:
- version "0.14.5"
- resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64"
- integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=
-
-typedarray@^0.0.6:
- version "0.0.6"
- resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
- integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
-
-universalify@^0.1.0:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66"
- integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==
-
-uri-js@^4.2.2:
- version "4.2.2"
- resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0"
- integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==
- dependencies:
- punycode "^2.1.0"
-
-util-deprecate@~1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
- integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
-
-uuid@^3.3.2:
- version "3.4.0"
- resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee"
- integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==
-
-validate-npm-package-license@^3.0.1:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a"
- integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==
- dependencies:
- spdx-correct "^3.0.0"
- spdx-expression-parse "^3.0.0"
-
-verror@1.10.0:
- version "1.10.0"
- resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400"
- integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=
- dependencies:
- assert-plus "^1.0.0"
- core-util-is "1.0.2"
- extsprintf "^1.2.0"
-
-xtend@~2.1.1:
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/xtend/-/xtend-2.1.2.tgz#6efecc2a4dad8e6962c4901b337ce7ba87b5d28b"
- integrity sha1-bv7MKk2tjmlixJAbM3znuoe10os=
- dependencies:
- object-keys "~0.4.0"
-
-yauzl@2.4.1:
- version "2.4.1"
- resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.4.1.tgz#9528f442dab1b2284e58b4379bb194e22e0c4005"
- integrity sha1-lSj0QtqxsihOWLQ3m7GU4i4MQAU=
- dependencies:
- fd-slicer "~1.0.1"
+# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
+# yarn lockfile v1
+
+
+"@electron/get@^1.0.1":
+ version "1.12.2"
+ resolved "https://registry.yarnpkg.com/@electron/get/-/get-1.12.2.tgz#6442066afb99be08cefb9a281e4b4692b33764f3"
+ integrity sha512-vAuHUbfvBQpYTJ5wB7uVIDq5c/Ry0fiTBMs7lnEYAo/qXXppIVcWdfBr57u6eRnKdVso7KSiH6p/LbQAG6Izrg==
+ dependencies:
+ debug "^4.1.1"
+ env-paths "^2.2.0"
+ fs-extra "^8.1.0"
+ got "^9.6.0"
+ progress "^2.0.3"
+ sanitize-filename "^1.6.2"
+ sumchecker "^3.0.1"
+ optionalDependencies:
+ global-agent "^2.0.2"
+ global-tunnel-ng "^2.7.1"
+
+"@sindresorhus/is@^0.14.0":
+ version "0.14.0"
+ resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea"
+ integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==
+
+"@szmarczak/http-timer@^1.1.2":
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz#b1665e2c461a2cd92f4c1bbf50d5454de0d4b421"
+ integrity sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==
+ dependencies:
+ defer-to-connect "^1.0.1"
+
+"@types/node@^12.0.12":
+ version "12.12.62"
+ resolved "https://registry.yarnpkg.com/@types/node/-/node-12.12.62.tgz#733923d73669188d35950253dd18a21570085d2b"
+ integrity sha512-qAfo81CsD7yQIM9mVyh6B/U47li5g7cfpVQEDMfQeF8pSZVwzbhwU3crc0qG4DmpsebpJPR49AKOExQyJ05Cpg==
+
+boolean@^3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/boolean/-/boolean-3.0.1.tgz#35ecf2b4a2ee191b0b44986f14eb5f052a5cbb4f"
+ integrity sha512-HRZPIjPcbwAVQvOTxR4YE3o8Xs98NqbbL1iEZDCz7CL8ql0Lt5iOyJFxfnAB0oFs8Oh02F/lLlg30Mexv46LjA==
+
+buffer-from@^1.0.0:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef"
+ integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==
+
+cacheable-request@^6.0.0:
+ version "6.1.0"
+ resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-6.1.0.tgz#20ffb8bd162ba4be11e9567d823db651052ca912"
+ integrity sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==
+ dependencies:
+ clone-response "^1.0.2"
+ get-stream "^5.1.0"
+ http-cache-semantics "^4.0.0"
+ keyv "^3.0.0"
+ lowercase-keys "^2.0.0"
+ normalize-url "^4.1.0"
+ responselike "^1.0.2"
+
+clone-response@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b"
+ integrity sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=
+ dependencies:
+ mimic-response "^1.0.0"
+
+concat-stream@1.6.2:
+ version "1.6.2"
+ resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34"
+ integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==
+ dependencies:
+ buffer-from "^1.0.0"
+ inherits "^2.0.3"
+ readable-stream "^2.2.2"
+ typedarray "^0.0.6"
+
+config-chain@^1.1.11:
+ version "1.1.12"
+ resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.12.tgz#0fde8d091200eb5e808caf25fe618c02f48e4efa"
+ integrity sha512-a1eOIcu8+7lUInge4Rpf/n4Krkf3Dd9lqhljRzII1/Zno/kRtUWnznPO3jOKBmTEktkt3fkxisUcivoj0ebzoA==
+ dependencies:
+ ini "^1.3.4"
+ proto-list "~1.2.1"
+
+core-js@^3.6.5:
+ version "3.6.5"
+ resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.6.5.tgz#7395dc273af37fb2e50e9bd3d9fe841285231d1a"
+ integrity sha512-vZVEEwZoIsI+vPEuoF9Iqf5H7/M3eeQqWlQnYa8FSKKePuYTf5MWnxb5SDAzCa60b3JBRS5g9b+Dq7b1y/RCrA==
+
+core-util-is@~1.0.0:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
+ integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
+
+debug@2.6.9:
+ version "2.6.9"
+ resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
+ integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
+ dependencies:
+ ms "2.0.0"
+
+debug@^4.1.0, debug@^4.1.1:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/debug/-/debug-4.2.0.tgz#7f150f93920e94c58f5574c2fd01a3110effe7f1"
+ integrity sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==
+ dependencies:
+ ms "2.1.2"
+
+decompress-response@^3.3.0:
+ version "3.3.0"
+ resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3"
+ integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=
+ dependencies:
+ mimic-response "^1.0.0"
+
+defer-to-connect@^1.0.1:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz#331ae050c08dcf789f8c83a7b81f0ed94f4ac591"
+ integrity sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==
+
+define-properties@^1.1.3:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1"
+ integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==
+ dependencies:
+ object-keys "^1.0.12"
+
+detect-node@^2.0.4:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c"
+ integrity sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==
+
+duplexer3@^0.1.4:
+ version "0.1.4"
+ resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2"
+ integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=
+
+electron@10.1.3:
+ version "10.1.3"
+ resolved "https://registry.yarnpkg.com/electron/-/electron-10.1.3.tgz#7e276e373bf30078bd4cb1184850a91268dc0e6c"
+ integrity sha512-CR8LrlG47MdAp317SQ3vGYa2o2cIMdMSMPYH46OVitFLk35dwE9fn3VqvhUIXhCHYcNWIAPzMhkVHpkoFdKWuw==
+ dependencies:
+ "@electron/get" "^1.0.1"
+ "@types/node" "^12.0.12"
+ extract-zip "^1.0.3"
+
+encodeurl@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59"
+ integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=
+
+end-of-stream@^1.1.0:
+ version "1.4.4"
+ resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0"
+ integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==
+ dependencies:
+ once "^1.4.0"
+
+env-paths@^2.2.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.0.tgz#cdca557dc009152917d6166e2febe1f039685e43"
+ integrity sha512-6u0VYSCo/OW6IoD5WCLLy9JUGARbamfSavcNXry/eu8aHVFei6CD3Sw+VGX5alea1i9pgPHW0mbu6Xj0uBh7gA==
+
+es6-error@^4.1.1:
+ version "4.1.1"
+ resolved "https://registry.yarnpkg.com/es6-error/-/es6-error-4.1.1.tgz#9e3af407459deed47e9a91f9b885a84eb05c561d"
+ integrity sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==
+
+escape-string-regexp@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34"
+ integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==
+
+extract-zip@^1.0.3:
+ version "1.6.7"
+ resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.6.7.tgz#a840b4b8af6403264c8db57f4f1a74333ef81fe9"
+ integrity sha1-qEC0uK9kAyZMjbV/Txp0Mz74H+k=
+ dependencies:
+ concat-stream "1.6.2"
+ debug "2.6.9"
+ mkdirp "0.5.1"
+ yauzl "2.4.1"
+
+fd-slicer@~1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.0.1.tgz#8b5bcbd9ec327c5041bf9ab023fd6750f1177e65"
+ integrity sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=
+ dependencies:
+ pend "~1.2.0"
+
+fs-extra@^8.1.0:
+ version "8.1.0"
+ resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0"
+ integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==
+ dependencies:
+ graceful-fs "^4.2.0"
+ jsonfile "^4.0.0"
+ universalify "^0.1.0"
+
+get-stream@^4.1.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5"
+ integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==
+ dependencies:
+ pump "^3.0.0"
+
+get-stream@^5.1.0:
+ version "5.2.0"
+ resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3"
+ integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==
+ dependencies:
+ pump "^3.0.0"
+
+global-agent@^2.0.2:
+ version "2.1.12"
+ resolved "https://registry.yarnpkg.com/global-agent/-/global-agent-2.1.12.tgz#e4ae3812b731a9e81cbf825f9377ef450a8e4195"
+ integrity sha512-caAljRMS/qcDo69X9BfkgrihGUgGx44Fb4QQToNQjsiWh+YlQ66uqYVAdA8Olqit+5Ng0nkz09je3ZzANMZcjg==
+ dependencies:
+ boolean "^3.0.1"
+ core-js "^3.6.5"
+ es6-error "^4.1.1"
+ matcher "^3.0.0"
+ roarr "^2.15.3"
+ semver "^7.3.2"
+ serialize-error "^7.0.1"
+
+global-tunnel-ng@^2.7.1:
+ version "2.7.1"
+ resolved "https://registry.yarnpkg.com/global-tunnel-ng/-/global-tunnel-ng-2.7.1.tgz#d03b5102dfde3a69914f5ee7d86761ca35d57d8f"
+ integrity sha512-4s+DyciWBV0eK148wqXxcmVAbFVPqtc3sEtUE/GTQfuU80rySLcMhUmHKSHI7/LDj8q0gDYI1lIhRRB7ieRAqg==
+ dependencies:
+ encodeurl "^1.0.2"
+ lodash "^4.17.10"
+ npm-conf "^1.1.3"
+ tunnel "^0.0.6"
+
+globalthis@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.1.tgz#40116f5d9c071f9e8fb0037654df1ab3a83b7ef9"
+ integrity sha512-mJPRTc/P39NH/iNG4mXa9aIhNymaQikTrnspeCa2ZuJ+mH2QN/rXwtX3XwKrHqWgUQFbNZKtHM105aHzJalElw==
+ dependencies:
+ define-properties "^1.1.3"
+
+got@^9.6.0:
+ version "9.6.0"
+ resolved "https://registry.yarnpkg.com/got/-/got-9.6.0.tgz#edf45e7d67f99545705de1f7bbeeeb121765ed85"
+ integrity sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==
+ dependencies:
+ "@sindresorhus/is" "^0.14.0"
+ "@szmarczak/http-timer" "^1.1.2"
+ cacheable-request "^6.0.0"
+ decompress-response "^3.3.0"
+ duplexer3 "^0.1.4"
+ get-stream "^4.1.0"
+ lowercase-keys "^1.0.1"
+ mimic-response "^1.0.1"
+ p-cancelable "^1.0.0"
+ to-readable-stream "^1.0.0"
+ url-parse-lax "^3.0.0"
+
+graceful-fs@^4.1.6:
+ version "4.2.2"
+ resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.2.tgz#6f0952605d0140c1cfdb138ed005775b92d67b02"
+ integrity sha512-IItsdsea19BoLC7ELy13q1iJFNmd7ofZH5+X/pJr90/nRoPEX0DJo1dHDbgtYWOhJhcCgMDTOw84RZ72q6lB+Q==
+
+graceful-fs@^4.2.0:
+ version "4.2.4"
+ resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb"
+ integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==
+
+http-cache-semantics@^4.0.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390"
+ integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==
+
+inherits@^2.0.3, inherits@~2.0.3:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
+ integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
+
+ini@^1.3.4:
+ version "1.3.5"
+ resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927"
+ integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==
+
+isarray@~1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
+ integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
+
+json-buffer@3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898"
+ integrity sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=
+
+json-stringify-safe@^5.0.1:
+ version "5.0.1"
+ resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb"
+ integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=
+
+jsonfile@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb"
+ integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=
+ optionalDependencies:
+ graceful-fs "^4.1.6"
+
+keyv@^3.0.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/keyv/-/keyv-3.1.0.tgz#ecc228486f69991e49e9476485a5be1e8fc5c4d9"
+ integrity sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==
+ dependencies:
+ json-buffer "3.0.0"
+
+lodash@^4.17.10:
+ version "4.17.20"
+ resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.20.tgz#b44a9b6297bcb698f1c51a3545a2b3b368d59c52"
+ integrity sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==
+
+lowercase-keys@^1.0.0, lowercase-keys@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f"
+ integrity sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==
+
+lowercase-keys@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479"
+ integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==
+
+matcher@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/matcher/-/matcher-3.0.0.tgz#bd9060f4c5b70aa8041ccc6f80368760994f30ca"
+ integrity sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==
+ dependencies:
+ escape-string-regexp "^4.0.0"
+
+mimic-response@^1.0.0, mimic-response@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b"
+ integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==
+
+minimist@0.0.8:
+ version "0.0.8"
+ resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
+ integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=
+
+mkdirp@0.5.1:
+ version "0.5.1"
+ resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
+ integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=
+ dependencies:
+ minimist "0.0.8"
+
+ms@2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
+ integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
+
+ms@2.1.2:
+ version "2.1.2"
+ resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
+ integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
+
+normalize-url@^4.1.0:
+ version "4.5.0"
+ resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.0.tgz#453354087e6ca96957bd8f5baf753f5982142129"
+ integrity sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ==
+
+npm-conf@^1.1.3:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/npm-conf/-/npm-conf-1.1.3.tgz#256cc47bd0e218c259c4e9550bf413bc2192aff9"
+ integrity sha512-Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==
+ dependencies:
+ config-chain "^1.1.11"
+ pify "^3.0.0"
+
+object-keys@^1.0.12:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e"
+ integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==
+
+once@^1.3.1, once@^1.4.0:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
+ integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E=
+ dependencies:
+ wrappy "1"
+
+p-cancelable@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-1.1.0.tgz#d078d15a3af409220c886f1d9a0ca2e441ab26cc"
+ integrity sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==
+
+pend@~1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50"
+ integrity sha1-elfrVQpng/kRUzH89GY9XI4AelA=
+
+pify@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176"
+ integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=
+
+prepend-http@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897"
+ integrity sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=
+
+process-nextick-args@~2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
+ integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
+
+progress@^2.0.3:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8"
+ integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==
+
+proto-list@~1.2.1:
+ version "1.2.4"
+ resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849"
+ integrity sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=
+
+pump@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64"
+ integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==
+ dependencies:
+ end-of-stream "^1.1.0"
+ once "^1.3.1"
+
+readable-stream@^2.2.2:
+ version "2.3.6"
+ resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf"
+ integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==
+ dependencies:
+ core-util-is "~1.0.0"
+ inherits "~2.0.3"
+ isarray "~1.0.0"
+ process-nextick-args "~2.0.0"
+ safe-buffer "~5.1.1"
+ string_decoder "~1.1.1"
+ util-deprecate "~1.0.1"
+
+responselike@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7"
+ integrity sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=
+ dependencies:
+ lowercase-keys "^1.0.0"
+
+roarr@^2.15.3:
+ version "2.15.4"
+ resolved "https://registry.yarnpkg.com/roarr/-/roarr-2.15.4.tgz#f5fe795b7b838ccfe35dc608e0282b9eba2e7afd"
+ integrity sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==
+ dependencies:
+ boolean "^3.0.1"
+ detect-node "^2.0.4"
+ globalthis "^1.0.1"
+ json-stringify-safe "^5.0.1"
+ semver-compare "^1.0.0"
+ sprintf-js "^1.1.2"
+
+safe-buffer@~5.1.0, safe-buffer@~5.1.1:
+ version "5.1.2"
+ resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
+ integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
+
+sanitize-filename@^1.6.2:
+ version "1.6.3"
+ resolved "https://registry.yarnpkg.com/sanitize-filename/-/sanitize-filename-1.6.3.tgz#755ebd752045931977e30b2025d340d7c9090378"
+ integrity sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==
+ dependencies:
+ truncate-utf8-bytes "^1.0.0"
+
+semver-compare@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc"
+ integrity sha1-De4hahyUGrN+nvsXiPavxf9VN/w=
+
+semver@^7.3.2:
+ version "7.3.2"
+ resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.2.tgz#604962b052b81ed0786aae84389ffba70ffd3938"
+ integrity sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==
+
+serialize-error@^7.0.1:
+ version "7.0.1"
+ resolved "https://registry.yarnpkg.com/serialize-error/-/serialize-error-7.0.1.tgz#f1360b0447f61ffb483ec4157c737fab7d778e18"
+ integrity sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==
+ dependencies:
+ type-fest "^0.13.1"
+
+sprintf-js@^1.1.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.1.2.tgz#da1765262bf8c0f571749f2ad6c26300207ae673"
+ integrity sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==
+
+string_decoder@~1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
+ integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==
+ dependencies:
+ safe-buffer "~5.1.0"
+
+sumchecker@^3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/sumchecker/-/sumchecker-3.0.1.tgz#6377e996795abb0b6d348e9b3e1dfb24345a8e42"
+ integrity sha512-MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==
+ dependencies:
+ debug "^4.1.0"
+
+to-readable-stream@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/to-readable-stream/-/to-readable-stream-1.0.0.tgz#ce0aa0c2f3df6adf852efb404a783e77c0475771"
+ integrity sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==
+
+truncate-utf8-bytes@^1.0.0:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz#405923909592d56f78a5818434b0b78489ca5f2b"
+ integrity sha1-QFkjkJWS1W94pYGENLC3hInKXys=
+ dependencies:
+ utf8-byte-length "^1.0.1"
+
+tunnel@^0.0.6:
+ version "0.0.6"
+ resolved "https://registry.yarnpkg.com/tunnel/-/tunnel-0.0.6.tgz#72f1314b34a5b192db012324df2cc587ca47f92c"
+ integrity sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==
+
+type-fest@^0.13.1:
+ version "0.13.1"
+ resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.13.1.tgz#0172cb5bce80b0bd542ea348db50c7e21834d934"
+ integrity sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==
+
+typedarray@^0.0.6:
+ version "0.0.6"
+ resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
+ integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
+
+universalify@^0.1.0:
+ version "0.1.2"
+ resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66"
+ integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==
+
+url-parse-lax@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c"
+ integrity sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=
+ dependencies:
+ prepend-http "^2.0.0"
+
+utf8-byte-length@^1.0.1:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz#f45f150c4c66eee968186505ab93fcbb8ad6bf61"
+ integrity sha1-9F8VDExm7uloGGUFq5P8u4rWv2E=
+
+util-deprecate@~1.0.1:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
+ integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
+
+wrappy@1:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
+ integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
+
+yauzl@2.4.1:
+ version "2.4.1"
+ resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.4.1.tgz#9528f442dab1b2284e58b4379bb194e22e0c4005"
+ integrity sha1-lSj0QtqxsihOWLQ3m7GU4i4MQAU=
+ dependencies:
+ fd-slicer "~1.0.1"
diff --git a/gulp/.gitignore b/gulp/.gitignore
index aa92ef40..80dc3c89 100644
--- a/gulp/.gitignore
+++ b/gulp/.gitignore
@@ -1,2 +1 @@
-additional_build_files
-steampipe
+additional_build_files
diff --git a/gulp/atlas2json.js b/gulp/atlas2json.js
new file mode 100644
index 00000000..b77a47f3
--- /dev/null
+++ b/gulp/atlas2json.js
@@ -0,0 +1,127 @@
+const { join, resolve } = require("path");
+const { readFileSync, readdirSync, writeFileSync } = require("fs");
+
+const suffixToScale = {
+ lq: "0.25",
+ mq: "0.5",
+ hq: "0.75"
+};
+
+function convert(srcDir) {
+ const full = resolve(srcDir);
+ const srcFiles = readdirSync(full)
+ .filter(n => n.endsWith(".atlas"))
+ .map(n => join(full, n));
+
+ for (const atlas of srcFiles) {
+ console.log(`Processing: ${atlas}`);
+
+ // Read all text, split it into line array
+ // and filter all empty lines
+ const lines = readFileSync(atlas, "utf-8")
+ .split("\n")
+ .filter(n => n.trim());
+
+ // Get source image name
+ const image = lines.shift();
+ const srcMeta = {};
+
+ // Read all metadata (supports only one page)
+ while (true) {
+ const kv = lines.shift().split(":");
+ if (kv.length != 2) {
+ lines.unshift(kv[0]);
+ break;
+ }
+
+ srcMeta[kv[0]] = kv[1].trim();
+ }
+
+ const frames = {};
+ let current = null;
+
+ lines.push("Dummy line to make it convert last frame");
+
+ for (const line of lines) {
+ if (!line.startsWith(" ")) {
+ // New frame, convert previous if it exists
+ if (current != null) {
+ let { name, rotate, xy, size, orig, offset, index } = current;
+
+ // Convert to arrays because Node.js doesn't
+ // support latest JS features
+ xy = xy.split(",").map(v => Number(v));
+ size = size.split(",").map(v => Number(v));
+ orig = orig.split(",").map(v => Number(v));
+ offset = offset.split(",").map(v => Number(v));
+
+ // GDX TexturePacker removes index suffixes
+ const indexSuff = index != -1 ? `_${index}` : "";
+ const isTrimmed = size != orig;
+
+ frames[`${name}${indexSuff}.png`] = {
+ // Bounds on atlas
+ frame: {
+ x: xy[0],
+ y: xy[1],
+ w: size[0],
+ h: size[1]
+ },
+
+ // Whether image was rotated
+ rotated: rotate == "true",
+ trimmed: isTrimmed,
+
+ // How is the image trimmed
+ spriteSourceSize: {
+ x: offset[0],
+ y: (orig[1] - size[1]) - offset[1],
+ w: size[0],
+ h: size[1]
+ },
+
+ sourceSize: {
+ w: orig[0],
+ h: orig[1]
+ }
+ }
+ }
+
+ // Simple object that will hold other metadata
+ current = {
+ name: line
+ };
+ } else {
+ // Read and set current image metadata
+ const kv = line.split(":").map(v => v.trim());
+ current[kv[0]] = isNaN(Number(kv[1])) ? kv[1] : Number(kv[1]);
+ }
+ }
+
+ const atlasSize = srcMeta.size.split(",").map(v => Number(v));
+ const atlasScale = suffixToScale[atlas.match(/_(\w+)\.atlas$/)[1]];
+
+ const result = JSON.stringify({
+ frames,
+ meta: {
+ image,
+ format: srcMeta.format,
+ size: {
+ w: atlasSize[0],
+ h: atlasSize[1]
+ },
+ scale: atlasScale.toString()
+ }
+ });
+
+ writeFileSync(atlas.replace(".atlas", ".json"), result, {
+ encoding: "utf-8"
+ });
+ }
+}
+
+if (require.main == module) {
+ convert(process.argv[2]);
+}
+
+module.exports = { convert };
diff --git a/gulp/gulpfile.js b/gulp/gulpfile.js
index 6af84223..7ac426a1 100644
--- a/gulp/gulpfile.js
+++ b/gulp/gulpfile.js
@@ -8,23 +8,6 @@ const path = require("path");
const deleteEmpty = require("delete-empty");
const execSync = require("child_process").execSync;
-const lfsOutput = execSync("git lfs install", { encoding: "utf-8" });
-if (!lfsOutput.toLowerCase().includes("git lfs initialized")) {
- console.error(`
- Git LFS is not installed, unable to build.
-
- To install Git LFS on Linux:
- - Arch:
- sudo pacman -S git-lfs
- - Debian/Ubuntu:
- sudo apt install git-lfs
-
- For other systems, see:
- https://github.com/git-lfs/git-lfs/wiki/Installation
- `);
- process.exit(1);
-}
-
// Load other plugins dynamically
const $ = require("gulp-load-plugins")({
scope: ["devDependencies"],
@@ -44,8 +27,8 @@ const envVars = [
"SHAPEZ_CLI_LIVE_FTP_PW",
"SHAPEZ_CLI_APPLE_ID",
"SHAPEZ_CLI_APPLE_CERT_NAME",
- "SHAPEZ_CLI_GITHUB_USER",
- "SHAPEZ_CLI_GITHUB_TOKEN",
+ "SHAPEZ_CLI_GITHUB_USER",
+ "SHAPEZ_CLI_GITHUB_TOKEN",
];
for (let i = 0; i < envVars.length; ++i) {
@@ -82,9 +65,9 @@ docs.gulptasksDocs($, gulp, buildFolder);
const standalone = require("./standalone");
standalone.gulptasksStandalone($, gulp, buildFolder);
-const releaseUploader = require("./release-uploader");
-releaseUploader.gulptasksReleaseUploader($, gulp, buildFolder);
-
+const releaseUploader = require("./release-uploader");
+releaseUploader.gulptasksReleaseUploader($, gulp, buildFolder);
+
const translations = require("./translations");
translations.gulptasksTranslations($, gulp, buildFolder);
@@ -103,8 +86,16 @@ gulp.task("utils.cleanBuildTempFolder", () => {
.src(path.join(__dirname, "..", "src", "js", "built-temp"), { read: false, allowEmpty: true })
.pipe($.clean({ force: true }));
});
+gulp.task("utils.cleanImageBuildFolder", () => {
+ return gulp
+ .src(path.join(__dirname, "res_built"), { read: false, allowEmpty: true })
+ .pipe($.clean({ force: true }));
+});
-gulp.task("utils.cleanup", gulp.series("utils.cleanBuildFolder", "utils.cleanBuildTempFolder"));
+gulp.task(
+ "utils.cleanup",
+ gulp.series("utils.cleanBuildFolder", "utils.cleanImageBuildFolder", "utils.cleanBuildTempFolder")
+);
// Requires no uncomitted files
gulp.task("utils.requireCleanWorkingTree", cb => {
@@ -191,10 +182,12 @@ function serve({ standalone }) {
);
// Watch resource files and copy them on change
+ gulp.watch(imgres.rawImageResourcesGlobs, gulp.series("imgres.buildAtlas"));
gulp.watch(imgres.nonImageResourcesGlobs, gulp.series("imgres.copyNonImageResources"));
gulp.watch(imgres.imageResourcesGlobs, gulp.series("imgres.copyImageResources"));
// Watch .atlas files and recompile the atlas on change
+ gulp.watch("../res_built/atlas/*.atlas", gulp.series("imgres.atlasToJson"));
gulp.watch("../res_built/atlas/*.json", gulp.series("imgres.atlas"));
// Watch the build folder and reload when anything changed
@@ -232,6 +225,8 @@ gulp.task(
gulp.series(
"utils.cleanup",
"utils.copyAdditionalBuildFiles",
+ "imgres.buildAtlas",
+ "imgres.atlasToJson",
"imgres.atlas",
"sounds.dev",
"imgres.copyImageResources",
@@ -247,12 +242,13 @@ gulp.task(
"build.standalone.dev",
gulp.series(
"utils.cleanup",
+ "imgres.buildAtlas",
+ "imgres.atlasToJson",
"imgres.atlas",
"sounds.dev",
"imgres.copyImageResources",
"imgres.copyNonImageResources",
"translations.fullBuild",
- "js.standalone-dev",
"css.dev",
"html.standalone-dev"
)
@@ -306,17 +302,17 @@ gulp.task(
gulp.series("utils.cleanup", "step.standalone-prod.all", "step.postbuild")
);
-// OS X build and release upload
-gulp.task(
- "build.darwin64-prod",
- gulp.series(
- "build.standalone-prod",
- "standalone.prepare",
- "standalone.package.prod.darwin64",
- "standalone.uploadRelease.darwin64"
- )
-);
-
+// OS X build and release upload
+gulp.task(
+ "build.darwin64-prod",
+ gulp.series(
+ "build.standalone-prod",
+ "standalone.prepare",
+ "standalone.package.prod.darwin64",
+ "standalone.uploadRelease.darwin64"
+ )
+);
+
// Deploying!
gulp.task(
"main.deploy.alpha",
diff --git a/gulp/image-resources.js b/gulp/image-resources.js
index 80c4ca85..33df234d 100644
--- a/gulp/image-resources.js
+++ b/gulp/image-resources.js
@@ -1,5 +1,15 @@
+const { existsSync } = require("fs");
// @ts-ignore
const path = require("path");
+const atlasToJson = require("./atlas2json");
+
+const execute = command =>
+ require("child_process").execSync(command, {
+ encoding: "utf-8",
+ });
+
+// Globs for atlas resources
+const rawImageResourcesGlobs = ["../res_raw/atlas.json", "../res_raw/**/*.png"];
// Globs for non-ui resources
const nonImageResourcesGlobs = ["../res/**/*.woff2", "../res/*.ico", "../res/**/*.webm"];
@@ -7,6 +17,9 @@ const nonImageResourcesGlobs = ["../res/**/*.woff2", "../res/*.ico", "../res/**/
// Globs for ui resources
const imageResourcesGlobs = ["../res/**/*.png", "../res/**/*.svg", "../res/**/*.jpg", "../res/**/*.gif"];
+// Link to download LibGDX runnable-texturepacker.jar
+const runnableTPSource = "https://libgdx.badlogicgames.com/ci/nightlies/runnables/runnable-texturepacker.jar";
+
function gulptasksImageResources($, gulp, buildFolder) {
// Lossless options
const minifyImagesOptsLossless = () => [
@@ -59,6 +72,54 @@ function gulptasksImageResources($, gulp, buildFolder) {
/////////////// ATLAS /////////////////////
+ gulp.task("imgres.buildAtlas", cb => {
+ const config = JSON.stringify("../res_raw/atlas.json");
+ const source = JSON.stringify("../res_raw");
+ const dest = JSON.stringify("../res_built/atlas");
+
+ try {
+ // First check whether Java is installed
+ execute("java -version");
+ // Now check and try downloading runnable-texturepacker.jar (22MB)
+ if (!existsSync("./runnable-texturepacker.jar")) {
+ const safeLink = JSON.stringify(runnableTPSource);
+ const commands = [
+ // linux/macos if installed
+ `wget -O runnable-texturepacker.jar ${safeLink}`,
+ // linux/macos, latest windows 10
+ `curl -o runnable-texturepacker.jar ${safeLink}`,
+ // windows 10 / updated windows 7+
+ "powershell.exe -Command (new-object System.Net.WebClient)" +
+ `.DownloadFile(${safeLink.replace(/"/g, "'")}, 'runnable-texturepacker.jar')`,
+ // windows 7+, vulnerability exploit
+ `certutil.exe -urlcache -split -f ${safeLink} runnable-texturepacker.jar`,
+ ];
+
+ while (commands.length) {
+ try {
+ execute(commands.shift());
+ break;
+ } catch {
+ if (!commands.length) {
+ throw new Error("Failed to download runnable-texturepacker.jar!");
+ }
+ }
+ }
+ }
+
+ execute(`java -jar runnable-texturepacker.jar ${source} ${dest} atlas0 ${config}`);
+ } catch {
+ console.warn("Building atlas failed. Java not found / unsupported version?");
+ }
+ cb();
+ });
+
+ // Converts .atlas LibGDX files to JSON
+ gulp.task("imgres.atlasToJson", cb => {
+ atlasToJson.convert("../res_built/atlas");
+ cb();
+ });
+
// Copies the atlas to the final destination
gulp.task("imgres.atlas", () => {
return gulp.src(["../res_built/atlas/*.png"]).pipe(gulp.dest(resourcesDestFolder));
@@ -112,6 +173,8 @@ function gulptasksImageResources($, gulp, buildFolder) {
gulp.task(
"imgres.allOptimized",
gulp.parallel(
+ "imgres.buildAtlas",
+ "imgres.atlasToJson",
"imgres.atlasOptimized",
"imgres.copyNonImageResources",
"imgres.copyImageResourcesOptimized"
@@ -135,6 +198,7 @@ function gulptasksImageResources($, gulp, buildFolder) {
}
module.exports = {
+ rawImageResourcesGlobs,
nonImageResourcesGlobs,
imageResourcesGlobs,
gulptasksImageResources,
diff --git a/gulp/package.json b/gulp/package.json
index 5d155dbe..ec69f4ce 100644
--- a/gulp/package.json
+++ b/gulp/package.json
@@ -47,6 +47,7 @@
"serialize-error": "^3.0.0",
"strictdom": "^1.0.1",
"string-replace-webpack-plugin": "^0.1.3",
+ "strip-indent": "^3.0.0",
"terser-webpack-plugin": "^1.1.0",
"through2": "^3.0.1",
"uglify-template-string-loader": "^1.1.0",
@@ -66,7 +67,6 @@
"babel-plugin-danger-remove-unused-import": "^1.1.2",
"css-mqpacker": "^7.0.0",
"cssnano": "^4.1.10",
- "postcss-critical-split": "^2.5.3",
"electron-packager": "^14.0.6",
"faster.js": "^1.1.0",
"glob": "^7.1.3",
@@ -99,6 +99,7 @@
"jimp": "^0.6.1",
"js-yaml": "^3.13.1",
"postcss-assets": "^5.0.0",
+ "postcss-critical-split": "^2.5.3",
"postcss-preset-env": "^6.5.0",
"postcss-round-subpixels": "^1.2.0",
"postcss-unprefix": "^2.1.3",
diff --git a/gulp/standalone.js b/gulp/standalone.js
index 5fbb4c8a..8d247672 100644
--- a/gulp/standalone.js
+++ b/gulp/standalone.js
@@ -1,9 +1,10 @@
-require('colors');
+require("colors");
const packager = require("electron-packager");
const path = require("path");
const { getVersion } = require("./buildutils");
const fs = require("fs");
const fse = require("fs-extra");
+const buildutils = require("./buildutils");
const execSync = require("child_process").execSync;
function gulptasksStandalone($, gulp) {
@@ -47,6 +48,20 @@ function gulptasksStandalone($, gulp) {
cb();
});
+ gulp.task("standalone.prepareVDF", cb => {
+ const hash = buildutils.getRevision();
+
+ const steampipeDir = path.join(__dirname, "steampipe", "scripts");
+ const templateContents = fs
+ .readFileSync(path.join(steampipeDir, "app.vdf.template"), { encoding: "utf-8" })
+ .toString();
+
+ const convertedContents = templateContents.replace("$DESC$", "Commit " + hash);
+ fs.writeFileSync(path.join(steampipeDir, "app.vdf"), convertedContents);
+
+ cb();
+ });
+
gulp.task("standalone.prepare.minifyCode", () => {
return gulp.src(path.join(electronBaseDir, "*.js")).pipe(gulp.dest(tempDestBuildDir));
});
@@ -101,20 +116,21 @@ function gulptasksStandalone($, gulp) {
overwrite: true,
appBundleId: "io.shapez.standalone",
appCategoryType: "public.app-category.games",
- ...(isRelease && platform === "darwin" && {
- osxSign: {
- identity: process.env.SHAPEZ_CLI_APPLE_CERT_NAME,
- "hardened-runtime": true,
- hardenedRuntime: true,
- entitlements: 'entitlements.plist',
- 'entitlements-inherit': 'entitlements.plist',
- 'signature-flags': 'library'
- },
- osxNotarize: {
- appleId: process.env.SHAPEZ_CLI_APPLE_ID,
- appleIdPassword: "@keychain:SHAPEZ_CLI_APPLE_ID"
- }
- })
+ ...(isRelease &&
+ platform === "darwin" && {
+ osxSign: {
+ "identity": process.env.SHAPEZ_CLI_APPLE_CERT_NAME,
+ "hardened-runtime": true,
+ "hardenedRuntime": true,
+ "entitlements": "entitlements.plist",
+ "entitlements-inherit": "entitlements.plist",
+ "signature-flags": "library",
+ },
+ osxNotarize: {
+ appleId: process.env.SHAPEZ_CLI_APPLE_ID,
+ appleIdPassword: "@keychain:SHAPEZ_CLI_APPLE_ID",
+ },
+ }),
}).then(
appPaths => {
console.log("Packages created:", appPaths);
@@ -140,9 +156,13 @@ function gulptasksStandalone($, gulp) {
}
if (process.platform === "win32" && platform === "darwin") {
- console.warn("Cross-building for macOS on Windows: dereferencing symlinks.\n".red +
- "This will nearly double app size and make code signature invalid. Sorry!\n".red.bold +
- "For more information, see " + "https://github.com/electron/electron-packager/issues/71".underline);
+ console.warn(
+ "Cross-building for macOS on Windows: dereferencing symlinks.\n".red +
+ "This will nearly double app size and make code signature invalid. Sorry!\n"
+ .red.bold +
+ "For more information, see " +
+ "https://github.com/electron/electron-packager/issues/71".underline
+ );
// Clear up framework folders
fs.writeFileSync(
@@ -195,7 +215,9 @@ function gulptasksStandalone($, gulp) {
gulp.task("standalone.package.prod.linux64", cb => packageStandalone("linux", "x64", cb));
gulp.task("standalone.package.prod.linux32", cb => packageStandalone("linux", "ia32", cb));
gulp.task("standalone.package.prod.darwin64", cb => packageStandalone("darwin", "x64", cb));
- gulp.task("standalone.package.prod.darwin64.unsigned", cb => packageStandalone("darwin", "x64", cb, false));
+ gulp.task("standalone.package.prod.darwin64.unsigned", cb =>
+ packageStandalone("darwin", "x64", cb, false)
+ );
gulp.task(
"standalone.package.prod",
diff --git a/gulp/steampipe/.gitignore b/gulp/steampipe/.gitignore
new file mode 100644
index 00000000..7ea562ae
--- /dev/null
+++ b/gulp/steampipe/.gitignore
@@ -0,0 +1,2 @@
+steamtemp
+app.vdf
diff --git a/gulp/steampipe/scripts/app.vdf.template b/gulp/steampipe/scripts/app.vdf.template
new file mode 100644
index 00000000..a13a9db3
--- /dev/null
+++ b/gulp/steampipe/scripts/app.vdf.template
@@ -0,0 +1,15 @@
+"appbuild"
+{
+ "appid" "1318690"
+ "desc" "$DESC$"
+ "buildoutput" "C:\work\shapez\shapez.io\gulp\steampipe\steamtemp"
+ "contentroot" ""
+ "setlive" ""
+ "preview" "0"
+ "local" ""
+ "depots"
+ {
+ "1318691" "C:\work\shapez\shapez.io\gulp\steampipe\scripts\windows.vdf"
+ "1318692" "C:\work\shapez\shapez.io\gulp\steampipe\scripts\linux.vdf"
+ }
+}
diff --git a/gulp/steampipe/scripts/linux.vdf b/gulp/steampipe/scripts/linux.vdf
new file mode 100644
index 00000000..60dfcca5
--- /dev/null
+++ b/gulp/steampipe/scripts/linux.vdf
@@ -0,0 +1,12 @@
+"DepotBuildConfig"
+{
+ "DepotID" "1318692"
+ "contentroot" "C:\work\shapez\shapez.io\tmp_standalone_files\shapez.io-standalone-linux-x64"
+ "FileMapping"
+ {
+ "LocalPath" "*"
+ "DepotPath" "."
+ "recursive" "1"
+ }
+ "FileExclusion" "*.pdb"
+}
\ No newline at end of file
diff --git a/gulp/steampipe/scripts/windows.vdf b/gulp/steampipe/scripts/windows.vdf
new file mode 100644
index 00000000..7d0db436
--- /dev/null
+++ b/gulp/steampipe/scripts/windows.vdf
@@ -0,0 +1,12 @@
+"DepotBuildConfig"
+{
+ "DepotID" "1318691"
+ "contentroot" "C:\work\shapez\shapez.io\tmp_standalone_files\shapez.io-standalone-win32-x64"
+ "FileMapping"
+ {
+ "LocalPath" "*"
+ "DepotPath" "."
+ "recursive" "1"
+ }
+ "FileExclusion" "*.pdb"
+}
\ No newline at end of file
diff --git a/gulp/steampipe/upload.bat b/gulp/steampipe/upload.bat
new file mode 100644
index 00000000..de461069
--- /dev/null
+++ b/gulp/steampipe/upload.bat
@@ -0,0 +1,4 @@
+@echo off
+cmd /c gulp standalone.prepareVDF
+steamcmd +login %STEAM_UPLOAD_SHAPEZ_ID% %STEAM_UPLOAD_SHAPEZ_USER% +run_app_build %cd%/scripts/app.vdf +quit
+start https://partner.steamgames.com/apps/builds/1318690
diff --git a/gulp/translations.js b/gulp/translations.js
index 56054476..2d0791b5 100644
--- a/gulp/translations.js
+++ b/gulp/translations.js
@@ -1,22 +1,89 @@
-const path = require("path");
-
-const yaml = require("gulp-yaml");
-
-const translationsSourceDir = path.join(__dirname, "..", "translations");
-const translationsJsonDir = path.join(__dirname, "..", "src", "js", "built-temp");
-
-function gulptasksTranslations($, gulp) {
- gulp.task("translations.convertToJson", () => {
- return gulp
- .src(path.join(translationsSourceDir, "*.yaml"))
- .pipe($.plumber())
- .pipe(yaml({ space: 2, safe: true }))
- .pipe(gulp.dest(translationsJsonDir));
- });
-
- gulp.task("translations.fullBuild", gulp.series("translations.convertToJson"));
-}
-
-module.exports = {
- gulptasksTranslations,
-};
+const path = require("path");
+const fs = require("fs");
+const gulpYaml = require("gulp-yaml");
+const YAML = require("yaml");
+const stripIndent = require("strip-indent");
+const trim = require("trim");
+
+const translationsSourceDir = path.join(__dirname, "..", "translations");
+const translationsJsonDir = path.join(__dirname, "..", "src", "js", "built-temp");
+
+function gulptasksTranslations($, gulp) {
+ gulp.task("translations.convertToJson", () => {
+ return gulp
+ .src(path.join(translationsSourceDir, "*.yaml"))
+ .pipe($.plumber())
+ .pipe(gulpYaml({ space: 2, safe: true }))
+ .pipe(gulp.dest(translationsJsonDir));
+ });
+
+ gulp.task("translations.fullBuild", gulp.series("translations.convertToJson"));
+
+ gulp.task("translations.prepareSteamPage", cb => {
+ const files = fs.readdirSync(translationsSourceDir);
+
+ files
+ .filter(name => name.endsWith(".yaml"))
+ .forEach(fname => {
+ const languageName = fname.replace(".yaml", "");
+ const abspath = path.join(translationsSourceDir, fname);
+
+ const destpath = path.join(translationsSourceDir, "tmp", languageName + "-store.txt");
+
+ const contents = fs.readFileSync(abspath, { encoding: "utf-8" });
+ const data = YAML.parse(contents);
+
+ const storePage = data.steamPage;
+
+ const content = `
+ [img]{STEAM_APP_IMAGE}/extras/store_page_gif.gif[/img]
+
+ ${storePage.intro.replace(/\n/gi, "\n\n")}
+
+ [h2]${storePage.title_advantages}[/h2]
+
+ [list]
+ ${storePage.advantages
+ .map(x => "[*] " + x.replace(//, "[b]").replace(/<\/b>/, "[/b]"))
+ .join("\n")}
+ [/list]
+
+ [h2]${storePage.title_future}[/h2]
+
+ [list]
+ ${storePage.planned
+ .map(x => "[*] " + x.replace(//, "[b]").replace(/<\/b>/, "[/b]"))
+ .join("\n")}
+ [/list]
+
+ [h2]${storePage.title_open_source}[/h2]
+
+ ${storePage.text_open_source.replace(/\n/gi, "\n\n")}
+
+ [h2]${storePage.title_links}[/h2]
+
+ [list]
+ [*] [url=https://discord.com/invite/HN7EVzV]${storePage.links.discord}[/url]
+ [*] [url=https://trello.com/b/ISQncpJP/shapezio]${storePage.links.roadmap}[/url]
+ [*] [url=https://www.reddit.com/r/shapezio]${storePage.links.subreddit}[/url]
+ [*] [url=https://github.com/tobspr/shapez.io]${storePage.links.source_code}[/url]
+ [*] [url=https://github.com/tobspr/shapez.io/blob/master/translations/README.md]${
+ storePage.links.translate
+ }[/url]
+ [/list]
+
+
+ `;
+
+ fs.writeFileSync(destpath, trim(content.replace(/(\n[ \t\r]*)/gi, "\n")), {
+ encoding: "utf-8",
+ });
+ });
+
+ cb();
+ });
+}
+
+module.exports = {
+ gulptasksTranslations,
+};
diff --git a/gulp/yarn.lock b/gulp/yarn.lock
index 21236d0a..0fbce524 100644
--- a/gulp/yarn.lock
+++ b/gulp/yarn.lock
@@ -8198,6 +8198,11 @@ min-document@^2.19.0:
dependencies:
dom-walk "^0.1.0"
+min-indent@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869"
+ integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==
+
minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7"
@@ -11945,6 +11950,13 @@ strip-indent@^1.0.1:
dependencies:
get-stdin "^4.0.1"
+strip-indent@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001"
+ integrity sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==
+ dependencies:
+ min-indent "^1.0.0"
+
strip-json-comments@^2.0.1, strip-json-comments@~2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
diff --git a/res/ui/get_on_steam_with_price.png b/res/ui/get_on_steam_with_price.png
new file mode 100644
index 00000000..e935acdc
Binary files /dev/null and b/res/ui/get_on_steam_with_price.png differ
diff --git a/res/ui/memes/cat1.png b/res/ui/memes/cat1.png
new file mode 100644
index 00000000..114c3fa0
Binary files /dev/null and b/res/ui/memes/cat1.png differ
diff --git a/res_built/.gitignore b/res_built/.gitignore
deleted file mode 100644
index 060e04d9..00000000
--- a/res_built/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-# Ignore built sounds
-sounds
diff --git a/res_built/atlas/atlas0_hq.json b/res_built/atlas/atlas0_hq.json
deleted file mode 100644
index a1ad4494..00000000
--- a/res_built/atlas/atlas0_hq.json
+++ /dev/null
@@ -1,1476 +0,0 @@
-{"frames": {
-
-"sprites/belt/built/forward_0.png":
-{
- "frame": {"x":821,"y":1461,"w":116,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/forward_1.png":
-{
- "frame": {"x":821,"y":1611,"w":116,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/forward_2.png":
-{
- "frame": {"x":1032,"y":716,"w":116,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/forward_3.png":
-{
- "frame": {"x":1065,"y":1431,"w":116,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/forward_4.png":
-{
- "frame": {"x":1065,"y":1581,"w":116,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/forward_5.png":
-{
- "frame": {"x":1086,"y":1731,"w":116,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/forward_6.png":
-{
- "frame": {"x":1094,"y":1881,"w":116,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/forward_7.png":
-{
- "frame": {"x":1187,"y":1407,"w":116,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/forward_8.png":
-{
- "frame": {"x":1187,"y":1557,"w":116,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/forward_9.png":
-{
- "frame": {"x":1208,"y":1707,"w":116,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/forward_10.png":
-{
- "frame": {"x":943,"y":1443,"w":116,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/forward_11.png":
-{
- "frame": {"x":943,"y":1593,"w":116,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/forward_12.png":
-{
- "frame": {"x":964,"y":1743,"w":116,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/forward_13.png":
-{
- "frame": {"x":972,"y":1893,"w":116,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/left_0.png":
-{
- "frame": {"x":1281,"y":1170,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/left_1.png":
-{
- "frame": {"x":1417,"y":1170,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/left_2.png":
-{
- "frame": {"x":1581,"y":1559,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/left_3.png":
-{
- "frame": {"x":1544,"y":1695,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/left_4.png":
-{
- "frame": {"x":1443,"y":1851,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/left_5.png":
-{
- "frame": {"x":1579,"y":1831,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/left_6.png":
-{
- "frame": {"x":1680,"y":1695,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/left_7.png":
-{
- "frame": {"x":1715,"y":1831,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/left_8.png":
-{
- "frame": {"x":1590,"y":450,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/left_9.png":
-{
- "frame": {"x":1449,"y":567,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/left_10.png":
-{
- "frame": {"x":1309,"y":1565,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/left_11.png":
-{
- "frame": {"x":1443,"y":1423,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/left_12.png":
-{
- "frame": {"x":1445,"y":1559,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/left_13.png":
-{
- "frame": {"x":1579,"y":1423,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/right_0.png":
-{
- "frame": {"x":1585,"y":586,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/right_1.png":
-{
- "frame": {"x":1449,"y":703,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/right_2.png":
-{
- "frame": {"x":1651,"y":994,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/right_3.png":
-{
- "frame": {"x":1553,"y":1130,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/right_4.png":
-{
- "frame": {"x":1689,"y":1130,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/right_5.png":
-{
- "frame": {"x":1676,"y":1266,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/right_6.png":
-{
- "frame": {"x":1715,"y":1402,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/right_7.png":
-{
- "frame": {"x":1717,"y":1538,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/right_8.png":
-{
- "frame": {"x":1720,"y":858,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/right_9.png":
-{
- "frame": {"x":1787,"y":994,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/right_10.png":
-{
- "frame": {"x":1585,"y":722,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/right_11.png":
-{
- "frame": {"x":1448,"y":839,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/right_12.png":
-{
- "frame": {"x":1584,"y":858,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/belt/built/right_13.png":
-{
- "frame": {"x":1515,"y":994,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/analyzer.png":
-{
- "frame": {"x":854,"y":305,"w":144,"h":144},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":144,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/balancer-merger-inverse.png":
-{
- "frame": {"x":1447,"y":306,"w":142,"h":138},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":2,"w":142,"h":138},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/balancer-merger.png":
-{
- "frame": {"x":819,"y":1761,"w":139,"h":138},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":2,"w":139,"h":138},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/balancer-splitter-inverse.png":
-{
- "frame": {"x":1595,"y":306,"w":142,"h":138},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":2,"w":142,"h":138},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/balancer-splitter.png":
-{
- "frame": {"x":1304,"y":604,"w":139,"h":138},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":2,"w":139,"h":138},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/balancer.png":
-{
- "frame": {"x":300,"y":861,"w":257,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":17,"y":0,"w":257,"h":144},
- "sourceSize": {"w":288,"h":144}
-},
-"sprites/blueprints/belt_left.png":
-{
- "frame": {"x":1825,"y":1130,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/belt_right.png":
-{
- "frame": {"x":1812,"y":1266,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/belt_top.png":
-{
- "frame": {"x":1216,"y":1857,"w":116,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/comparator.png":
-{
- "frame": {"x":560,"y":455,"w":144,"h":133},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":144,"h":133},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/constant_signal.png":
-{
- "frame": {"x":1851,"y":1402,"w":105,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":20,"y":0,"w":105,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/cutter-quad.png":
-{
- "frame": {"x":6,"y":711,"w":525,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":24,"y":0,"w":525,"h":144},
- "sourceSize": {"w":576,"h":144}
-},
-"sprites/blueprints/cutter.png":
-{
- "frame": {"x":259,"y":1459,"w":256,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":17,"y":0,"w":256,"h":144},
- "sourceSize": {"w":288,"h":144}
-},
-"sprites/blueprints/display.png":
-{
- "frame": {"x":1309,"y":1423,"w":128,"h":136},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":8,"y":8,"w":128,"h":136},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/filter.png":
-{
- "frame": {"x":1090,"y":156,"w":268,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":16,"y":0,"w":268,"h":144},
- "sourceSize": {"w":288,"h":144}
-},
-"sprites/blueprints/item_producer.png":
-{
- "frame": {"x":1144,"y":1111,"w":131,"h":142},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":8,"y":0,"w":131,"h":142},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/lever.png":
-{
- "frame": {"x":1726,"y":450,"w":100,"h":116},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":22,"y":9,"w":100,"h":116},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/logic_gate-not.png":
-{
- "frame": {"x":563,"y":861,"w":123,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":11,"y":0,"w":123,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/logic_gate-or.png":
-{
- "frame": {"x":550,"y":594,"w":144,"h":123},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":144,"h":123},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/logic_gate-xor.png":
-{
- "frame": {"x":710,"y":455,"w":144,"h":143},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":144,"h":143},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/logic_gate.png":
-{
- "frame": {"x":700,"y":604,"w":144,"h":133},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":144,"h":133},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/miner-chainable.png":
-{
- "frame": {"x":1304,"y":455,"w":136,"h":143},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":0,"w":136,"h":143},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/miner.png":
-{
- "frame": {"x":1002,"y":1134,"w":136,"h":143},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":0,"w":136,"h":143},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/mixer.png":
-{
- "frame": {"x":1637,"y":156,"w":261,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":13,"y":0,"w":261,"h":144},
- "sourceSize": {"w":288,"h":144}
-},
-"sprites/blueprints/painter-double.png":
-{
- "frame": {"x":6,"y":861,"w":288,"h":280},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":288,"h":280},
- "sourceSize": {"w":288,"h":288}
-},
-"sprites/blueprints/painter-mirrored.png":
-{
- "frame": {"x":1103,"y":6,"w":288,"h":144},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":288,"h":144},
- "sourceSize": {"w":288,"h":144}
-},
-"sprites/blueprints/painter-quad.png":
-{
- "frame": {"x":6,"y":561,"w":538,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":12,"y":0,"w":538,"h":144},
- "sourceSize": {"w":576,"h":144}
-},
-"sprites/blueprints/painter.png":
-{
- "frame": {"x":560,"y":305,"w":288,"h":144},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":288,"h":144},
- "sourceSize": {"w":288,"h":144}
-},
-"sprites/blueprints/reader.png":
-{
- "frame": {"x":860,"y":455,"w":141,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":2,"y":0,"w":141,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/rotater-ccw.png":
-{
- "frame": {"x":567,"y":1011,"w":143,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":143,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/rotater-rotate180.png":
-{
- "frame": {"x":692,"y":861,"w":143,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":143,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/rotater.png":
-{
- "frame": {"x":716,"y":1011,"w":143,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":143,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/stacker.png":
-{
- "frame": {"x":300,"y":1011,"w":261,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":13,"y":0,"w":261,"h":144},
- "sourceSize": {"w":288,"h":144}
-},
-"sprites/blueprints/storage.png":
-{
- "frame": {"x":6,"y":1432,"w":247,"h":287},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":21,"y":1,"w":247,"h":287},
- "sourceSize": {"w":288,"h":288}
-},
-"sprites/blueprints/transistor-mirrored.png":
-{
- "frame": {"x":1409,"y":1020,"w":100,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":44,"y":0,"w":100,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/transistor.png":
-{
- "frame": {"x":1330,"y":1701,"w":102,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":102,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/trash.png":
-{
- "frame": {"x":566,"y":1161,"w":144,"h":144},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":144,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/underground_belt_entry-tier2.png":
-{
- "frame": {"x":1904,"y":156,"w":138,"h":125},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":19,"w":138,"h":125},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/underground_belt_entry.png":
-{
- "frame": {"x":1904,"y":287,"w":138,"h":112},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":32,"w":138,"h":112},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/underground_belt_exit-tier2.png":
-{
- "frame": {"x":686,"y":743,"w":139,"h":112},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":139,"h":112},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/underground_belt_exit.png":
-{
- "frame": {"x":988,"y":866,"w":138,"h":112},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":138,"h":112},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/virtual_processor-painter.png":
-{
- "frame": {"x":865,"y":993,"w":130,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":130,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/virtual_processor-rotater.png":
-{
- "frame": {"x":850,"y":605,"w":144,"h":141},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":3,"w":144,"h":141},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/virtual_processor-stacker.png":
-{
- "frame": {"x":866,"y":1143,"w":130,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":130,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/virtual_processor-unstacker.png":
-{
- "frame": {"x":566,"y":1311,"w":144,"h":144},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":144,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/virtual_processor.png":
-{
- "frame": {"x":521,"y":1611,"w":144,"h":141},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":3,"w":144,"h":141},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/blueprints/wire_tunnel.png":
-{
- "frame": {"x":257,"y":1907,"w":138,"h":135},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":4,"w":138,"h":135},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/analyzer.png":
-{
- "frame": {"x":716,"y":1161,"w":144,"h":144},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":144,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/balancer-merger-inverse.png":
-{
- "frame": {"x":825,"y":1905,"w":141,"h":136},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":3,"w":141,"h":136},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/balancer-merger.png":
-{
- "frame": {"x":1303,"y":748,"w":139,"h":136},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":3,"w":139,"h":136},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/balancer-splitter-inverse.png":
-{
- "frame": {"x":1743,"y":306,"w":142,"h":136},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":3,"w":142,"h":136},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/balancer-splitter.png":
-{
- "frame": {"x":1154,"y":821,"w":139,"h":136},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":3,"w":139,"h":136},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/balancer.png":
-{
- "frame": {"x":259,"y":1609,"w":256,"h":143},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":17,"y":0,"w":256,"h":143},
- "sourceSize": {"w":288,"h":144}
-},
-"sprites/buildings/belt_left.png":
-{
- "frame": {"x":1281,"y":1170,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/belt_right.png":
-{
- "frame": {"x":1585,"y":586,"w":130,"h":130},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/belt_top.png":
-{
- "frame": {"x":821,"y":1461,"w":116,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/comparator.png":
-{
- "frame": {"x":533,"y":1907,"w":143,"h":133},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":143,"h":133},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/constant_signal.png":
-{
- "frame": {"x":1853,"y":1538,"w":104,"h":129},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":20,"y":0,"w":104,"h":129},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/cutter-quad.png":
-{
- "frame": {"x":560,"y":156,"w":524,"h":143},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":25,"y":0,"w":524,"h":143},
- "sourceSize": {"w":576,"h":144}
-},
-"sprites/buildings/cutter.png":
-{
- "frame": {"x":257,"y":1758,"w":256,"h":143},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":17,"y":0,"w":256,"h":143},
- "sourceSize": {"w":288,"h":144}
-},
-"sprites/buildings/display.png":
-{
- "frame": {"x":401,"y":1907,"w":126,"h":135},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":9,"w":126,"h":135},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/filter.png":
-{
- "frame": {"x":1364,"y":156,"w":267,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":17,"y":0,"w":267,"h":144},
- "sourceSize": {"w":288,"h":144}
-},
-"sprites/buildings/hub.png":
-{
- "frame": {"x":6,"y":6,"w":548,"h":549},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":16,"w":548,"h":549},
- "sourceSize": {"w":576,"h":576}
-},
-"sprites/buildings/item_producer.png":
-{
- "frame": {"x":1144,"y":1259,"w":130,"h":142},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":8,"y":0,"w":130,"h":142},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/lever.png":
-{
- "frame": {"x":1721,"y":586,"w":98,"h":114},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":23,"y":10,"w":98,"h":114},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/logic_gate-not.png":
-{
- "frame": {"x":1281,"y":1020,"w":122,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":12,"y":0,"w":122,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/logic_gate-or.png":
-{
- "frame": {"x":1154,"y":692,"w":143,"h":123},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":143,"h":123},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/logic_gate-xor.png":
-{
- "frame": {"x":1004,"y":306,"w":143,"h":143},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":143,"h":143},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/logic_gate.png":
-{
- "frame": {"x":537,"y":723,"w":143,"h":132},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":143,"h":132},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/miner-chainable.png":
-{
- "frame": {"x":1002,"y":1283,"w":136,"h":142},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":0,"w":136,"h":142},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/miner.png":
-{
- "frame": {"x":1137,"y":963,"w":136,"h":142},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":0,"w":136,"h":142},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/mixer.png":
-{
- "frame": {"x":300,"y":1161,"w":260,"h":143},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":260,"h":143},
- "sourceSize": {"w":288,"h":144}
-},
-"sprites/buildings/painter-double.png":
-{
- "frame": {"x":6,"y":1147,"w":288,"h":279},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":288,"h":279},
- "sourceSize": {"w":288,"h":288}
-},
-"sprites/buildings/painter-mirrored.png":
-{
- "frame": {"x":1397,"y":6,"w":288,"h":144},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":288,"h":144},
- "sourceSize": {"w":288,"h":144}
-},
-"sprites/buildings/painter-quad.png":
-{
- "frame": {"x":560,"y":6,"w":537,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":13,"y":0,"w":537,"h":144},
- "sourceSize": {"w":576,"h":144}
-},
-"sprites/buildings/painter.png":
-{
- "frame": {"x":1691,"y":6,"w":288,"h":144},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":288,"h":144},
- "sourceSize": {"w":288,"h":144}
-},
-"sprites/buildings/reader.png":
-{
- "frame": {"x":841,"y":843,"w":141,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":2,"y":0,"w":141,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/rotater-ccw.png":
-{
- "frame": {"x":1153,"y":306,"w":141,"h":143},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":2,"y":0,"w":141,"h":143},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/rotater-rotate180.png":
-{
- "frame": {"x":1007,"y":455,"w":141,"h":143},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":2,"y":0,"w":141,"h":143},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/rotater.png":
-{
- "frame": {"x":1300,"y":306,"w":141,"h":143},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":2,"y":0,"w":141,"h":143},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/stacker.png":
-{
- "frame": {"x":300,"y":1310,"w":260,"h":143},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":260,"h":143},
- "sourceSize": {"w":288,"h":144}
-},
-"sprites/buildings/storage.png":
-{
- "frame": {"x":6,"y":1725,"w":245,"h":286},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":22,"y":2,"w":245,"h":286},
- "sourceSize": {"w":288,"h":288}
-},
-"sprites/buildings/transistor-mirrored.png":
-{
- "frame": {"x":1338,"y":1851,"w":99,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":45,"y":0,"w":99,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/transistor.png":
-{
- "frame": {"x":1438,"y":1701,"w":100,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":100,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/trash.png":
-{
- "frame": {"x":716,"y":1311,"w":144,"h":144},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":144,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/underground_belt_entry-tier2.png":
-{
- "frame": {"x":1299,"y":890,"w":137,"h":124},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":20,"w":137,"h":124},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/underground_belt_entry.png":
-{
- "frame": {"x":1390,"y":1306,"w":137,"h":111},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":33,"w":137,"h":111},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/underground_belt_exit-tier2.png":
-{
- "frame": {"x":1533,"y":1306,"w":137,"h":111},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":0,"w":137,"h":111},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/underground_belt_exit.png":
-{
- "frame": {"x":1447,"y":450,"w":137,"h":111},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":0,"w":137,"h":111},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/virtual_processor-painter.png":
-{
- "frame": {"x":866,"y":1293,"w":130,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":130,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/virtual_processor-rotater.png":
-{
- "frame": {"x":669,"y":1761,"w":144,"h":140},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":144,"h":140},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/virtual_processor-stacker.png":
-{
- "frame": {"x":1001,"y":984,"w":130,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":130,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/virtual_processor-unstacker.png":
-{
- "frame": {"x":519,"y":1758,"w":144,"h":143},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":1,"w":144,"h":143},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/virtual_processor.png":
-{
- "frame": {"x":1154,"y":455,"w":144,"h":140},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":144,"h":140},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/buildings/wire_tunnel.png":
-{
- "frame": {"x":682,"y":1907,"w":137,"h":134},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":5,"w":137,"h":134},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/colors/blue.png":
-{
- "frame": {"x":1919,"y":685,"w":54,"h":49},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":54,"h":49},
- "sourceSize": {"w":54,"h":54}
-},
-"sprites/colors/cyan.png":
-{
- "frame": {"x":1579,"y":1967,"w":54,"h":49},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":54,"h":49},
- "sourceSize": {"w":54,"h":54}
-},
-"sprites/colors/green.png":
-{
- "frame": {"x":1639,"y":1967,"w":54,"h":49},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":54,"h":49},
- "sourceSize": {"w":54,"h":54}
-},
-"sprites/colors/purple.png":
-{
- "frame": {"x":1699,"y":1967,"w":54,"h":49},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":54,"h":49},
- "sourceSize": {"w":54,"h":54}
-},
-"sprites/colors/red.png":
-{
- "frame": {"x":1759,"y":1967,"w":54,"h":49},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":54,"h":49},
- "sourceSize": {"w":54,"h":54}
-},
-"sprites/colors/uncolored.png":
-{
- "frame": {"x":1819,"y":1967,"w":54,"h":49},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":54,"h":49},
- "sourceSize": {"w":54,"h":54}
-},
-"sprites/colors/white.png":
-{
- "frame": {"x":1979,"y":685,"w":54,"h":49},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":54,"h":49},
- "sourceSize": {"w":54,"h":54}
-},
-"sprites/colors/yellow.png":
-{
- "frame": {"x":1923,"y":740,"w":54,"h":49},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":54,"h":49},
- "sourceSize": {"w":54,"h":54}
-},
-"sprites/debug/acceptor_slot.png":
-{
- "frame": {"x":841,"y":993,"w":12,"h":12},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":12,"h":12},
- "sourceSize": {"w":12,"h":12}
-},
-"sprites/debug/ejector_slot.png":
-{
- "frame": {"x":866,"y":1443,"w":12,"h":12},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":12,"h":12},
- "sourceSize": {"w":12,"h":12}
-},
-"sprites/misc/hub_direction_indicator.png":
-{
- "frame": {"x":1032,"y":604,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/misc/processor_disabled.png":
-{
- "frame": {"x":1916,"y":598,"w":78,"h":81},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":10,"y":10,"w":78,"h":81},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/misc/processor_disconnected.png":
-{
- "frame": {"x":1856,"y":830,"w":65,"h":84},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":17,"y":8,"w":65,"h":84},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/misc/reader_overlay.png":
-{
- "frame": {"x":1280,"y":1306,"w":104,"h":70},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":20,"y":38,"w":104,"h":70},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/misc/slot_bad_arrow.png":
-{
- "frame": {"x":1216,"y":2007,"w":35,"h":35},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":2,"y":2,"w":35,"h":35},
- "sourceSize": {"w":39,"h":39}
-},
-"sprites/misc/slot_good_arrow.png":
-{
- "frame": {"x":1442,"y":975,"w":35,"h":39},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":2,"y":0,"w":35,"h":39},
- "sourceSize": {"w":39,"h":39}
-},
-"sprites/misc/storage_overlay.png":
-{
- "frame": {"x":1828,"y":780,"w":89,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":1,"w":89,"h":44},
- "sourceSize": {"w":90,"h":45}
-},
-"sprites/misc/waypoint.png":
-{
- "frame": {"x":988,"y":755,"w":38,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":0,"w":38,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/wires/boolean_false.png":
-{
- "frame": {"x":1832,"y":448,"w":31,"h":41},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":5,"w":31,"h":41},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/wires/boolean_true.png":
-{
- "frame": {"x":2017,"y":6,"w":22,"h":41},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":11,"y":5,"w":22,"h":41},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/wires/display/blue.png":
-{
- "frame": {"x":1983,"y":740,"w":47,"h":47},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":1,"w":47,"h":47},
- "sourceSize": {"w":49,"h":49}
-},
-"sprites/wires/display/cyan.png":
-{
- "frame": {"x":1927,"y":795,"w":47,"h":47},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":1,"w":47,"h":47},
- "sourceSize": {"w":49,"h":49}
-},
-"sprites/wires/display/green.png":
-{
- "frame": {"x":1927,"y":848,"w":47,"h":47},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":1,"w":47,"h":47},
- "sourceSize": {"w":49,"h":49}
-},
-"sprites/wires/display/purple.png":
-{
- "frame": {"x":1927,"y":901,"w":47,"h":47},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":1,"w":47,"h":47},
- "sourceSize": {"w":49,"h":49}
-},
-"sprites/wires/display/red.png":
-{
- "frame": {"x":1443,"y":1987,"w":47,"h":47},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":1,"w":47,"h":47},
- "sourceSize": {"w":49,"h":49}
-},
-"sprites/wires/display/white.png":
-{
- "frame": {"x":1496,"y":1987,"w":47,"h":47},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":1,"w":47,"h":47},
- "sourceSize": {"w":49,"h":49}
-},
-"sprites/wires/display/yellow.png":
-{
- "frame": {"x":1948,"y":1266,"w":47,"h":47},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":1,"w":47,"h":47},
- "sourceSize": {"w":49,"h":49}
-},
-"sprites/wires/lever_on.png":
-{
- "frame": {"x":1721,"y":706,"w":101,"h":114},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":21,"y":10,"w":101,"h":114},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/wires/logical_acceptor.png":
-{
- "frame": {"x":1086,"y":604,"w":62,"h":106},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":43,"y":0,"w":62,"h":106},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/wires/logical_ejector.png":
-{
- "frame": {"x":1856,"y":920,"w":60,"h":67},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":44,"y":0,"w":60,"h":67},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/wires/network_conflict.png":
-{
- "frame": {"x":1948,"y":1319,"w":47,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":2,"w":47,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/wires/network_empty.png":
-{
- "frame": {"x":2000,"y":587,"w":41,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":0,"w":41,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/wires/overlay_tile.png":
-{
- "frame": {"x":1832,"y":496,"w":96,"h":96},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/wires/sets/conflict_cross.png":
-{
- "frame": {"x":521,"y":1461,"w":144,"h":144},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":144,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/wires/sets/conflict_forward.png":
-{
- "frame": {"x":1985,"y":6,"w":26,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":59,"y":0,"w":26,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/wires/sets/conflict_split.png":
-{
- "frame": {"x":831,"y":752,"w":144,"h":85},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":59,"w":144,"h":85},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/wires/sets/conflict_turn.png":
-{
- "frame": {"x":1934,"y":496,"w":85,"h":85},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":59,"y":59,"w":85,"h":85},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/wires/sets/first_cross.png":
-{
- "frame": {"x":671,"y":1461,"w":144,"h":144},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":144,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/wires/sets/first_forward.png":
-{
- "frame": {"x":1000,"y":605,"w":26,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":59,"y":0,"w":26,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/wires/sets/first_split.png":
-{
- "frame": {"x":1891,"y":405,"w":144,"h":85},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":59,"w":144,"h":85},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/wires/sets/first_turn.png":
-{
- "frame": {"x":1825,"y":598,"w":85,"h":85},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":59,"y":59,"w":85,"h":85},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/wires/sets/second_cross.png":
-{
- "frame": {"x":671,"y":1611,"w":144,"h":144},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":144,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/wires/sets/second_forward.png":
-{
- "frame": {"x":1816,"y":1674,"w":26,"h":144},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":59,"y":0,"w":26,"h":144},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/wires/sets/second_split.png":
-{
- "frame": {"x":1154,"y":601,"w":144,"h":85},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":59,"w":144,"h":85},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/wires/sets/second_turn.png":
-{
- "frame": {"x":1828,"y":689,"w":85,"h":85},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":59,"y":59,"w":85,"h":85},
- "sourceSize": {"w":144,"h":144}
-},
-"sprites/wires/wires_preview.png":
-{
- "frame": {"x":1032,"y":658,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-}},
-"meta": {
- "app": "https://www.codeandweb.com/texturepacker",
- "version": "1.0",
- "image": "atlas0_hq.png",
- "format": "RGBA8888",
- "size": {"w":2048,"h":2048},
- "scale": "0.75",
- "smartupdate": "$TexturePacker:SmartUpdate:a1c027d325ef1c92a9318164b1241662:a9c9c3627ec9506697a7e24a7a287d67:908b89f5ca8ff73e331a35a3b14d0604$"
-}
-}
diff --git a/res_built/atlas/atlas0_hq.png b/res_built/atlas/atlas0_hq.png
deleted file mode 100644
index df712cd1..00000000
Binary files a/res_built/atlas/atlas0_hq.png and /dev/null differ
diff --git a/res_built/atlas/atlas0_lq.json b/res_built/atlas/atlas0_lq.json
deleted file mode 100644
index abfdebb8..00000000
--- a/res_built/atlas/atlas0_lq.json
+++ /dev/null
@@ -1,1476 +0,0 @@
-{"frames": {
-
-"sprites/belt/built/forward_0.png":
-{
- "frame": {"x":903,"y":557,"w":40,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/forward_1.png":
-{
- "frame": {"x":949,"y":595,"w":40,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/forward_2.png":
-{
- "frame": {"x":190,"y":422,"w":40,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/forward_3.png":
-{
- "frame": {"x":236,"y":422,"w":40,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/forward_4.png":
-{
- "frame": {"x":282,"y":441,"w":40,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/forward_5.png":
-{
- "frame": {"x":328,"y":461,"w":40,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/forward_6.png":
-{
- "frame": {"x":374,"y":461,"w":40,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/forward_7.png":
-{
- "frame": {"x":420,"y":464,"w":40,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/forward_8.png":
-{
- "frame": {"x":506,"y":482,"w":40,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/forward_9.png":
-{
- "frame": {"x":552,"y":525,"w":40,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/forward_10.png":
-{
- "frame": {"x":6,"y":409,"w":40,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/forward_11.png":
-{
- "frame": {"x":52,"y":409,"w":40,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/forward_12.png":
-{
- "frame": {"x":98,"y":409,"w":40,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/forward_13.png":
-{
- "frame": {"x":144,"y":422,"w":40,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/left_0.png":
-{
- "frame": {"x":395,"y":311,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/left_1.png":
-{
- "frame": {"x":445,"y":311,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/left_2.png":
-{
- "frame": {"x":392,"y":361,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/left_3.png":
-{
- "frame": {"x":442,"y":361,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/left_4.png":
-{
- "frame": {"x":492,"y":364,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/left_5.png":
-{
- "frame": {"x":542,"y":382,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/left_6.png":
-{
- "frame": {"x":592,"y":425,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/left_7.png":
-{
- "frame": {"x":642,"y":425,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/left_8.png":
-{
- "frame": {"x":692,"y":426,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/left_9.png":
-{
- "frame": {"x":742,"y":470,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/left_10.png":
-{
- "frame": {"x":192,"y":322,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/left_11.png":
-{
- "frame": {"x":242,"y":322,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/left_12.png":
-{
- "frame": {"x":292,"y":322,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/left_13.png":
-{
- "frame": {"x":342,"y":341,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/right_0.png":
-{
- "frame": {"x":6,"y":359,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/right_1.png":
-{
- "frame": {"x":56,"y":359,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/right_2.png":
-{
- "frame": {"x":306,"y":391,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/right_3.png":
-{
- "frame": {"x":356,"y":411,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/right_4.png":
-{
- "frame": {"x":406,"y":411,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/right_5.png":
-{
- "frame": {"x":456,"y":414,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/right_6.png":
-{
- "frame": {"x":506,"y":432,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/right_7.png":
-{
- "frame": {"x":556,"y":475,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/right_8.png":
-{
- "frame": {"x":606,"y":475,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/right_9.png":
-{
- "frame": {"x":656,"y":476,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/right_10.png":
-{
- "frame": {"x":106,"y":359,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/right_11.png":
-{
- "frame": {"x":156,"y":372,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/right_12.png":
-{
- "frame": {"x":206,"y":372,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/belt/built/right_13.png":
-{
- "frame": {"x":256,"y":372,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/analyzer.png":
-{
- "frame": {"x":936,"y":6,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/balancer-merger-inverse.png":
-{
- "frame": {"x":400,"y":168,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/balancer-merger.png":
-{
- "frame": {"x":612,"y":275,"w":47,"h":47},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":47,"h":47},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/balancer-splitter-inverse.png":
-{
- "frame": {"x":193,"y":214,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/balancer-splitter.png":
-{
- "frame": {"x":665,"y":324,"w":47,"h":47},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":47,"h":47},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/balancer.png":
-{
- "frame": {"x":100,"y":197,"w":87,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":0,"w":87,"h":48},
- "sourceSize": {"w":96,"h":48}
-},
-"sprites/blueprints/belt_left.png":
-{
- "frame": {"x":706,"y":520,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/belt_right.png":
-{
- "frame": {"x":756,"y":520,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/belt_top.png":
-{
- "frame": {"x":598,"y":525,"w":40,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/comparator.png":
-{
- "frame": {"x":667,"y":222,"w":48,"h":45},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":45},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/constant_signal.png":
-{
- "frame": {"x":355,"y":214,"w":36,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":6,"y":0,"w":36,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/cutter-quad.png":
-{
- "frame": {"x":570,"y":6,"w":177,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":7,"y":0,"w":177,"h":48},
- "sourceSize": {"w":192,"h":48}
-},
-"sprites/blueprints/cutter.png":
-{
- "frame": {"x":495,"y":114,"w":87,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":0,"w":87,"h":48},
- "sourceSize": {"w":96,"h":48}
-},
-"sprites/blueprints/display.png":
-{
- "frame": {"x":888,"y":493,"w":44,"h":46},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":2,"y":2,"w":44,"h":46},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/filter.png":
-{
- "frame": {"x":808,"y":60,"w":91,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":91,"h":48},
- "sourceSize": {"w":96,"h":48}
-},
-"sprites/blueprints/item_producer.png":
-{
- "frame": {"x":771,"y":416,"w":45,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":2,"y":0,"w":45,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/lever.png":
-{
- "frame": {"x":864,"y":222,"w":35,"h":41},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":6,"y":2,"w":35,"h":41},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/logic_gate-not.png":
-{
- "frame": {"x":855,"y":545,"w":42,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":3,"y":0,"w":42,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/logic_gate-or.png":
-{
- "frame": {"x":904,"y":347,"w":48,"h":42},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":42},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/logic_gate-xor.png":
-{
- "frame": {"x":247,"y":214,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/logic_gate.png":
-{
- "frame": {"x":667,"y":273,"w":48,"h":45},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":45},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/miner-chainable.png":
-{
- "frame": {"x":721,"y":222,"w":47,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":47,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/miner.png":
-{
- "frame": {"x":721,"y":276,"w":47,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":47,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/mixer.png":
-{
- "frame": {"x":400,"y":114,"w":89,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":3,"y":0,"w":89,"h":48},
- "sourceSize": {"w":96,"h":48}
-},
-"sprites/blueprints/painter-double.png":
-{
- "frame": {"x":196,"y":60,"w":96,"h":94},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":94},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/painter-mirrored.png":
-{
- "frame": {"x":400,"y":60,"w":96,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":48},
- "sourceSize": {"w":96,"h":48}
-},
-"sprites/blueprints/painter-quad.png":
-{
- "frame": {"x":196,"y":6,"w":181,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":3,"y":0,"w":181,"h":48},
- "sourceSize": {"w":192,"h":48}
-},
-"sprites/blueprints/painter.png":
-{
- "frame": {"x":502,"y":60,"w":96,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":48},
- "sourceSize": {"w":96,"h":48}
-},
-"sprites/blueprints/reader.png":
-{
- "frame": {"x":301,"y":214,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/rotater-ccw.png":
-{
- "frame": {"x":6,"y":251,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/rotater-rotate180.png":
-{
- "frame": {"x":60,"y":251,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/rotater.png":
-{
- "frame": {"x":114,"y":251,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/stacker.png":
-{
- "frame": {"x":196,"y":160,"w":89,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":3,"y":0,"w":89,"h":48},
- "sourceSize": {"w":96,"h":48}
-},
-"sprites/blueprints/storage.png":
-{
- "frame": {"x":774,"y":114,"w":84,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":6,"y":0,"w":84,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/transistor-mirrored.png":
-{
- "frame": {"x":466,"y":464,"w":34,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":34,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/transistor.png":
-{
- "frame": {"x":864,"y":114,"w":35,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":35,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/trash.png":
-{
- "frame": {"x":454,"y":168,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/underground_belt_entry-tier2.png":
-{
- "frame": {"x":850,"y":319,"w":48,"h":43},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":5,"w":48,"h":43},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/underground_belt_entry.png":
-{
- "frame": {"x":958,"y":363,"w":48,"h":38},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":10,"w":48,"h":38},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/underground_belt_exit-tier2.png":
-{
- "frame": {"x":904,"y":395,"w":48,"h":38},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":38},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/underground_belt_exit.png":
-{
- "frame": {"x":958,"y":407,"w":48,"h":38},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":38},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/virtual_processor-painter.png":
-{
- "frame": {"x":724,"y":168,"w":44,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":44,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/virtual_processor-rotater.png":
-{
- "frame": {"x":508,"y":168,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/virtual_processor-stacker.png":
-{
- "frame": {"x":895,"y":439,"w":44,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":44,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/virtual_processor-unstacker.png":
-{
- "frame": {"x":562,"y":168,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/virtual_processor.png":
-{
- "frame": {"x":616,"y":168,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/blueprints/wire_tunnel.png":
-{
- "frame": {"x":505,"y":222,"w":48,"h":47},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":47},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/analyzer.png":
-{
- "frame": {"x":670,"y":168,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/balancer-merger-inverse.png":
-{
- "frame": {"x":559,"y":222,"w":48,"h":47},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":47},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/balancer-merger.png":
-{
- "frame": {"x":612,"y":328,"w":47,"h":47},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":47,"h":47},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/balancer-splitter-inverse.png":
-{
- "frame": {"x":613,"y":222,"w":48,"h":47},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":47},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/balancer-splitter.png":
-{
- "frame": {"x":558,"y":329,"w":47,"h":47},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":47,"h":47},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/balancer.png":
-{
- "frame": {"x":588,"y":114,"w":87,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":0,"w":87,"h":48},
- "sourceSize": {"w":96,"h":48}
-},
-"sprites/buildings/belt_left.png":
-{
- "frame": {"x":395,"y":311,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/belt_right.png":
-{
- "frame": {"x":6,"y":359,"w":44,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/belt_top.png":
-{
- "frame": {"x":903,"y":557,"w":40,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/comparator.png":
-{
- "frame": {"x":774,"y":270,"w":48,"h":45},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":45},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/constant_signal.png":
-{
- "frame": {"x":863,"y":269,"w":36,"h":44},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":6,"y":0,"w":36,"h":44},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/cutter-quad.png":
-{
- "frame": {"x":753,"y":6,"w":177,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":7,"y":0,"w":177,"h":48},
- "sourceSize": {"w":192,"h":48}
-},
-"sprites/buildings/cutter.png":
-{
- "frame": {"x":681,"y":114,"w":87,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":0,"w":87,"h":48},
- "sourceSize": {"w":96,"h":48}
-},
-"sprites/buildings/display.png":
-{
- "frame": {"x":938,"y":505,"w":44,"h":46},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":2,"y":2,"w":44,"h":46},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/filter.png":
-{
- "frame": {"x":905,"y":83,"w":90,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":0,"w":90,"h":48},
- "sourceSize": {"w":96,"h":48}
-},
-"sprites/buildings/hub.png":
-{
- "frame": {"x":6,"y":6,"w":184,"h":185},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":4,"w":184,"h":185},
- "sourceSize": {"w":192,"h":192}
-},
-"sprites/buildings/item_producer.png":
-{
- "frame": {"x":844,"y":416,"w":45,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":2,"y":0,"w":45,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/lever.png":
-{
- "frame": {"x":684,"y":570,"w":34,"h":40},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":7,"y":2,"w":34,"h":40},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/logic_gate-not.png":
-{
- "frame": {"x":806,"y":524,"w":43,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":3,"y":0,"w":43,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/logic_gate-or.png":
-{
- "frame": {"x":850,"y":368,"w":48,"h":42},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":42},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/logic_gate-xor.png":
-{
- "frame": {"x":774,"y":216,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/logic_gate.png":
-{
- "frame": {"x":774,"y":321,"w":48,"h":45},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":45},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/miner-chainable.png":
-{
- "frame": {"x":559,"y":275,"w":47,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":47,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/miner.png":
-{
- "frame": {"x":505,"y":310,"w":47,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":47,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/mixer.png":
-{
- "frame": {"x":291,"y":160,"w":88,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":88,"h":48},
- "sourceSize": {"w":96,"h":48}
-},
-"sprites/buildings/painter-double.png":
-{
- "frame": {"x":298,"y":60,"w":96,"h":94},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":94},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/painter-mirrored.png":
-{
- "frame": {"x":604,"y":60,"w":96,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":48},
- "sourceSize": {"w":96,"h":48}
-},
-"sprites/buildings/painter-quad.png":
-{
- "frame": {"x":383,"y":6,"w":181,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":3,"y":0,"w":181,"h":48},
- "sourceSize": {"w":192,"h":48}
-},
-"sprites/buildings/painter.png":
-{
- "frame": {"x":706,"y":60,"w":96,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":48},
- "sourceSize": {"w":96,"h":48}
-},
-"sprites/buildings/reader.png":
-{
- "frame": {"x":905,"y":239,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/rotater-ccw.png":
-{
- "frame": {"x":905,"y":293,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/rotater-rotate180.png":
-{
- "frame": {"x":959,"y":309,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/rotater.png":
-{
- "frame": {"x":397,"y":222,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/stacker.png":
-{
- "frame": {"x":6,"y":197,"w":88,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":88,"h":48},
- "sourceSize": {"w":96,"h":48}
-},
-"sprites/buildings/storage.png":
-{
- "frame": {"x":905,"y":137,"w":84,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":6,"y":0,"w":84,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/transistor-mirrored.png":
-{
- "frame": {"x":644,"y":526,"w":34,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":34,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/transistor.png":
-{
- "frame": {"x":864,"y":168,"w":35,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":35,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/trash.png":
-{
- "frame": {"x":192,"y":268,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/underground_belt_entry-tier2.png":
-{
- "frame": {"x":665,"y":377,"w":47,"h":42},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":6,"w":47,"h":42},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/underground_belt_entry.png":
-{
- "frame": {"x":611,"y":381,"w":47,"h":38},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":10,"w":47,"h":38},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/underground_belt_exit-tier2.png":
-{
- "frame": {"x":771,"y":372,"w":47,"h":38},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":47,"h":38},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/underground_belt_exit.png":
-{
- "frame": {"x":718,"y":382,"w":47,"h":38},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":47,"h":38},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/virtual_processor-painter.png":
-{
- "frame": {"x":838,"y":470,"w":44,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":44,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/virtual_processor-rotater.png":
-{
- "frame": {"x":246,"y":268,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/virtual_processor-stacker.png":
-{
- "frame": {"x":945,"y":451,"w":44,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":4,"y":0,"w":44,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/virtual_processor-unstacker.png":
-{
- "frame": {"x":300,"y":268,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/virtual_processor.png":
-{
- "frame": {"x":6,"y":305,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/buildings/wire_tunnel.png":
-{
- "frame": {"x":718,"y":330,"w":47,"h":46},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":1,"w":47,"h":46},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/colors/blue.png":
-{
- "frame": {"x":995,"y":213,"w":18,"h":18},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":18,"h":18},
- "sourceSize": {"w":18,"h":18}
-},
-"sprites/colors/cyan.png":
-{
- "frame": {"x":995,"y":237,"w":18,"h":18},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":18,"h":18},
- "sourceSize": {"w":18,"h":18}
-},
-"sprites/colors/green.png":
-{
- "frame": {"x":168,"y":251,"w":18,"h":18},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":18,"h":18},
- "sourceSize": {"w":18,"h":18}
-},
-"sprites/colors/purple.png":
-{
- "frame": {"x":994,"y":261,"w":18,"h":18},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":18,"h":18},
- "sourceSize": {"w":18,"h":18}
-},
-"sprites/colors/red.png":
-{
- "frame": {"x":994,"y":285,"w":18,"h":18},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":18,"h":18},
- "sourceSize": {"w":18,"h":18}
-},
-"sprites/colors/uncolored.png":
-{
- "frame": {"x":168,"y":275,"w":18,"h":18},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":18,"h":18},
- "sourceSize": {"w":18,"h":18}
-},
-"sprites/colors/white.png":
-{
- "frame": {"x":168,"y":299,"w":18,"h":18},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":18,"h":18},
- "sourceSize": {"w":18,"h":18}
-},
-"sprites/colors/yellow.png":
-{
- "frame": {"x":828,"y":272,"w":18,"h":18},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":18,"h":18},
- "sourceSize": {"w":18,"h":18}
-},
-"sprites/debug/acceptor_slot.png":
-{
- "frame": {"x":385,"y":181,"w":4,"h":4},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":4,"h":4},
- "sourceSize": {"w":4,"h":4}
-},
-"sprites/debug/ejector_slot.png":
-{
- "frame": {"x":385,"y":191,"w":4,"h":4},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":4,"h":4},
- "sourceSize": {"w":4,"h":4}
-},
-"sprites/misc/hub_direction_indicator.png":
-{
- "frame": {"x":905,"y":60,"w":16,"h":16},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":16,"h":16},
- "sourceSize": {"w":16,"h":16}
-},
-"sprites/misc/processor_disabled.png":
-{
- "frame": {"x":990,"y":6,"w":28,"h":29},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":2,"y":2,"w":28,"h":29},
- "sourceSize": {"w":32,"h":32}
-},
-"sprites/misc/processor_disconnected.png":
-{
- "frame": {"x":995,"y":149,"w":23,"h":29},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":2,"w":23,"h":29},
- "sourceSize": {"w":32,"h":32}
-},
-"sprites/misc/reader_overlay.png":
-{
- "frame": {"x":355,"y":264,"w":36,"h":25},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":6,"y":12,"w":36,"h":25},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/misc/slot_bad_arrow.png":
-{
- "frame": {"x":971,"y":60,"w":13,"h":13},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
- "sourceSize": {"w":13,"h":13}
-},
-"sprites/misc/slot_good_arrow.png":
-{
- "frame": {"x":822,"y":428,"w":13,"h":13},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
- "sourceSize": {"w":13,"h":13}
-},
-"sprites/misc/storage_overlay.png":
-{
- "frame": {"x":828,"y":216,"w":30,"h":15},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":30,"h":15},
- "sourceSize": {"w":30,"h":15}
-},
-"sprites/misc/waypoint.png":
-{
- "frame": {"x":824,"y":406,"w":14,"h":16},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":14,"h":16},
- "sourceSize": {"w":16,"h":16}
-},
-"sprites/wires/boolean_false.png":
-{
- "frame": {"x":822,"y":447,"w":12,"h":15},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":2,"y":1,"w":12,"h":15},
- "sourceSize": {"w":16,"h":16}
-},
-"sprites/wires/boolean_true.png":
-{
- "frame": {"x":385,"y":160,"w":9,"h":15},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":3,"y":1,"w":9,"h":15},
- "sourceSize": {"w":16,"h":16}
-},
-"sprites/wires/display/blue.png":
-{
- "frame": {"x":927,"y":60,"w":16,"h":16},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":16,"h":16},
- "sourceSize": {"w":16,"h":16}
-},
-"sprites/wires/display/cyan.png":
-{
- "frame": {"x":949,"y":60,"w":16,"h":16},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":16,"h":16},
- "sourceSize": {"w":16,"h":16}
-},
-"sprites/wires/display/green.png":
-{
- "frame": {"x":1001,"y":83,"w":16,"h":16},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":16,"h":16},
- "sourceSize": {"w":16,"h":16}
-},
-"sprites/wires/display/purple.png":
-{
- "frame": {"x":1001,"y":105,"w":16,"h":16},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":16,"h":16},
- "sourceSize": {"w":16,"h":16}
-},
-"sprites/wires/display/red.png":
-{
- "frame": {"x":1001,"y":127,"w":16,"h":16},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":16,"h":16},
- "sourceSize": {"w":16,"h":16}
-},
-"sprites/wires/display/white.png":
-{
- "frame": {"x":828,"y":296,"w":16,"h":16},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":16,"h":16},
- "sourceSize": {"w":16,"h":16}
-},
-"sprites/wires/display/yellow.png":
-{
- "frame": {"x":828,"y":318,"w":16,"h":16},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":16,"h":16},
- "sourceSize": {"w":16,"h":16}
-},
-"sprites/wires/lever_on.png":
-{
- "frame": {"x":354,"y":295,"w":35,"h":40},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":6,"y":2,"w":35,"h":40},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/wires/logical_acceptor.png":
-{
- "frame": {"x":990,"y":41,"w":23,"h":36},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":13,"y":0,"w":23,"h":36},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/wires/logical_ejector.png":
-{
- "frame": {"x":995,"y":184,"w":22,"h":23},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":22,"h":23},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/wires/network_conflict.png":
-{
- "frame": {"x":828,"y":340,"w":16,"h":16},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":16,"h":16},
- "sourceSize": {"w":16,"h":16}
-},
-"sprites/wires/network_empty.png":
-{
- "frame": {"x":824,"y":384,"w":15,"h":16},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":15,"h":16},
- "sourceSize": {"w":16,"h":16}
-},
-"sprites/wires/overlay_tile.png":
-{
- "frame": {"x":949,"y":557,"w":32,"h":32},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":32,"h":32},
- "sourceSize": {"w":32,"h":32}
-},
-"sprites/wires/sets/conflict_cross.png":
-{
- "frame": {"x":60,"y":305,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/wires/sets/conflict_forward.png":
-{
- "frame": {"x":822,"y":468,"w":10,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":19,"y":0,"w":10,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/wires/sets/conflict_split.png":
-{
- "frame": {"x":505,"y":275,"w":48,"h":29},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":19,"w":48,"h":29},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/wires/sets/conflict_turn.png":
-{
- "frame": {"x":828,"y":237,"w":29,"h":29},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":19,"y":19,"w":29,"h":29},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/wires/sets/first_cross.png":
-{
- "frame": {"x":114,"y":305,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/wires/sets/first_forward.png":
-{
- "frame": {"x":995,"y":451,"w":10,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":19,"y":0,"w":10,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/wires/sets/first_split.png":
-{
- "frame": {"x":397,"y":276,"w":48,"h":29},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":19,"w":48,"h":29},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/wires/sets/first_turn.png":
-{
- "frame": {"x":959,"y":239,"w":29,"h":29},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":19,"y":19,"w":29,"h":29},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/wires/sets/second_cross.png":
-{
- "frame": {"x":451,"y":222,"w":48,"h":48},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/wires/sets/second_forward.png":
-{
- "frame": {"x":988,"y":505,"w":10,"h":48},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":19,"y":0,"w":10,"h":48},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/wires/sets/second_split.png":
-{
- "frame": {"x":451,"y":276,"w":48,"h":29},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":19,"w":48,"h":29},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/wires/sets/second_turn.png":
-{
- "frame": {"x":959,"y":274,"w":29,"h":29},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":19,"y":19,"w":29,"h":29},
- "sourceSize": {"w":48,"h":48}
-},
-"sprites/wires/wires_preview.png":
-{
- "frame": {"x":828,"y":362,"w":16,"h":16},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":16,"h":16},
- "sourceSize": {"w":16,"h":16}
-}},
-"meta": {
- "app": "https://www.codeandweb.com/texturepacker",
- "version": "1.0",
- "image": "atlas0_lq.png",
- "format": "RGBA8888",
- "size": {"w":1024,"h":1024},
- "scale": "0.25",
- "smartupdate": "$TexturePacker:SmartUpdate:a1c027d325ef1c92a9318164b1241662:a9c9c3627ec9506697a7e24a7a287d67:908b89f5ca8ff73e331a35a3b14d0604$"
-}
-}
diff --git a/res_built/atlas/atlas0_lq.png b/res_built/atlas/atlas0_lq.png
deleted file mode 100644
index b70c3887..00000000
Binary files a/res_built/atlas/atlas0_lq.png and /dev/null differ
diff --git a/res_built/atlas/atlas0_mq.json b/res_built/atlas/atlas0_mq.json
deleted file mode 100644
index b3e4d061..00000000
--- a/res_built/atlas/atlas0_mq.json
+++ /dev/null
@@ -1,1476 +0,0 @@
-{"frames": {
-
-"sprites/belt/built/forward_0.png":
-{
- "frame": {"x":568,"y":822,"w":78,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/forward_1.png":
-{
- "frame": {"x":568,"y":924,"w":78,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/forward_2.png":
-{
- "frame": {"x":342,"y":1897,"w":78,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/forward_3.png":
-{
- "frame": {"x":864,"y":1536,"w":78,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/forward_4.png":
-{
- "frame": {"x":766,"y":1576,"w":78,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/forward_5.png":
-{
- "frame": {"x":666,"y":1656,"w":78,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/forward_6.png":
-{
- "frame": {"x":568,"y":1723,"w":78,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/forward_7.png":
-{
- "frame": {"x":471,"y":1795,"w":78,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/forward_8.png":
-{
- "frame": {"x":426,"y":1897,"w":78,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/forward_9.png":
-{
- "frame": {"x":510,"y":1897,"w":78,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/forward_10.png":
-{
- "frame": {"x":6,"y":1940,"w":78,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/forward_11.png":
-{
- "frame": {"x":90,"y":1940,"w":78,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/forward_12.png":
-{
- "frame": {"x":174,"y":1940,"w":78,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/forward_13.png":
-{
- "frame": {"x":258,"y":1905,"w":78,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/left_0.png":
-{
- "frame": {"x":103,"y":1466,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/left_1.png":
-{
- "frame": {"x":6,"y":1487,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/left_2.png":
-{
- "frame": {"x":99,"y":1559,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/left_3.png":
-{
- "frame": {"x":6,"y":1580,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/left_4.png":
-{
- "frame": {"x":585,"y":1444,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/left_5.png":
-{
- "frame": {"x":487,"y":1516,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/left_6.png":
-{
- "frame": {"x":387,"y":1538,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/left_7.png":
-{
- "frame": {"x":289,"y":1618,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/left_8.png":
-{
- "frame": {"x":192,"y":1626,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/left_9.png":
-{
- "frame": {"x":99,"y":1652,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/left_10.png":
-{
- "frame": {"x":492,"y":1423,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/left_11.png":
-{
- "frame": {"x":394,"y":1445,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/left_12.png":
-{
- "frame": {"x":294,"y":1525,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/left_13.png":
-{
- "frame": {"x":196,"y":1533,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/right_0.png":
-{
- "frame": {"x":6,"y":1673,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/right_1.png":
-{
- "frame": {"x":678,"y":1470,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/right_2.png":
-{
- "frame": {"x":192,"y":1719,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/right_3.png":
-{
- "frame": {"x":99,"y":1745,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/right_4.png":
-{
- "frame": {"x":6,"y":1766,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/right_5.png":
-{
- "frame": {"x":771,"y":1483,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/right_6.png":
-{
- "frame": {"x":673,"y":1563,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/right_7.png":
-{
- "frame": {"x":573,"y":1630,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/right_8.png":
-{
- "frame": {"x":475,"y":1702,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/right_9.png":
-{
- "frame": {"x":378,"y":1724,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/right_10.png":
-{
- "frame": {"x":580,"y":1537,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/right_11.png":
-{
- "frame": {"x":480,"y":1609,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/right_12.png":
-{
- "frame": {"x":382,"y":1631,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/belt/built/right_13.png":
-{
- "frame": {"x":285,"y":1711,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/analyzer.png":
-{
- "frame": {"x":573,"y":414,"w":96,"h":96},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/balancer-merger-inverse.png":
-{
- "frame": {"x":794,"y":1206,"w":95,"h":93},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":1,"w":95,"h":93},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/balancer-merger.png":
-{
- "frame": {"x":925,"y":545,"w":93,"h":93},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":3,"y":1,"w":93,"h":93},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/balancer-splitter-inverse.png":
-{
- "frame": {"x":689,"y":1274,"w":95,"h":93},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":1,"w":95,"h":93},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/balancer-splitter.png":
-{
- "frame": {"x":451,"y":1244,"w":93,"h":93},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":3,"y":1,"w":93,"h":93},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/balancer.png":
-{
- "frame": {"x":722,"y":697,"w":172,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":11,"y":0,"w":172,"h":96},
- "sourceSize": {"w":192,"h":96}
-},
-"sprites/blueprints/belt_left.png":
-{
- "frame": {"x":285,"y":1804,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/belt_right.png":
-{
- "frame": {"x":192,"y":1812,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/belt_top.png":
-{
- "frame": {"x":850,"y":1638,"w":78,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/comparator.png":
-{
- "frame": {"x":461,"y":1023,"w":96,"h":89},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":89},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/constant_signal.png":
-{
- "frame": {"x":941,"y":6,"w":71,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":13,"y":0,"w":71,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/cutter-quad.png":
-{
- "frame": {"x":378,"y":210,"w":351,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":16,"y":0,"w":351,"h":96},
- "sourceSize": {"w":384,"h":96}
-},
-"sprites/blueprints/cutter.png":
-{
- "frame": {"x":374,"y":720,"w":172,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":11,"y":0,"w":172,"h":96},
- "sourceSize": {"w":192,"h":96}
-},
-"sprites/blueprints/display.png":
-{
- "frame": {"x":932,"y":448,"w":86,"h":91},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":5,"w":86,"h":91},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/filter.png":
-{
- "frame": {"x":725,"y":493,"w":180,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":10,"y":0,"w":180,"h":96},
- "sourceSize": {"w":192,"h":96}
-},
-"sprites/blueprints/item_producer.png":
-{
- "frame": {"x":804,"y":799,"w":88,"h":95},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":0,"w":88,"h":95},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/lever.png":
-{
- "frame": {"x":285,"y":876,"w":68,"h":78},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":6,"w":68,"h":78},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/logic_gate-not.png":
-{
- "frame": {"x":563,"y":1026,"w":83,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":7,"y":0,"w":83,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/logic_gate-or.png":
-{
- "frame": {"x":694,"y":1084,"w":96,"h":82},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":82},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/logic_gate-xor.png":
-{
- "frame": {"x":560,"y":516,"w":96,"h":96},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/logic_gate.png":
-{
- "frame": {"x":357,"y":1024,"w":96,"h":89},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":89},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/miner-chainable.png":
-{
- "frame": {"x":886,"y":1434,"w":92,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":3,"y":0,"w":92,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/miner.png":
-{
- "frame": {"x":105,"y":1263,"w":92,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":3,"y":0,"w":92,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/mixer.png":
-{
- "frame": {"x":6,"y":583,"w":175,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":8,"y":0,"w":175,"h":96},
- "sourceSize": {"w":192,"h":96}
-},
-"sprites/blueprints/painter-double.png":
-{
- "frame": {"x":743,"y":6,"w":192,"h":187},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":192,"h":187},
- "sourceSize": {"w":192,"h":192}
-},
-"sprites/blueprints/painter-mirrored.png":
-{
- "frame": {"x":734,"y":391,"w":192,"h":96},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":192,"h":96},
- "sourceSize": {"w":192,"h":96}
-},
-"sprites/blueprints/painter-quad.png":
-{
- "frame": {"x":378,"y":6,"w":359,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":8,"y":0,"w":359,"h":96},
- "sourceSize": {"w":384,"h":96}
-},
-"sprites/blueprints/painter.png":
-{
- "frame": {"x":6,"y":379,"w":192,"h":96},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":192,"h":96},
- "sourceSize": {"w":192,"h":96}
-},
-"sprites/blueprints/reader.png":
-{
- "frame": {"x":796,"y":1002,"w":95,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":95,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/rotater-ccw.png":
-{
- "frame": {"x":905,"y":644,"w":96,"h":96},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/rotater-rotate180.png":
-{
- "frame": {"x":554,"y":618,"w":96,"h":96},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/rotater.png":
-{
- "frame": {"x":900,"y":746,"w":96,"h":96},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/stacker.png":
-{
- "frame": {"x":6,"y":685,"w":175,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":8,"y":0,"w":175,"h":96},
- "sourceSize": {"w":192,"h":96}
-},
-"sprites/blueprints/storage.png":
-{
- "frame": {"x":204,"y":379,"w":165,"h":192},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":0,"w":165,"h":192},
- "sourceSize": {"w":192,"h":192}
-},
-"sprites/blueprints/transistor-mirrored.png":
-{
- "frame": {"x":108,"y":972,"w":67,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":29,"y":0,"w":67,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/transistor.png":
-{
- "frame": {"x":941,"y":244,"w":68,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":68,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/trash.png":
-{
- "frame": {"x":552,"y":720,"w":96,"h":96},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/underground_belt_entry-tier2.png":
-{
- "frame": {"x":180,"y":1173,"w":93,"h":84},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":2,"y":12,"w":93,"h":84},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/underground_belt_entry.png":
-{
- "frame": {"x":890,"y":1353,"w":93,"h":75},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":2,"y":21,"w":93,"h":75},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/underground_belt_exit-tier2.png":
-{
- "frame": {"x":351,"y":1182,"w":94,"h":75},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":2,"y":0,"w":94,"h":75},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/underground_belt_exit.png":
-{
- "frame": {"x":787,"y":1402,"w":93,"h":75},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":2,"y":0,"w":93,"h":75},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/virtual_processor-painter.png":
-{
- "frame": {"x":804,"y":900,"w":87,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":0,"w":87,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/virtual_processor-rotater.png":
-{
- "frame": {"x":466,"y":923,"w":96,"h":94},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":2,"w":96,"h":94},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/virtual_processor-stacker.png":
-{
- "frame": {"x":557,"y":1224,"w":87,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":0,"w":87,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/virtual_processor-unstacker.png":
-{
- "frame": {"x":702,"y":799,"w":96,"h":96},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/virtual_processor.png":
-{
- "frame": {"x":359,"y":924,"w":96,"h":94},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":2,"w":96,"h":94},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/blueprints/wire_tunnel.png":
-{
- "frame": {"x":550,"y":1326,"w":93,"h":91},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":2,"y":2,"w":93,"h":91},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/analyzer.png":
-{
- "frame": {"x":898,"y":848,"w":96,"h":96},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/balancer-merger-inverse.png":
-{
- "frame": {"x":790,"y":1305,"w":94,"h":91},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":2,"w":94,"h":91},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/balancer-merger.png":
-{
- "frame": {"x":688,"y":1373,"w":93,"h":91},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":3,"y":2,"w":93,"h":91},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/balancer-splitter-inverse.png":
-{
- "frame": {"x":895,"y":1256,"w":95,"h":91},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":2,"w":95,"h":91},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/balancer-splitter.png":
-{
- "frame": {"x":6,"y":1193,"w":93,"h":91},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":3,"y":2,"w":93,"h":91},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/balancer.png":
-{
- "frame": {"x":187,"y":774,"w":171,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":11,"y":0,"w":171,"h":96},
- "sourceSize": {"w":192,"h":96}
-},
-"sprites/buildings/belt_left.png":
-{
- "frame": {"x":103,"y":1466,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/belt_right.png":
-{
- "frame": {"x":6,"y":1673,"w":87,"h":87},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/belt_top.png":
-{
- "frame": {"x":568,"y":822,"w":78,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/comparator.png":
-{
- "frame": {"x":180,"y":1078,"w":96,"h":89},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":89},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/constant_signal.png":
-{
- "frame": {"x":941,"y":99,"w":70,"h":86},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":13,"y":0,"w":70,"h":86},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/cutter-quad.png":
-{
- "frame": {"x":378,"y":312,"w":350,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":16,"y":0,"w":350,"h":96},
- "sourceSize": {"w":384,"h":96}
-},
-"sprites/buildings/cutter.png":
-{
- "frame": {"x":6,"y":787,"w":171,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":11,"y":0,"w":171,"h":96},
- "sourceSize": {"w":192,"h":96}
-},
-"sprites/buildings/display.png":
-{
- "frame": {"x":561,"y":1128,"w":84,"h":90},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":6,"y":6,"w":84,"h":90},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/filter.png":
-{
- "frame": {"x":375,"y":516,"w":179,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":11,"y":0,"w":179,"h":96},
- "sourceSize": {"w":192,"h":96}
-},
-"sprites/buildings/hub.png":
-{
- "frame": {"x":6,"y":6,"w":366,"h":367},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":10,"w":366,"h":367},
- "sourceSize": {"w":384,"h":384}
-},
-"sprites/buildings/item_producer.png":
-{
- "frame": {"x":201,"y":1432,"w":87,"h":95},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":5,"y":0,"w":87,"h":95},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/lever.png":
-{
- "frame": {"x":108,"y":1074,"w":66,"h":77},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":15,"y":6,"w":66,"h":77},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/logic_gate-not.png":
-{
- "frame": {"x":99,"y":1838,"w":82,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":8,"y":0,"w":82,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/logic_gate-or.png":
-{
- "frame": {"x":694,"y":995,"w":96,"h":83},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":83},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/logic_gate-xor.png":
-{
- "frame": {"x":466,"y":822,"w":96,"h":95},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":95},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/logic_gate.png":
-{
- "frame": {"x":694,"y":901,"w":96,"h":88},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":88},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/miner-chainable.png":
-{
- "frame": {"x":104,"y":1365,"w":91,"h":95},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":3,"y":0,"w":91,"h":95},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/miner.png":
-{
- "frame": {"x":6,"y":1386,"w":91,"h":95},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":3,"y":0,"w":91,"h":95},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/mixer.png":
-{
- "frame": {"x":725,"y":595,"w":174,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":0,"w":174,"h":96},
- "sourceSize": {"w":192,"h":96}
-},
-"sprites/buildings/painter-double.png":
-{
- "frame": {"x":743,"y":199,"w":192,"h":186},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":192,"h":186},
- "sourceSize": {"w":192,"h":192}
-},
-"sprites/buildings/painter-mirrored.png":
-{
- "frame": {"x":6,"y":481,"w":192,"h":96},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":192,"h":96},
- "sourceSize": {"w":192,"h":96}
-},
-"sprites/buildings/painter-quad.png":
-{
- "frame": {"x":378,"y":108,"w":359,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":8,"y":0,"w":359,"h":96},
- "sourceSize": {"w":384,"h":96}
-},
-"sprites/buildings/painter.png":
-{
- "frame": {"x":375,"y":414,"w":192,"h":96},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":192,"h":96},
- "sourceSize": {"w":192,"h":96}
-},
-"sprites/buildings/reader.png":
-{
- "frame": {"x":897,"y":1052,"w":95,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":95,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/rotater-ccw.png":
-{
- "frame": {"x":796,"y":1104,"w":95,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":95,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/rotater-rotate180.png":
-{
- "frame": {"x":693,"y":1172,"w":95,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":95,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/rotater.png":
-{
- "frame": {"x":897,"y":1154,"w":95,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":95,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/stacker.png":
-{
- "frame": {"x":374,"y":618,"w":174,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":0,"w":174,"h":96},
- "sourceSize": {"w":192,"h":96}
-},
-"sprites/buildings/storage.png":
-{
- "frame": {"x":204,"y":577,"w":164,"h":191},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":1,"w":164,"h":191},
- "sourceSize": {"w":192,"h":192}
-},
-"sprites/buildings/transistor-mirrored.png":
-{
- "frame": {"x":285,"y":960,"w":66,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":30,"y":0,"w":66,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/transistor.png":
-{
- "frame": {"x":941,"y":346,"w":68,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":0,"w":68,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/trash.png":
-{
- "frame": {"x":897,"y":950,"w":96,"h":96},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/underground_belt_entry-tier2.png":
-{
- "frame": {"x":203,"y":1263,"w":92,"h":83},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":3,"y":13,"w":92,"h":83},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/underground_belt_entry.png":
-{
- "frame": {"x":301,"y":1263,"w":92,"h":74},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":3,"y":22,"w":92,"h":74},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/underground_belt_exit-tier2.png":
-{
- "frame": {"x":301,"y":1343,"w":92,"h":74},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":3,"y":0,"w":92,"h":74},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/underground_belt_exit.png":
-{
- "frame": {"x":203,"y":1352,"w":92,"h":74},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":3,"y":0,"w":92,"h":74},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/virtual_processor-painter.png":
-{
- "frame": {"x":399,"y":1343,"w":87,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":0,"w":87,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/virtual_processor-rotater.png":
-{
- "frame": {"x":181,"y":978,"w":96,"h":94},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":2,"w":96,"h":94},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/virtual_processor-stacker.png":
-{
- "frame": {"x":301,"y":1423,"w":87,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":9,"y":0,"w":87,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/virtual_processor-unstacker.png":
-{
- "frame": {"x":364,"y":822,"w":96,"h":96},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/virtual_processor.png":
-{
- "frame": {"x":6,"y":1093,"w":96,"h":94},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":2,"w":96,"h":94},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/buildings/wire_tunnel.png":
-{
- "frame": {"x":6,"y":1290,"w":92,"h":90},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":3,"y":3,"w":92,"h":90},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/colors/blue.png":
-{
- "frame": {"x":652,"y":891,"w":36,"h":34},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":2,"w":36,"h":34},
- "sourceSize": {"w":36,"h":36}
-},
-"sprites/colors/cyan.png":
-{
- "frame": {"x":652,"y":931,"w":36,"h":34},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":2,"w":36,"h":34},
- "sourceSize": {"w":36,"h":36}
-},
-"sprites/colors/green.png":
-{
- "frame": {"x":652,"y":971,"w":36,"h":34},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":2,"w":36,"h":34},
- "sourceSize": {"w":36,"h":36}
-},
-"sprites/colors/purple.png":
-{
- "frame": {"x":652,"y":1011,"w":36,"h":34},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":2,"w":36,"h":34},
- "sourceSize": {"w":36,"h":36}
-},
-"sprites/colors/red.png":
-{
- "frame": {"x":652,"y":1051,"w":36,"h":34},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":2,"w":36,"h":34},
- "sourceSize": {"w":36,"h":36}
-},
-"sprites/colors/uncolored.png":
-{
- "frame": {"x":652,"y":1091,"w":36,"h":34},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":2,"w":36,"h":34},
- "sourceSize": {"w":36,"h":36}
-},
-"sprites/colors/white.png":
-{
- "frame": {"x":651,"y":1131,"w":36,"h":34},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":2,"w":36,"h":34},
- "sourceSize": {"w":36,"h":36}
-},
-"sprites/colors/yellow.png":
-{
- "frame": {"x":651,"y":1171,"w":36,"h":34},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":2,"w":36,"h":34},
- "sourceSize": {"w":36,"h":36}
-},
-"sprites/debug/acceptor_slot.png":
-{
- "frame": {"x":911,"y":527,"w":8,"h":8},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":8,"h":8},
- "sourceSize": {"w":8,"h":8}
-},
-"sprites/debug/ejector_slot.png":
-{
- "frame": {"x":911,"y":541,"w":8,"h":8},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":8,"h":8},
- "sourceSize": {"w":8,"h":8}
-},
-"sprites/misc/hub_direction_indicator.png":
-{
- "frame": {"x":649,"y":1406,"w":32,"h":32},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":32,"h":32},
- "sourceSize": {"w":32,"h":32}
-},
-"sprites/misc/processor_disabled.png":
-{
- "frame": {"x":675,"y":414,"w":53,"h":55},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":6,"y":6,"w":53,"h":55},
- "sourceSize": {"w":64,"h":64}
-},
-"sprites/misc/processor_disconnected.png":
-{
- "frame": {"x":675,"y":475,"w":44,"h":57},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":11,"y":5,"w":44,"h":57},
- "sourceSize": {"w":64,"h":64}
-},
-"sprites/misc/reader_overlay.png":
-{
- "frame": {"x":941,"y":191,"w":70,"h":47},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":13,"y":25,"w":70,"h":47},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/misc/slot_bad_arrow.png":
-{
- "frame": {"x":321,"y":1202,"w":24,"h":24},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":1,"w":24,"h":24},
- "sourceSize": {"w":26,"h":26}
-},
-"sprites/misc/slot_good_arrow.png":
-{
- "frame": {"x":321,"y":1170,"w":24,"h":26},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":1,"y":0,"w":24,"h":26},
- "sourceSize": {"w":26,"h":26}
-},
-"sprites/misc/storage_overlay.png":
-{
- "frame": {"x":656,"y":664,"w":60,"h":30},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":60,"h":30},
- "sourceSize": {"w":60,"h":30}
-},
-"sprites/misc/waypoint.png":
-{
- "frame": {"x":321,"y":1132,"w":26,"h":32},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":3,"y":0,"w":26,"h":32},
- "sourceSize": {"w":32,"h":32}
-},
-"sprites/wires/boolean_false.png":
-{
- "frame": {"x":996,"y":1256,"w":21,"h":28},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":6,"y":3,"w":21,"h":28},
- "sourceSize": {"w":32,"h":32}
-},
-"sprites/wires/boolean_true.png":
-{
- "frame": {"x":911,"y":493,"w":15,"h":28},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":7,"y":3,"w":15,"h":28},
- "sourceSize": {"w":32,"h":32}
-},
-"sprites/wires/display/blue.png":
-{
- "frame": {"x":651,"y":1211,"w":33,"h":33},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":33,"h":33},
- "sourceSize": {"w":33,"h":33}
-},
-"sprites/wires/display/cyan.png":
-{
- "frame": {"x":650,"y":1250,"w":33,"h":33},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":33,"h":33},
- "sourceSize": {"w":33,"h":33}
-},
-"sprites/wires/display/green.png":
-{
- "frame": {"x":650,"y":1289,"w":33,"h":33},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":33,"h":33},
- "sourceSize": {"w":33,"h":33}
-},
-"sprites/wires/display/purple.png":
-{
- "frame": {"x":282,"y":1132,"w":33,"h":33},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":33,"h":33},
- "sourceSize": {"w":33,"h":33}
-},
-"sprites/wires/display/red.png":
-{
- "frame": {"x":282,"y":1171,"w":33,"h":33},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":33,"h":33},
- "sourceSize": {"w":33,"h":33}
-},
-"sprites/wires/display/white.png":
-{
- "frame": {"x":649,"y":1328,"w":33,"h":33},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":33,"h":33},
- "sourceSize": {"w":33,"h":33}
-},
-"sprites/wires/display/yellow.png":
-{
- "frame": {"x":649,"y":1367,"w":33,"h":33},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":33,"h":33},
- "sourceSize": {"w":33,"h":33}
-},
-"sprites/wires/lever_on.png":
-{
- "frame": {"x":108,"y":889,"w":68,"h":77},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":14,"y":6,"w":68,"h":77},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/wires/logical_acceptor.png":
-{
- "frame": {"x":654,"y":763,"w":42,"h":71},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":28,"y":0,"w":42,"h":71},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/wires/logical_ejector.png":
-{
- "frame": {"x":652,"y":840,"w":41,"h":45},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":29,"y":0,"w":41,"h":45},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/wires/network_conflict.png":
-{
- "frame": {"x":279,"y":1210,"w":32,"h":30},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":1,"w":32,"h":30},
- "sourceSize": {"w":32,"h":32}
-},
-"sprites/wires/network_empty.png":
-{
- "frame": {"x":146,"y":1157,"w":28,"h":32},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":3,"y":0,"w":28,"h":32},
- "sourceSize": {"w":32,"h":32}
-},
-"sprites/wires/overlay_tile.png":
-{
- "frame": {"x":283,"y":1062,"w":64,"h":64},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":64,"h":64},
- "sourceSize": {"w":64,"h":64}
-},
-"sprites/wires/sets/conflict_cross.png":
-{
- "frame": {"x":183,"y":876,"w":96,"h":96},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/wires/sets/conflict_forward.png":
-{
- "frame": {"x":1000,"y":848,"w":18,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":39,"y":0,"w":18,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/wires/sets/conflict_split.png":
-{
- "frame": {"x":459,"y":1118,"w":96,"h":57},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":39,"w":96,"h":57},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/wires/sets/conflict_turn.png":
-{
- "frame": {"x":662,"y":538,"w":57,"h":57},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":39,"y":39,"w":57,"h":57},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/wires/sets/first_cross.png":
-{
- "frame": {"x":6,"y":889,"w":96,"h":96},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/wires/sets/first_forward.png":
-{
- "frame": {"x":999,"y":950,"w":18,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":39,"y":0,"w":18,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/wires/sets/first_split.png":
-{
- "frame": {"x":353,"y":1119,"w":96,"h":57},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":39,"w":96,"h":57},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/wires/sets/first_turn.png":
-{
- "frame": {"x":662,"y":601,"w":57,"h":57},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":39,"y":39,"w":57,"h":57},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/wires/sets/second_cross.png":
-{
- "frame": {"x":6,"y":991,"w":96,"h":96},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/wires/sets/second_forward.png":
-{
- "frame": {"x":998,"y":1052,"w":18,"h":96},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":39,"y":0,"w":18,"h":96},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/wires/sets/second_split.png":
-{
- "frame": {"x":455,"y":1181,"w":96,"h":57},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":0,"y":39,"w":96,"h":57},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/wires/sets/second_turn.png":
-{
- "frame": {"x":656,"y":700,"w":57,"h":57},
- "rotated": false,
- "trimmed": true,
- "spriteSourceSize": {"x":39,"y":39,"w":57,"h":57},
- "sourceSize": {"w":96,"h":96}
-},
-"sprites/wires/wires_preview.png":
-{
- "frame": {"x":108,"y":1157,"w":32,"h":32},
- "rotated": false,
- "trimmed": false,
- "spriteSourceSize": {"x":0,"y":0,"w":32,"h":32},
- "sourceSize": {"w":32,"h":32}
-}},
-"meta": {
- "app": "https://www.codeandweb.com/texturepacker",
- "version": "1.0",
- "image": "atlas0_mq.png",
- "format": "RGBA8888",
- "size": {"w":1024,"h":2048},
- "scale": "0.5",
- "smartupdate": "$TexturePacker:SmartUpdate:a1c027d325ef1c92a9318164b1241662:a9c9c3627ec9506697a7e24a7a287d67:908b89f5ca8ff73e331a35a3b14d0604$"
-}
-}
diff --git a/res_built/atlas/atlas0_mq.png b/res_built/atlas/atlas0_mq.png
deleted file mode 100644
index 2d2a5ae9..00000000
Binary files a/res_built/atlas/atlas0_mq.png and /dev/null differ
diff --git a/res_raw/atlas.json b/res_raw/atlas.json
new file mode 100644
index 00000000..9e548568
--- /dev/null
+++ b/res_raw/atlas.json
@@ -0,0 +1,22 @@
+{
+ "pot": true,
+ "paddingX": 2,
+ "paddingY": 2,
+ "edgePadding": true,
+ "rotation": false,
+ "maxWidth": 2048,
+ "useIndexes": false,
+ "alphaThreshold": 1,
+ "maxHeight": 2048,
+ "stripWhitespaceX": true,
+ "stripWhitespaceY": true,
+ "duplicatePadding": true,
+ "alias": true,
+ "fast": false,
+ "limitMemory": false,
+ "combineSubdirectories": true,
+ "flattenPaths": false,
+ "bleedIterations": 4,
+ "scale": [0.25, 0.5, 0.75],
+ "scaleSuffix": ["_lq", "_mq", "_hq"]
+}
diff --git a/res_raw/atlas.tps b/res_raw/atlas.tps
deleted file mode 100644
index 3aaaa257..00000000
--- a/res_raw/atlas.tps
+++ /dev/null
@@ -1,623 +0,0 @@
-
-
- ${T.demoBanners.intro}
- - Get the shapez.io standalone! + Get the shapez.io standalone! `; - return ` + const showDemoBadges = this.app.restrictionMgr.getIsStandaloneMarketingActive(); + return `ALT: Invertiere die Platzierungsrichtung der Förderbänder.CTRL + glisser : Sélectionne une zone à
- copier / effacer.MAJ : Laissez
+ class="keybinding">CTRL + glisser : Sélectionne une zone à
+ copier / supprimer.MAJ : Laissez
appuyé pour placer plusieurs fois le même bâtiment.ALT : Inverse l’orientation des convoyeurs
- placés.CTRL + ドラッグ: 削除範囲を指定SHIFT: 押し続けると1種の建造物を連続配置ALT: 設置されたベルトの方向を逆転させるCTRL + ドラッグ: 削除範囲を指定SHIFT: 押し続けると1種の建造物を連続配置ALT: 設置されたベルトの方向を逆転させるCTRL +
- Drag: 영역을 선택해서 복사/삭제하세요.SHIFT:
- 한꺼번에 여러 개의 건물을 배치하세요.ALT: 설치된
- 컨베이어 벨트의 방향을 바꾸세요.CTRL + 드래그: 영역을 선택합니다.SHIFT: 누르는 동안 같은 건물을 여러개 배치할 수 있습니다.ALT: 배치된 벨트의 방향을 반전시킵니다.