diff --git a/abr-testing/Pipfile b/abr-testing/Pipfile index 613ca5203f7..8dd89eb5d9b 100644 --- a/abr-testing/Pipfile +++ b/abr-testing/Pipfile @@ -20,6 +20,7 @@ pandas = "*" pandas-stubs = "*" paramiko = "*" prettier = "*" +pydantic = "==2.9.0" [dev-packages] atomicwrites = "==1.4.1" diff --git a/abr-testing/Pipfile.lock b/abr-testing/Pipfile.lock index a2f82b44925..7793a4e0e4c 100644 --- a/abr-testing/Pipfile.lock +++ b/abr-testing/Pipfile.lock @@ -1,7 +1,7 @@ { "_meta": { "hash": { - "sha256": "f773f4880fa452637eeaf5e1aebee4ca6a1dc34907f588e0c6f71f0f222dc725" + "sha256": "ae4207dab4efffe35a5a0ad2539aa2ee746a3c6c604f54c18ccfcd14d5425537" }, "pipfile-spec": 6, "requires": { @@ -30,85 +30,85 @@ }, "aiohttp": { "hashes": [ - "sha256:012f176945af138abc10c4a48743327a92b4ca9adc7a0e078077cdb5dbab7be0", - "sha256:02c13415b5732fb6ee7ff64583a5e6ed1c57aa68f17d2bda79c04888dfdc2769", - "sha256:03b6002e20938fc6ee0918c81d9e776bebccc84690e2b03ed132331cca065ee5", - "sha256:04814571cb72d65a6899db6099e377ed00710bf2e3eafd2985166f2918beaf59", - "sha256:0580f2e12de2138f34debcd5d88894786453a76e98febaf3e8fe5db62d01c9bf", - "sha256:06a8e2ee1cbac16fe61e51e0b0c269400e781b13bcfc33f5425912391a542985", - "sha256:076bc454a7e6fd646bc82ea7f98296be0b1219b5e3ef8a488afbdd8e81fbac50", - "sha256:0c9527819b29cd2b9f52033e7fb9ff08073df49b4799c89cb5754624ecd98299", - "sha256:0dc49f42422163efb7e6f1df2636fe3db72713f6cd94688e339dbe33fe06d61d", - "sha256:14cdb5a9570be5a04eec2ace174a48ae85833c2aadc86de68f55541f66ce42ab", - "sha256:15fccaf62a4889527539ecb86834084ecf6e9ea70588efde86e8bc775e0e7542", - "sha256:24213ba85a419103e641e55c27dc7ff03536c4873470c2478cce3311ba1eee7b", - "sha256:31d5093d3acd02b31c649d3a69bb072d539d4c7659b87caa4f6d2bcf57c2fa2b", - "sha256:3691ed7726fef54e928fe26344d930c0c8575bc968c3e239c2e1a04bd8cf7838", - "sha256:386fbe79863eb564e9f3615b959e28b222259da0c48fd1be5929ac838bc65683", - "sha256:3bbbfff4c679c64e6e23cb213f57cc2c9165c9a65d63717108a644eb5a7398df", - "sha256:3de34936eb1a647aa919655ff8d38b618e9f6b7f250cc19a57a4bf7fd2062b6d", - "sha256:40d1c7a7f750b5648642586ba7206999650208dbe5afbcc5284bcec6579c9b91", - "sha256:44224d815853962f48fe124748227773acd9686eba6dc102578defd6fc99e8d9", - "sha256:47ad15a65fb41c570cd0ad9a9ff8012489e68176e7207ec7b82a0940dddfd8be", - "sha256:482cafb7dc886bebeb6c9ba7925e03591a62ab34298ee70d3dd47ba966370d2c", - "sha256:49c7dbbc1a559ae14fc48387a115b7d4bbc84b4a2c3b9299c31696953c2a5219", - "sha256:4b2c7ac59c5698a7a8207ba72d9e9c15b0fc484a560be0788b31312c2c5504e4", - "sha256:4cca22a61b7fe45da8fc73c3443150c3608750bbe27641fc7558ec5117b27fdf", - "sha256:4cfce37f31f20800a6a6620ce2cdd6737b82e42e06e6e9bd1b36f546feb3c44f", - "sha256:502a1464ccbc800b4b1995b302efaf426e8763fadf185e933c2931df7db9a199", - "sha256:53bf2097e05c2accc166c142a2090e4c6fd86581bde3fd9b2d3f9e93dda66ac1", - "sha256:593c114a2221444f30749cc5e5f4012488f56bd14de2af44fe23e1e9894a9c60", - "sha256:5d6958671b296febe7f5f859bea581a21c1d05430d1bbdcf2b393599b1cdce77", - "sha256:5ef359ebc6949e3a34c65ce20230fae70920714367c63afd80ea0c2702902ccf", - "sha256:613e5169f8ae77b1933e42e418a95931fb4867b2991fc311430b15901ed67079", - "sha256:61b9bae80ed1f338c42f57c16918853dc51775fb5cb61da70d590de14d8b5fb4", - "sha256:6362cc6c23c08d18ddbf0e8c4d5159b5df74fea1a5278ff4f2c79aed3f4e9f46", - "sha256:65a96e3e03300b41f261bbfd40dfdbf1c301e87eab7cd61c054b1f2e7c89b9e8", - "sha256:65e55ca7debae8faaffee0ebb4b47a51b4075f01e9b641c31e554fd376595c6c", - "sha256:68386d78743e6570f054fe7949d6cb37ef2b672b4d3405ce91fafa996f7d9b4d", - "sha256:68ff6f48b51bd78ea92b31079817aff539f6c8fc80b6b8d6ca347d7c02384e33", - "sha256:6ab29b8a0beb6f8eaf1e5049252cfe74adbaafd39ba91e10f18caeb0e99ffb34", - "sha256:77ae58586930ee6b2b6f696c82cf8e78c8016ec4795c53e36718365f6959dc82", - "sha256:77c4aa15a89847b9891abf97f3d4048f3c2d667e00f8a623c89ad2dccee6771b", - "sha256:78153314f26d5abef3239b4a9af20c229c6f3ecb97d4c1c01b22c4f87669820c", - "sha256:7852bbcb4d0d2f0c4d583f40c3bc750ee033265d80598d0f9cb6f372baa6b836", - "sha256:7e97d622cb083e86f18317282084bc9fbf261801b0192c34fe4b1febd9f7ae69", - "sha256:7f3dc0e330575f5b134918976a645e79adf333c0a1439dcf6899a80776c9ab39", - "sha256:80886dac673ceaef499de2f393fc80bb4481a129e6cb29e624a12e3296cc088f", - "sha256:811f23b3351ca532af598405db1093f018edf81368e689d1b508c57dcc6b6a32", - "sha256:86a5dfcc39309470bd7b68c591d84056d195428d5d2e0b5ccadfbaf25b026ebc", - "sha256:8b3cf2dc0f0690a33f2d2b2cb15db87a65f1c609f53c37e226f84edb08d10f52", - "sha256:8cc5203b817b748adccb07f36390feb730b1bc5f56683445bfe924fc270b8816", - "sha256:909af95a72cedbefe5596f0bdf3055740f96c1a4baa0dd11fd74ca4de0b4e3f1", - "sha256:974d3a2cce5fcfa32f06b13ccc8f20c6ad9c51802bb7f829eae8a1845c4019ec", - "sha256:98283b94cc0e11c73acaf1c9698dea80c830ca476492c0fe2622bd931f34b487", - "sha256:98f5635f7b74bcd4f6f72fcd85bea2154b323a9f05226a80bc7398d0c90763b0", - "sha256:99b7920e7165be5a9e9a3a7f1b680f06f68ff0d0328ff4079e5163990d046767", - "sha256:9bca390cb247dbfaec3c664326e034ef23882c3f3bfa5fbf0b56cad0320aaca5", - "sha256:9e2e576caec5c6a6b93f41626c9c02fc87cd91538b81a3670b2e04452a63def6", - "sha256:9ef405356ba989fb57f84cac66f7b0260772836191ccefbb987f414bcd2979d9", - "sha256:a55d2ad345684e7c3dd2c20d2f9572e9e1d5446d57200ff630e6ede7612e307f", - "sha256:ab7485222db0959a87fbe8125e233b5a6f01f4400785b36e8a7878170d8c3138", - "sha256:b1fc6b45010a8d0ff9e88f9f2418c6fd408c99c211257334aff41597ebece42e", - "sha256:b78f053a7ecfc35f0451d961dacdc671f4bcbc2f58241a7c820e9d82559844cf", - "sha256:b99acd4730ad1b196bfb03ee0803e4adac371ae8efa7e1cbc820200fc5ded109", - "sha256:be2b516f56ea883a3e14dda17059716593526e10fb6303189aaf5503937db408", - "sha256:beb39a6d60a709ae3fb3516a1581777e7e8b76933bb88c8f4420d875bb0267c6", - "sha256:bf3d1a519a324af764a46da4115bdbd566b3c73fb793ffb97f9111dbc684fc4d", - "sha256:c49a76c1038c2dd116fa443eba26bbb8e6c37e924e2513574856de3b6516be99", - "sha256:c5532f0441fc09c119e1dca18fbc0687e64fbeb45aa4d6a87211ceaee50a74c4", - "sha256:c6b9e6d7e41656d78e37ce754813fa44b455c3d0d0dced2a047def7dc5570b74", - "sha256:c87bf31b7fdab94ae3adbe4a48e711bfc5f89d21cf4c197e75561def39e223bc", - "sha256:cbad88a61fa743c5d283ad501b01c153820734118b65aee2bd7dbb735475ce0d", - "sha256:cf14627232dfa8730453752e9cdc210966490992234d77ff90bc8dc0dce361d5", - "sha256:db1d0b28fcb7f1d35600150c3e4b490775251dea70f894bf15c678fdd84eda6a", - "sha256:ddf5f7d877615f6a1e75971bfa5ac88609af3b74796ff3e06879e8422729fd01", - "sha256:e44a9a3c053b90c6f09b1bb4edd880959f5328cf63052503f892c41ea786d99f", - "sha256:efb15a17a12497685304b2d976cb4939e55137df7b09fa53f1b6a023f01fcb4e", - "sha256:fbbaea811a2bba171197b08eea288b9402faa2bab2ba0858eecdd0a4105753a3" + "sha256:0882c2820fd0132240edbb4a51eb8ceb6eef8181db9ad5291ab3332e0d71df5f", + "sha256:0a6d3fbf2232e3a08c41eca81ae4f1dff3d8f1a30bae415ebe0af2d2458b8a33", + "sha256:0b7fb429ab1aafa1f48578eb315ca45bd46e9c37de11fe45c7f5f4138091e2f1", + "sha256:0eb98d90b6690827dcc84c246811feeb4e1eea683c0eac6caed7549be9c84665", + "sha256:0fd82b8e9c383af11d2b26f27a478640b6b83d669440c0a71481f7c865a51da9", + "sha256:10b4ff0ad793d98605958089fabfa350e8e62bd5d40aa65cdc69d6785859f94e", + "sha256:1642eceeaa5ab6c9b6dfeaaa626ae314d808188ab23ae196a34c9d97efb68350", + "sha256:1dac54e8ce2ed83b1f6b1a54005c87dfed139cf3f777fdc8afc76e7841101226", + "sha256:1e69966ea6ef0c14ee53ef7a3d68b564cc408121ea56c0caa2dc918c1b2f553d", + "sha256:1f21bb8d0235fc10c09ce1d11ffbd40fc50d3f08a89e4cf3a0c503dc2562247a", + "sha256:2170816e34e10f2fd120f603e951630f8a112e1be3b60963a1f159f5699059a6", + "sha256:21fef42317cf02e05d3b09c028712e1d73a9606f02467fd803f7c1f39cc59add", + "sha256:249cc6912405917344192b9f9ea5cd5b139d49e0d2f5c7f70bdfaf6b4dbf3a2e", + "sha256:3499c7ffbfd9c6a3d8d6a2b01c26639da7e43d47c7b4f788016226b1e711caa8", + "sha256:3af41686ccec6a0f2bdc66686dc0f403c41ac2089f80e2214a0f82d001052c03", + "sha256:3e23419d832d969f659c208557de4a123e30a10d26e1e14b73431d3c13444c2e", + "sha256:3ea1b59dc06396b0b424740a10a0a63974c725b1c64736ff788a3689d36c02d2", + "sha256:44167fc6a763d534a6908bdb2592269b4bf30a03239bcb1654781adf5e49caf1", + "sha256:479b8c6ebd12aedfe64563b85920525d05d394b85f166b7873c8bde6da612f9c", + "sha256:4af57160800b7a815f3fe0eba9b46bf28aafc195555f1824555fa2cfab6c1538", + "sha256:4b4fa1cb5f270fb3eab079536b764ad740bb749ce69a94d4ec30ceee1b5940d5", + "sha256:4eed954b161e6b9b65f6be446ed448ed3921763cc432053ceb606f89d793927e", + "sha256:541d823548ab69d13d23730a06f97460f4238ad2e5ed966aaf850d7c369782d9", + "sha256:568c1236b2fde93b7720f95a890741854c1200fba4a3471ff48b2934d2d93fd3", + "sha256:5854be2f3e5a729800bac57a8d76af464e160f19676ab6aea74bde18ad19d438", + "sha256:620598717fce1b3bd14dd09947ea53e1ad510317c85dda2c9c65b622edc96b12", + "sha256:6526e5fb4e14f4bbf30411216780c9967c20c5a55f2f51d3abd6de68320cc2f3", + "sha256:6fba278063559acc730abf49845d0e9a9e1ba74f85f0ee6efd5803f08b285853", + "sha256:70d1f9dde0e5dd9e292a6d4d00058737052b01f3532f69c0c65818dac26dc287", + "sha256:731468f555656767cda219ab42e033355fe48c85fbe3ba83a349631541715ba2", + "sha256:81b8fe282183e4a3c7a1b72f5ade1094ed1c6345a8f153506d114af5bf8accd9", + "sha256:84a585799c58b795573c7fa9b84c455adf3e1d72f19a2bf498b54a95ae0d194c", + "sha256:85992ee30a31835fc482468637b3e5bd085fa8fe9392ba0bdcbdc1ef5e9e3c55", + "sha256:8811f3f098a78ffa16e0ea36dffd577eb031aea797cbdba81be039a4169e242c", + "sha256:88a12ad8ccf325a8a5ed80e6d7c3bdc247d66175afedbe104ee2aaca72960d8e", + "sha256:8be8508d110d93061197fd2d6a74f7401f73b6d12f8822bbcd6d74f2b55d71b1", + "sha256:8e2bf8029dbf0810c7bfbc3e594b51c4cc9101fbffb583a3923aea184724203c", + "sha256:929f3ed33743a49ab127c58c3e0a827de0664bfcda566108989a14068f820194", + "sha256:92cde43018a2e17d48bb09c79e4d4cb0e236de5063ce897a5e40ac7cb4878773", + "sha256:92fc484e34b733704ad77210c7957679c5c3877bd1e6b6d74b185e9320cc716e", + "sha256:943a8b052e54dfd6439fd7989f67fc6a7f2138d0a2cf0a7de5f18aa4fe7eb3b1", + "sha256:9d73ee3725b7a737ad86c2eac5c57a4a97793d9f442599bea5ec67ac9f4bdc3d", + "sha256:9f5b3c1ed63c8fa937a920b6c1bec78b74ee09593b3f5b979ab2ae5ef60d7600", + "sha256:9fd46ce0845cfe28f108888b3ab17abff84ff695e01e73657eec3f96d72eef34", + "sha256:a344d5dc18074e3872777b62f5f7d584ae4344cd6006c17ba12103759d407af3", + "sha256:a60804bff28662cbcf340a4d61598891f12eea3a66af48ecfdc975ceec21e3c8", + "sha256:a8f5f7515f3552d899c61202d99dcb17d6e3b0de777900405611cd747cecd1b8", + "sha256:a9b7371665d4f00deb8f32208c7c5e652059b0fda41cf6dbcac6114a041f1cc2", + "sha256:aa54f8ef31d23c506910c21163f22b124facb573bff73930735cf9fe38bf7dff", + "sha256:aba807f9569455cba566882c8938f1a549f205ee43c27b126e5450dc9f83cc62", + "sha256:ae545f31489548c87b0cced5755cfe5a5308d00407000e72c4fa30b19c3220ac", + "sha256:af01e42ad87ae24932138f154105e88da13ce7d202a6de93fafdafb2883a00ef", + "sha256:b540bd67cfb54e6f0865ceccd9979687210d7ed1a1cc8c01f8e67e2f1e883d28", + "sha256:b6212a60e5c482ef90f2d788835387070a88d52cf6241d3916733c9176d39eab", + "sha256:b63de12e44935d5aca7ed7ed98a255a11e5cb47f83a9fded7a5e41c40277d104", + "sha256:ba74ec819177af1ef7f59063c6d35a214a8fde6f987f7661f4f0eecc468a8f76", + "sha256:bb49c7f1e6ebf3821a42d81d494f538107610c3a705987f53068546b0e90303e", + "sha256:bd176afcf8f5d2aed50c3647d4925d0db0579d96f75a31e77cbaf67d8a87742d", + "sha256:bd7227b87a355ce1f4bf83bfae4399b1f5bb42e0259cb9405824bd03d2f4336a", + "sha256:bf8d9bfee991d8acc72d060d53860f356e07a50f0e0d09a8dfedea1c554dd0d5", + "sha256:bfde76a8f430cf5c5584553adf9926534352251d379dcb266ad2b93c54a29745", + "sha256:c341c7d868750e31961d6d8e60ff040fb9d3d3a46d77fd85e1ab8e76c3e9a5c4", + "sha256:c7a06301c2fb096bdb0bd25fe2011531c1453b9f2c163c8031600ec73af1cc99", + "sha256:cb23d8bb86282b342481cad4370ea0853a39e4a32a0042bb52ca6bdde132df43", + "sha256:d119fafe7b634dbfa25a8c597718e69a930e4847f0b88e172744be24515140da", + "sha256:d40f9da8cabbf295d3a9dae1295c69975b86d941bc20f0a087f0477fa0a66231", + "sha256:d6c9af134da4bc9b3bd3e6a70072509f295d10ee60c697826225b60b9959acdd", + "sha256:dd7659baae9ccf94ae5fe8bfaa2c7bc2e94d24611528395ce88d009107e00c6d", + "sha256:de8d38f1c2810fa2a4f1d995a2e9c70bb8737b18da04ac2afbf3971f65781d87", + "sha256:e595c591a48bbc295ebf47cb91aebf9bd32f3ff76749ecf282ea7f9f6bb73886", + "sha256:ec2aa89305006fba9ffb98970db6c8221541be7bee4c1d027421d6f6df7d1ce2", + "sha256:ec82bf1fda6cecce7f7b915f9196601a1bd1a3079796b76d16ae4cce6d0ef89b", + "sha256:ed9ee95614a71e87f1a70bc81603f6c6760128b140bc4030abe6abaa988f1c3d", + "sha256:f047569d655f81cb70ea5be942ee5d4421b6219c3f05d131f64088c73bb0917f", + "sha256:ffa336210cf9cd8ed117011085817d00abe4c08f99968deef0013ea283547204", + "sha256:ffb3dc385f6bb1568aa974fe65da84723210e5d9707e360e9ecb51f59406cd2e" ], "markers": "python_version >= '3.9'", - "version": "==3.11.10" + "version": "==3.11.11" }, "aionotify": { "hashes": [ @@ -120,11 +120,11 @@ }, "aiosignal": { "hashes": [ - "sha256:54cd96e15e1649b75d6c87526a6ff0b6c1b0dd3459f43d9ca11d48c339b68cfc", - "sha256:f8376fb07dd1e86a584e4fcdec80b36b7f81aac666ebc724e2c090300dd83b17" + "sha256:45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5", + "sha256:a8c255c66fafb1e499c9351d0bf32ff2d8a0321595ebac3b93713656d2436f54" ], - "markers": "python_version >= '3.7'", - "version": "==1.3.1" + "markers": "python_version >= '3.9'", + "version": "==1.3.2" }, "annotated-types": { "hashes": [ @@ -147,16 +147,16 @@ "sha256:39e3809566ff85354557ec2398b55e096c8364bacac9405a7a1fa429e77fe76c", "sha256:d9321a7a3d5a6a5e187e824d2fa0793ce379a202935782d555d6e9d2735677d3" ], - "markers": "python_version >= '3.8'", + "markers": "python_version < '3.11'", "version": "==5.0.1" }, "attrs": { "hashes": [ - "sha256:5cfb1b9148b5b086569baec03f20d7b6bf3bcacc9a42bebf87ffaaca362f6346", - "sha256:81921eb96de3191c8258c199618104dd27ac608d9366f5e35d011eae1867ede2" + "sha256:8f5c07333d543103541ba7be0e2ce16eeee8130cb0b3f9238ab904ce1e85baff", + "sha256:ac96cd038792094f438ad1f6ff80837353805ac950cd2aa0e0625ef19850c308" ], - "markers": "python_version >= '3.7'", - "version": "==24.2.0" + "markers": "python_version >= '3.8'", + "version": "==24.3.0" }, "bcrypt": { "hashes": [ @@ -199,11 +199,11 @@ }, "certifi": { "hashes": [ - "sha256:922820b53db7a7257ffbda3f597266d435245903d80737e34f8a45ff3e3230d8", - "sha256:bec941d2aa8195e248a60b31ff9f0558284cf01a52591ceda73ea9afffd69fd9" + "sha256:1275f7a45be9464efc1173084eaa30f866fe2e47d389406136d332ed4967ec56", + "sha256:b650d30f370c2b724812bee08008be0c4163b163ddaec3f2546c1caf65f191db" ], "markers": "python_version >= '3.6'", - "version": "==2024.8.30" + "version": "==2024.12.14" }, "cffi": { "hashes": [ @@ -275,127 +275,114 @@ "sha256:f7f5baafcc48261359e14bcd6d9bff6d4b28d9103847c9e136694cb0501aef87", "sha256:fc48c783f9c87e60831201f2cce7f3b2e4846bf4d8728eabe54d60700b318a0b" ], - "markers": "python_version >= '3.8'", + "markers": "platform_python_implementation != 'PyPy'", "version": "==1.17.1" }, "charset-normalizer": { "hashes": [ - "sha256:0099d79bdfcf5c1f0c2c72f91516702ebf8b0b8ddd8905f97a8aecf49712c621", - "sha256:0713f3adb9d03d49d365b70b84775d0a0d18e4ab08d12bc46baa6132ba78aaf6", - "sha256:07afec21bbbbf8a5cc3651aa96b980afe2526e7f048fdfb7f1014d84acc8b6d8", - "sha256:0b309d1747110feb25d7ed6b01afdec269c647d382c857ef4663bbe6ad95a912", - "sha256:0d99dd8ff461990f12d6e42c7347fd9ab2532fb70e9621ba520f9e8637161d7c", - "sha256:0de7b687289d3c1b3e8660d0741874abe7888100efe14bd0f9fd7141bcbda92b", - "sha256:1110e22af8ca26b90bd6364fe4c763329b0ebf1ee213ba32b68c73de5752323d", - "sha256:130272c698667a982a5d0e626851ceff662565379baf0ff2cc58067b81d4f11d", - "sha256:136815f06a3ae311fae551c3df1f998a1ebd01ddd424aa5603a4336997629e95", - "sha256:14215b71a762336254351b00ec720a8e85cada43b987da5a042e4ce3e82bd68e", - "sha256:1db4e7fefefd0f548d73e2e2e041f9df5c59e178b4c72fbac4cc6f535cfb1565", - "sha256:1ffd9493de4c922f2a38c2bf62b831dcec90ac673ed1ca182fe11b4d8e9f2a64", - "sha256:2006769bd1640bdf4d5641c69a3d63b71b81445473cac5ded39740a226fa88ab", - "sha256:20587d20f557fe189b7947d8e7ec5afa110ccf72a3128d61a2a387c3313f46be", - "sha256:223217c3d4f82c3ac5e29032b3f1c2eb0fb591b72161f86d93f5719079dae93e", - "sha256:27623ba66c183eca01bf9ff833875b459cad267aeeb044477fedac35e19ba907", - "sha256:285e96d9d53422efc0d7a17c60e59f37fbf3dfa942073f666db4ac71e8d726d0", - "sha256:2de62e8801ddfff069cd5c504ce3bc9672b23266597d4e4f50eda28846c322f2", - "sha256:2f6c34da58ea9c1a9515621f4d9ac379871a8f21168ba1b5e09d74250de5ad62", - "sha256:309a7de0a0ff3040acaebb35ec45d18db4b28232f21998851cfa709eeff49d62", - "sha256:35c404d74c2926d0287fbd63ed5d27eb911eb9e4a3bb2c6d294f3cfd4a9e0c23", - "sha256:3710a9751938947e6327ea9f3ea6332a09bf0ba0c09cae9cb1f250bd1f1549bc", - "sha256:3d59d125ffbd6d552765510e3f31ed75ebac2c7470c7274195b9161a32350284", - "sha256:40d3ff7fc90b98c637bda91c89d51264a3dcf210cade3a2c6f838c7268d7a4ca", - "sha256:425c5f215d0eecee9a56cdb703203dda90423247421bf0d67125add85d0c4455", - "sha256:43193c5cda5d612f247172016c4bb71251c784d7a4d9314677186a838ad34858", - "sha256:44aeb140295a2f0659e113b31cfe92c9061622cadbc9e2a2f7b8ef6b1e29ef4b", - "sha256:47334db71978b23ebcf3c0f9f5ee98b8d65992b65c9c4f2d34c2eaf5bcaf0594", - "sha256:4796efc4faf6b53a18e3d46343535caed491776a22af773f366534056c4e1fbc", - "sha256:4a51b48f42d9358460b78725283f04bddaf44a9358197b889657deba38f329db", - "sha256:4b67fdab07fdd3c10bb21edab3cbfe8cf5696f453afce75d815d9d7223fbe88b", - "sha256:4ec9dd88a5b71abfc74e9df5ebe7921c35cbb3b641181a531ca65cdb5e8e4dea", - "sha256:4f9fc98dad6c2eaa32fc3af1417d95b5e3d08aff968df0cd320066def971f9a6", - "sha256:54b6a92d009cbe2fb11054ba694bc9e284dad30a26757b1e372a1fdddaf21920", - "sha256:55f56e2ebd4e3bc50442fbc0888c9d8c94e4e06a933804e2af3e89e2f9c1c749", - "sha256:5726cf76c982532c1863fb64d8c6dd0e4c90b6ece9feb06c9f202417a31f7dd7", - "sha256:5d447056e2ca60382d460a604b6302d8db69476fd2015c81e7c35417cfabe4cd", - "sha256:5ed2e36c3e9b4f21dd9422f6893dec0abf2cca553af509b10cd630f878d3eb99", - "sha256:5ff2ed8194587faf56555927b3aa10e6fb69d931e33953943bc4f837dfee2242", - "sha256:62f60aebecfc7f4b82e3f639a7d1433a20ec32824db2199a11ad4f5e146ef5ee", - "sha256:63bc5c4ae26e4bc6be6469943b8253c0fd4e4186c43ad46e713ea61a0ba49129", - "sha256:6b40e8d38afe634559e398cc32b1472f376a4099c75fe6299ae607e404c033b2", - "sha256:6b493a043635eb376e50eedf7818f2f322eabbaa974e948bd8bdd29eb7ef2a51", - "sha256:6dba5d19c4dfab08e58d5b36304b3f92f3bd5d42c1a3fa37b5ba5cdf6dfcbcee", - "sha256:6fd30dc99682dc2c603c2b315bded2799019cea829f8bf57dc6b61efde6611c8", - "sha256:707b82d19e65c9bd28b81dde95249b07bf9f5b90ebe1ef17d9b57473f8a64b7b", - "sha256:7706f5850360ac01d80c89bcef1640683cc12ed87f42579dab6c5d3ed6888613", - "sha256:7782afc9b6b42200f7362858f9e73b1f8316afb276d316336c0ec3bd73312742", - "sha256:79983512b108e4a164b9c8d34de3992f76d48cadc9554c9e60b43f308988aabe", - "sha256:7f683ddc7eedd742e2889d2bfb96d69573fde1d92fcb811979cdb7165bb9c7d3", - "sha256:82357d85de703176b5587dbe6ade8ff67f9f69a41c0733cf2425378b49954de5", - "sha256:84450ba661fb96e9fd67629b93d2941c871ca86fc38d835d19d4225ff946a631", - "sha256:86f4e8cca779080f66ff4f191a685ced73d2f72d50216f7112185dc02b90b9b7", - "sha256:8cda06946eac330cbe6598f77bb54e690b4ca93f593dee1568ad22b04f347c15", - "sha256:8ce7fd6767a1cc5a92a639b391891bf1c268b03ec7e021c7d6d902285259685c", - "sha256:8ff4e7cdfdb1ab5698e675ca622e72d58a6fa2a8aa58195de0c0061288e6e3ea", - "sha256:9289fd5dddcf57bab41d044f1756550f9e7cf0c8e373b8cdf0ce8773dc4bd417", - "sha256:92a7e36b000bf022ef3dbb9c46bfe2d52c047d5e3f3343f43204263c5addc250", - "sha256:92db3c28b5b2a273346bebb24857fda45601aef6ae1c011c0a997106581e8a88", - "sha256:95c3c157765b031331dd4db3c775e58deaee050a3042fcad72cbc4189d7c8dca", - "sha256:980b4f289d1d90ca5efcf07958d3eb38ed9c0b7676bf2831a54d4f66f9c27dfa", - "sha256:9ae4ef0b3f6b41bad6366fb0ea4fc1d7ed051528e113a60fa2a65a9abb5b1d99", - "sha256:9c98230f5042f4945f957d006edccc2af1e03ed5e37ce7c373f00a5a4daa6149", - "sha256:9fa2566ca27d67c86569e8c85297aaf413ffab85a8960500f12ea34ff98e4c41", - "sha256:a14969b8691f7998e74663b77b4c36c0337cb1df552da83d5c9004a93afdb574", - "sha256:a8aacce6e2e1edcb6ac625fb0f8c3a9570ccc7bfba1f63419b3769ccf6a00ed0", - "sha256:a8e538f46104c815be19c975572d74afb53f29650ea2025bbfaef359d2de2f7f", - "sha256:aa41e526a5d4a9dfcfbab0716c7e8a1b215abd3f3df5a45cf18a12721d31cb5d", - "sha256:aa693779a8b50cd97570e5a0f343538a8dbd3e496fa5dcb87e29406ad0299654", - "sha256:ab22fbd9765e6954bc0bcff24c25ff71dcbfdb185fcdaca49e81bac68fe724d3", - "sha256:ab2e5bef076f5a235c3774b4f4028a680432cded7cad37bba0fd90d64b187d19", - "sha256:ab973df98fc99ab39080bfb0eb3a925181454d7c3ac8a1e695fddfae696d9e90", - "sha256:af73657b7a68211996527dbfeffbb0864e043d270580c5aef06dc4b659a4b578", - "sha256:b197e7094f232959f8f20541ead1d9862ac5ebea1d58e9849c1bf979255dfac9", - "sha256:b295729485b06c1a0683af02a9e42d2caa9db04a373dc38a6a58cdd1e8abddf1", - "sha256:b8831399554b92b72af5932cdbbd4ddc55c55f631bb13ff8fe4e6536a06c5c51", - "sha256:b8dcd239c743aa2f9c22ce674a145e0a25cb1566c495928440a181ca1ccf6719", - "sha256:bcb4f8ea87d03bc51ad04add8ceaf9b0f085ac045ab4d74e73bbc2dc033f0236", - "sha256:bd7af3717683bea4c87acd8c0d3d5b44d56120b26fd3f8a692bdd2d5260c620a", - "sha256:bf4475b82be41b07cc5e5ff94810e6a01f276e37c2d55571e3fe175e467a1a1c", - "sha256:c3e446d253bd88f6377260d07c895816ebf33ffffd56c1c792b13bff9c3e1ade", - "sha256:c57516e58fd17d03ebe67e181a4e4e2ccab1168f8c2976c6a334d4f819fe5944", - "sha256:c94057af19bc953643a33581844649a7fdab902624d2eb739738a30e2b3e60fc", - "sha256:cab5d0b79d987c67f3b9e9c53f54a61360422a5a0bc075f43cab5621d530c3b6", - "sha256:ce031db0408e487fd2775d745ce30a7cd2923667cf3b69d48d219f1d8f5ddeb6", - "sha256:cee4373f4d3ad28f1ab6290684d8e2ebdb9e7a1b74fdc39e4c211995f77bec27", - "sha256:d5b054862739d276e09928de37c79ddeec42a6e1bfc55863be96a36ba22926f6", - "sha256:dbe03226baf438ac4fda9e2d0715022fd579cb641c4cf639fa40d53b2fe6f3e2", - "sha256:dc15e99b2d8a656f8e666854404f1ba54765871104e50c8e9813af8a7db07f12", - "sha256:dcaf7c1524c0542ee2fc82cc8ec337f7a9f7edee2532421ab200d2b920fc97cf", - "sha256:dd4eda173a9fcccb5f2e2bd2a9f423d180194b1bf17cf59e3269899235b2a114", - "sha256:dd9a8bd8900e65504a305bf8ae6fa9fbc66de94178c420791d0293702fce2df7", - "sha256:de7376c29d95d6719048c194a9cf1a1b0393fbe8488a22008610b0361d834ecf", - "sha256:e7fdd52961feb4c96507aa649550ec2a0d527c086d284749b2f582f2d40a2e0d", - "sha256:e91f541a85298cf35433bf66f3fab2a4a2cff05c127eeca4af174f6d497f0d4b", - "sha256:e9e3c4c9e1ed40ea53acf11e2a386383c3304212c965773704e4603d589343ed", - "sha256:ee803480535c44e7f5ad00788526da7d85525cfefaf8acf8ab9a310000be4b03", - "sha256:f09cb5a7bbe1ecae6e87901a2eb23e0256bb524a79ccc53eb0b7629fbe7677c4", - "sha256:f19c1585933c82098c2a520f8ec1227f20e339e33aca8fa6f956f6691b784e67", - "sha256:f1a2f519ae173b5b6a2c9d5fa3116ce16e48b3462c8b96dfdded11055e3d6365", - "sha256:f28f891ccd15c514a0981f3b9db9aa23d62fe1a99997512b0491d2ed323d229a", - "sha256:f3e73a4255342d4eb26ef6df01e3962e73aa29baa3124a8e824c5d3364a65748", - "sha256:f606a1881d2663630ea5b8ce2efe2111740df4b687bd78b34a8131baa007f79b", - "sha256:fe9f97feb71aa9896b81973a7bbada8c49501dc73e58a10fcef6663af95e5079", - "sha256:ffc519621dce0c767e96b9c53f09c5d215578e10b02c285809f76509a3931482" - ], - "markers": "python_full_version >= '3.7.0'", - "version": "==3.4.0" + "sha256:0167ddc8ab6508fe81860a57dd472b2ef4060e8d378f0cc555707126830f2537", + "sha256:01732659ba9b5b873fc117534143e4feefecf3b2078b0a6a2e925271bb6f4cfa", + "sha256:01ad647cdd609225c5350561d084b42ddf732f4eeefe6e678765636791e78b9a", + "sha256:04432ad9479fa40ec0f387795ddad4437a2b50417c69fa275e212933519ff294", + "sha256:0907f11d019260cdc3f94fbdb23ff9125f6b5d1039b76003b5b0ac9d6a6c9d5b", + "sha256:0924e81d3d5e70f8126529951dac65c1010cdf117bb75eb02dd12339b57749dd", + "sha256:09b26ae6b1abf0d27570633b2b078a2a20419c99d66fb2823173d73f188ce601", + "sha256:09b5e6733cbd160dcc09589227187e242a30a49ca5cefa5a7edd3f9d19ed53fd", + "sha256:0af291f4fe114be0280cdd29d533696a77b5b49cfde5467176ecab32353395c4", + "sha256:0f55e69f030f7163dffe9fd0752b32f070566451afe180f99dbeeb81f511ad8d", + "sha256:1a2bc9f351a75ef49d664206d51f8e5ede9da246602dc2d2726837620ea034b2", + "sha256:22e14b5d70560b8dd51ec22863f370d1e595ac3d024cb8ad7d308b4cd95f8313", + "sha256:234ac59ea147c59ee4da87a0c0f098e9c8d169f4dc2a159ef720f1a61bbe27cd", + "sha256:2369eea1ee4a7610a860d88f268eb39b95cb588acd7235e02fd5a5601773d4fa", + "sha256:237bdbe6159cff53b4f24f397d43c6336c6b0b42affbe857970cefbb620911c8", + "sha256:28bf57629c75e810b6ae989f03c0828d64d6b26a5e205535585f96093e405ed1", + "sha256:2967f74ad52c3b98de4c3b32e1a44e32975e008a9cd2a8cc8966d6a5218c5cb2", + "sha256:2a75d49014d118e4198bcee5ee0a6f25856b29b12dbf7cd012791f8a6cc5c496", + "sha256:2bdfe3ac2e1bbe5b59a1a63721eb3b95fc9b6817ae4a46debbb4e11f6232428d", + "sha256:2d074908e1aecee37a7635990b2c6d504cd4766c7bc9fc86d63f9c09af3fa11b", + "sha256:2fb9bd477fdea8684f78791a6de97a953c51831ee2981f8e4f583ff3b9d9687e", + "sha256:311f30128d7d333eebd7896965bfcfbd0065f1716ec92bd5638d7748eb6f936a", + "sha256:329ce159e82018d646c7ac45b01a430369d526569ec08516081727a20e9e4af4", + "sha256:345b0426edd4e18138d6528aed636de7a9ed169b4aaf9d61a8c19e39d26838ca", + "sha256:363e2f92b0f0174b2f8238240a1a30142e3db7b957a5dd5689b0e75fb717cc78", + "sha256:3a3bd0dcd373514dcec91c411ddb9632c0d7d92aed7093b8c3bbb6d69ca74408", + "sha256:3bed14e9c89dcb10e8f3a29f9ccac4955aebe93c71ae803af79265c9ca5644c5", + "sha256:44251f18cd68a75b56585dd00dae26183e102cd5e0f9f1466e6df5da2ed64ea3", + "sha256:44ecbf16649486d4aebafeaa7ec4c9fed8b88101f4dd612dcaf65d5e815f837f", + "sha256:4532bff1b8421fd0a320463030c7520f56a79c9024a4e88f01c537316019005a", + "sha256:49402233c892a461407c512a19435d1ce275543138294f7ef013f0b63d5d3765", + "sha256:4c0907b1928a36d5a998d72d64d8eaa7244989f7aaaf947500d3a800c83a3fd6", + "sha256:4d86f7aff21ee58f26dcf5ae81a9addbd914115cdebcbb2217e4f0ed8982e146", + "sha256:5777ee0881f9499ed0f71cc82cf873d9a0ca8af166dfa0af8ec4e675b7df48e6", + "sha256:5df196eb874dae23dcfb968c83d4f8fdccb333330fe1fc278ac5ceeb101003a9", + "sha256:619a609aa74ae43d90ed2e89bdd784765de0a25ca761b93e196d938b8fd1dbbd", + "sha256:6e27f48bcd0957c6d4cb9d6fa6b61d192d0b13d5ef563e5f2ae35feafc0d179c", + "sha256:6ff8a4a60c227ad87030d76e99cd1698345d4491638dfa6673027c48b3cd395f", + "sha256:73d94b58ec7fecbc7366247d3b0b10a21681004153238750bb67bd9012414545", + "sha256:7461baadb4dc00fd9e0acbe254e3d7d2112e7f92ced2adc96e54ef6501c5f176", + "sha256:75832c08354f595c760a804588b9357d34ec00ba1c940c15e31e96d902093770", + "sha256:7709f51f5f7c853f0fb938bcd3bc59cdfdc5203635ffd18bf354f6967ea0f824", + "sha256:78baa6d91634dfb69ec52a463534bc0df05dbd546209b79a3880a34487f4b84f", + "sha256:7974a0b5ecd505609e3b19742b60cee7aa2aa2fb3151bc917e6e2646d7667dcf", + "sha256:7a4f97a081603d2050bfaffdefa5b02a9ec823f8348a572e39032caa8404a487", + "sha256:7b1bef6280950ee6c177b326508f86cad7ad4dff12454483b51d8b7d673a2c5d", + "sha256:7d053096f67cd1241601111b698f5cad775f97ab25d81567d3f59219b5f1adbd", + "sha256:804a4d582ba6e5b747c625bf1255e6b1507465494a40a2130978bda7b932c90b", + "sha256:807f52c1f798eef6cf26beb819eeb8819b1622ddfeef9d0977a8502d4db6d534", + "sha256:80ed5e856eb7f30115aaf94e4a08114ccc8813e6ed1b5efa74f9f82e8509858f", + "sha256:8417cb1f36cc0bc7eaba8ccb0e04d55f0ee52df06df3ad55259b9a323555fc8b", + "sha256:8436c508b408b82d87dc5f62496973a1805cd46727c34440b0d29d8a2f50a6c9", + "sha256:89149166622f4db9b4b6a449256291dc87a99ee53151c74cbd82a53c8c2f6ccd", + "sha256:8bfa33f4f2672964266e940dd22a195989ba31669bd84629f05fab3ef4e2d125", + "sha256:8c60ca7339acd497a55b0ea5d506b2a2612afb2826560416f6894e8b5770d4a9", + "sha256:91b36a978b5ae0ee86c394f5a54d6ef44db1de0815eb43de826d41d21e4af3de", + "sha256:955f8851919303c92343d2f66165294848d57e9bba6cf6e3625485a70a038d11", + "sha256:97f68b8d6831127e4787ad15e6757232e14e12060bec17091b85eb1486b91d8d", + "sha256:9b23ca7ef998bc739bf6ffc077c2116917eabcc901f88da1b9856b210ef63f35", + "sha256:9f0b8b1c6d84c8034a44893aba5e767bf9c7a211e313a9605d9c617d7083829f", + "sha256:aabfa34badd18f1da5ec1bc2715cadc8dca465868a4e73a0173466b688f29dda", + "sha256:ab36c8eb7e454e34e60eb55ca5d241a5d18b2c6244f6827a30e451c42410b5f7", + "sha256:b010a7a4fd316c3c484d482922d13044979e78d1861f0e0650423144c616a46a", + "sha256:b1ac5992a838106edb89654e0aebfc24f5848ae2547d22c2c3f66454daa11971", + "sha256:b7b2d86dd06bfc2ade3312a83a5c364c7ec2e3498f8734282c6c3d4b07b346b8", + "sha256:b97e690a2118911e39b4042088092771b4ae3fc3aa86518f84b8cf6888dbdb41", + "sha256:bc2722592d8998c870fa4e290c2eec2c1569b87fe58618e67d38b4665dfa680d", + "sha256:c0429126cf75e16c4f0ad00ee0eae4242dc652290f940152ca8c75c3a4b6ee8f", + "sha256:c30197aa96e8eed02200a83fba2657b4c3acd0f0aa4bdc9f6c1af8e8962e0757", + "sha256:c4c3e6da02df6fa1410a7680bd3f63d4f710232d3139089536310d027950696a", + "sha256:c75cb2a3e389853835e84a2d8fb2b81a10645b503eca9bcb98df6b5a43eb8886", + "sha256:c96836c97b1238e9c9e3fe90844c947d5afbf4f4c92762679acfe19927d81d77", + "sha256:d7f50a1f8c450f3925cb367d011448c39239bb3eb4117c36a6d354794de4ce76", + "sha256:d973f03c0cb71c5ed99037b870f2be986c3c05e63622c017ea9816881d2dd247", + "sha256:d98b1668f06378c6dbefec3b92299716b931cd4e6061f3c875a71ced1780ab85", + "sha256:d9c3cdf5390dcd29aa8056d13e8e99526cda0305acc038b96b30352aff5ff2bb", + "sha256:dad3e487649f498dd991eeb901125411559b22e8d7ab25d3aeb1af367df5efd7", + "sha256:dccbe65bd2f7f7ec22c4ff99ed56faa1e9f785482b9bbd7c717e26fd723a1d1e", + "sha256:dd78cfcda14a1ef52584dbb008f7ac81c1328c0f58184bf9a84c49c605002da6", + "sha256:e218488cd232553829be0664c2292d3af2eeeb94b32bea483cf79ac6a694e037", + "sha256:e358e64305fe12299a08e08978f51fc21fac060dcfcddd95453eabe5b93ed0e1", + "sha256:ea0d8d539afa5eb2728aa1932a988a9a7af94f18582ffae4bc10b3fbdad0626e", + "sha256:eab677309cdb30d047996b36d34caeda1dc91149e4fdca0b1a039b3f79d9a807", + "sha256:eb8178fe3dba6450a3e024e95ac49ed3400e506fd4e9e5c32d30adda88cbd407", + "sha256:ecddf25bee22fe4fe3737a399d0d177d72bc22be6913acfab364b40bce1ba83c", + "sha256:eea6ee1db730b3483adf394ea72f808b6e18cf3cb6454b4d86e04fa8c4327a12", + "sha256:f08ff5e948271dc7e18a35641d2f11a4cd8dfd5634f55228b691e62b37125eb3", + "sha256:f30bf9fd9be89ecb2360c7d94a711f00c09b976258846efe40db3d05828e8089", + "sha256:fa88b843d6e211393a37219e6a1c1df99d35e8fd90446f1118f4216e307e48cd", + "sha256:fc54db6c8593ef7d4b2a331b58653356cf04f67c960f584edb7c3d8c97e8f39e", + "sha256:fd4ec41f914fa74ad1b8304bbc634b3de73d2a0889bd32076342a573e0779e00", + "sha256:ffc9202a29ab3920fa812879e95a9e78b2465fd10be7fcbd042899695d75e616" + ], + "markers": "python_version >= '3.7'", + "version": "==3.4.1" }, "click": { "hashes": [ - "sha256:ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28", - "sha256:ca9853ad459e787e2192211578cc907e7594e294c7ccc834310722b41b9ca6de" + "sha256:63c132bbbed01578a06712a2d1f497bb62d9c1c0d329b7903a866228027263b2", + "sha256:ed53c9d8990d83c2a27deae68e4ee337473f6330c040a31d4225c9574d16096a" ], "markers": "python_version >= '3.7'", - "version": "==8.1.7" + "version": "==8.1.8" }, "cryptography": { "hashes": [ @@ -435,7 +422,7 @@ "sha256:3111b9d131c238bec2f8f516e123e14ba243563fb135d3fe885990585aa7795b", "sha256:47c2edf7c6738fafb49fd34290706d1a1a2f4d1c6df275526b62cbb4aa5393cc" ], - "markers": "python_version >= '3.7'", + "markers": "python_version < '3.11'", "version": "==1.2.2" }, "frozenlist": { @@ -546,20 +533,20 @@ }, "google-api-python-client": { "hashes": [ - "sha256:1b420062e03bfcaa1c79e2e00a612d29a6a934151ceb3d272fe150a656dc8f17", - "sha256:a521bbbb2ec0ba9d6f307cdd64ed6e21eeac372d1bd7493a4ab5022941f784ad" + "sha256:0b0231db106324c659bf8b85f390391c00da57a60ebc4271e33def7aac198c75", + "sha256:2ee342d0967ad1cedec43ccd7699671d94bff151e1f06833ea81303f9a6d86fd" ], "index": "pypi", "markers": "python_version >= '3.7'", - "version": "==2.154.0" + "version": "==2.157.0" }, "google-auth": { "hashes": [ - "sha256:51a15d47028b66fd36e5c64a82d2d57480075bccc7da37cde257fc94177a61fb", - "sha256:545e9618f2df0bcbb7dcbc45a546485b1212624716975a1ea5ae8149ce769ab1" + "sha256:0054623abf1f9c83492c63d3f47e77f0a544caa3d40b2d98e099a611c2dd5d00", + "sha256:42664f18290a6be591be5329a96fe30184be1a1badb7292a7f686a9659de9ca0" ], "markers": "python_version >= '3.7'", - "version": "==2.36.0" + "version": "==2.37.0" }, "google-auth-httplib2": { "hashes": [ @@ -616,19 +603,11 @@ }, "jsonschema": { "hashes": [ - "sha256:d71497fef26351a33265337fa77ffeb82423f3ea21283cd9467bb03999266bc4", - "sha256:fbadb6f8b144a8f8cf9f0b89ba94501d143e50411a1278633f56a7acf7fd5566" + "sha256:0f864437ab8b6076ba6707453ef8f98a6a0d512a80e93f8abdb676f737ecb60d", + "sha256:a870ad254da1a8ca84b6a2905cac29d265f805acc57af304784962a2aa6508f6" ], - "markers": "python_version >= '3.8'", - "version": "==4.23.0" - }, - "jsonschema-specifications": { - "hashes": [ - "sha256:0f38b83639958ce1152d02a7f062902c41c8fd20d558b0c34344292d417ae272", - "sha256:a09a0680616357d9a0ecf05c12ad234479f549239d0f5b55f3deea67475da9bf" - ], - "markers": "python_version >= '3.9'", - "version": "==2024.10.1" + "markers": "python_version >= '3.7'", + "version": "==4.17.3" }, "msgpack": { "hashes": [ @@ -689,7 +668,7 @@ "sha256:f9904e24646570539a8950400602d66d2b2c492b9010ea7e965025cb71d0c86d", "sha256:f9af38a89b6a5c04b7d18c492c8ccf2aee7048aff1ce8437c4683bb5a1df893d" ], - "markers": "python_version >= '3.8'", + "markers": "platform_system != 'Windows'", "version": "==1.0.8" }, "multidict": { @@ -829,7 +808,7 @@ "sha256:f870204a840a60da0b12273ef34f7051e98c3b5961b61b0c2c1be6dfd64fbcd3", "sha256:ffa75af20b44f8dba823498024771d5ac50620e6915abac414251bd971b4529f" ], - "markers": "python_version >= '3.9'", + "markers": "python_version < '3.11'", "version": "==1.26.4" }, "oauth2client": { @@ -1049,20 +1028,20 @@ }, "protobuf": { "hashes": [ - "sha256:012ce28d862ff417fd629285aca5d9772807f15ceb1a0dbd15b88f58c776c98c", - "sha256:027fbcc48cea65a6b17028510fdd054147057fa78f4772eb547b9274e5219331", - "sha256:1fc55267f086dd4050d18ef839d7bd69300d0d08c2a53ca7df3920cc271a3c34", - "sha256:22c1f539024241ee545cbcb00ee160ad1877975690b16656ff87dde107b5f110", - "sha256:32600ddb9c2a53dedc25b8581ea0f1fd8ea04956373c0c07577ce58d312522e0", - "sha256:50879eb0eb1246e3a5eabbbe566b44b10348939b7cc1b267567e8c3d07213853", - "sha256:5a41deccfa5e745cef5c65a560c76ec0ed8e70908a67cc8f4da5fce588b50d57", - "sha256:683be02ca21a6ffe80db6dd02c0b5b2892322c59ca57fd6c872d652cb80549cb", - "sha256:8ee1461b3af56145aca2800e6a3e2f928108c749ba8feccc6f5dd0062c410c0d", - "sha256:b5ba1d0e4c8a40ae0496d0e2ecfdbb82e1776928a205106d14ad6985a09ec155", - "sha256:d473655e29c0c4bbf8b69e9a8fb54645bc289dead6d753b952e7aa660254ae18" + "sha256:13d6d617a2a9e0e82a88113d7191a1baa1e42c2cc6f5f1398d3b054c8e7e714a", + "sha256:2d2e674c58a06311c8e99e74be43e7f3a8d1e2b2fdf845eaa347fbd866f23355", + "sha256:36000f97ea1e76e8398a3f02936aac2a5d2b111aae9920ec1b769fc4a222c4d9", + "sha256:494229ecd8c9009dd71eda5fd57528395d1eacdf307dbece6c12ad0dd09e912e", + "sha256:842de6d9241134a973aab719ab42b008a18a90f9f07f06ba480df268f86432f9", + "sha256:a0c53d78383c851bfa97eb42e3703aefdc96d2036a41482ffd55dc5f529466eb", + "sha256:b2cc8e8bb7c9326996f0e160137b0861f1a82162502658df2951209d0cb0309e", + "sha256:b6b0d416bbbb9d4fbf9d0561dbfc4e324fd522f61f7af0fe0f282ab67b22477e", + "sha256:c12ba8249f5624300cf51c3d0bfe5be71a60c63e4dcf51ffe9a68771d958c851", + "sha256:e621a98c0201a7c8afe89d9646859859be97cb22b8bf1d8eacfd90d5bda2eb19", + "sha256:fde4554c0e578a5a0bcc9a276339594848d1e89f9ea47b4427c80e5d72f90181" ], "markers": "python_version >= '3.8'", - "version": "==5.29.1" + "version": "==5.29.2" }, "pyasn1": { "hashes": [ @@ -1090,125 +1069,115 @@ }, "pydantic": { "hashes": [ - "sha256:be04d85bbc7b65651c5f8e6b9976ed9c6f41782a55524cef079a34a0bb82144d", - "sha256:cb5ac360ce894ceacd69c403187900a02c4b20b693a9dd1d643e1effab9eadf9" + "sha256:c7a8a9fdf7d100afa49647eae340e2d23efa382466a8d177efcd1381e9be5598", + "sha256:f66a7073abd93214a20c5f7b32d56843137a7a2e70d02111f3be287035c45370" ], + "index": "pypi", "markers": "python_version >= '3.8'", - "version": "==2.10.3" + "version": "==2.9.0" }, "pydantic-core": { "hashes": [ - "sha256:00e6424f4b26fe82d44577b4c842d7df97c20be6439e8e685d0d715feceb9fb9", - "sha256:029d9757eb621cc6e1848fa0b0310310de7301057f623985698ed7ebb014391b", - "sha256:02a3d637bd387c41d46b002f0e49c52642281edacd2740e5a42f7017feea3f2c", - "sha256:0325336f348dbee6550d129b1627cb8f5351a9dc91aad141ffb96d4937bd9529", - "sha256:062f60e512fc7fff8b8a9d680ff0ddaaef0193dba9fa83e679c0c5f5fbd018bc", - "sha256:0b3dfe500de26c52abe0477dde16192ac39c98f05bf2d80e76102d394bd13854", - "sha256:0e4216e64d203e39c62df627aa882f02a2438d18a5f21d7f721621f7a5d3611d", - "sha256:121ceb0e822f79163dd4699e4c54f5ad38b157084d97b34de8b232bcaad70278", - "sha256:159cac0a3d096f79ab6a44d77a961917219707e2a130739c64d4dd46281f5c2a", - "sha256:15aae984e46de8d376df515f00450d1522077254ef6b7ce189b38ecee7c9677c", - "sha256:15cc53a3179ba0fcefe1e3ae50beb2784dede4003ad2dfd24f81bba4b23a454f", - "sha256:161c27ccce13b6b0c8689418da3885d3220ed2eae2ea5e9b2f7f3d48f1d52c27", - "sha256:19910754e4cc9c63bc1c7f6d73aa1cfee82f42007e407c0f413695c2f7ed777f", - "sha256:1ba5e3963344ff25fc8c40da90f44b0afca8cfd89d12964feb79ac1411a260ac", - "sha256:1c00666a3bd2f84920a4e94434f5974d7bbc57e461318d6bb34ce9cdbbc1f6b2", - "sha256:1c39b07d90be6b48968ddc8c19e7585052088fd7ec8d568bb31ff64c70ae3c97", - "sha256:206b5cf6f0c513baffaeae7bd817717140770c74528f3e4c3e1cec7871ddd61a", - "sha256:258c57abf1188926c774a4c94dd29237e77eda19462e5bb901d88adcab6af919", - "sha256:2cdf7d86886bc6982354862204ae3b2f7f96f21a3eb0ba5ca0ac42c7b38598b9", - "sha256:2d4567c850905d5eaaed2f7a404e61012a51caf288292e016360aa2b96ff38d4", - "sha256:35c14ac45fcfdf7167ca76cc80b2001205a8d5d16d80524e13508371fb8cdd9c", - "sha256:38de0a70160dd97540335b7ad3a74571b24f1dc3ed33f815f0880682e6880131", - "sha256:3af385b0cee8df3746c3f406f38bcbfdc9041b5c2d5ce3e5fc6637256e60bbc5", - "sha256:3b748c44bb9f53031c8cbc99a8a061bc181c1000c60a30f55393b6e9c45cc5bd", - "sha256:3bbd5d8cc692616d5ef6fbbbd50dbec142c7e6ad9beb66b78a96e9c16729b089", - "sha256:3ccaa88b24eebc0f849ce0a4d09e8a408ec5a94afff395eb69baf868f5183107", - "sha256:3fa80ac2bd5856580e242dbc202db873c60a01b20309c8319b5c5986fbe53ce6", - "sha256:4228b5b646caa73f119b1ae756216b59cc6e2267201c27d3912b592c5e323b60", - "sha256:42b0e23f119b2b456d07ca91b307ae167cc3f6c846a7b169fca5326e32fdc6cf", - "sha256:45cf8588c066860b623cd11c4ba687f8d7175d5f7ef65f7129df8a394c502de5", - "sha256:45d9c5eb9273aa50999ad6adc6be5e0ecea7e09dbd0d31bd0c65a55a2592ca08", - "sha256:4603137322c18eaf2e06a4495f426aa8d8388940f3c457e7548145011bb68e05", - "sha256:46ccfe3032b3915586e469d4972973f893c0a2bb65669194a5bdea9bacc088c2", - "sha256:4fefee876e07a6e9aad7a8c8c9f85b0cdbe7df52b8a9552307b09050f7512c7e", - "sha256:5556470f1a2157031e676f776c2bc20acd34c1990ca5f7e56f1ebf938b9ab57c", - "sha256:57866a76e0b3823e0b56692d1a0bf722bffb324839bb5b7226a7dbd6c9a40b17", - "sha256:5897bec80a09b4084aee23f9b73a9477a46c3304ad1d2d07acca19723fb1de62", - "sha256:58ca98a950171f3151c603aeea9303ef6c235f692fe555e883591103da709b23", - "sha256:5ca038c7f6a0afd0b2448941b6ef9d5e1949e999f9e5517692eb6da58e9d44be", - "sha256:5f6c8a66741c5f5447e047ab0ba7a1c61d1e95580d64bce852e3df1f895c4067", - "sha256:5f8c4718cd44ec1580e180cb739713ecda2bdee1341084c1467802a417fe0f02", - "sha256:5fde892e6c697ce3e30c61b239330fc5d569a71fefd4eb6512fc6caec9dd9e2f", - "sha256:62a763352879b84aa31058fc931884055fd75089cccbd9d58bb6afd01141b235", - "sha256:62ba45e21cf6571d7f716d903b5b7b6d2617e2d5d67c0923dc47b9d41369f840", - "sha256:64c65f40b4cd8b0e049a8edde07e38b476da7e3aaebe63287c899d2cff253fa5", - "sha256:655d7dd86f26cb15ce8a431036f66ce0318648f8853d709b4167786ec2fa4807", - "sha256:66ff044fd0bb1768688aecbe28b6190f6e799349221fb0de0e6f4048eca14c16", - "sha256:672ebbe820bb37988c4d136eca2652ee114992d5d41c7e4858cdd90ea94ffe5c", - "sha256:6b9af86e1d8e4cfc82c2022bfaa6f459381a50b94a29e95dcdda8442d6d83864", - "sha256:6e0bd57539da59a3e4671b90a502da9a28c72322a4f17866ba3ac63a82c4498e", - "sha256:71a5e35c75c021aaf400ac048dacc855f000bdfed91614b4a726f7432f1f3d6a", - "sha256:7597c07fbd11515f654d6ece3d0e4e5093edc30a436c63142d9a4b8e22f19c35", - "sha256:764be71193f87d460a03f1f7385a82e226639732214b402f9aa61f0d025f0737", - "sha256:7699b1df36a48169cdebda7ab5a2bac265204003f153b4bd17276153d997670a", - "sha256:7ccebf51efc61634f6c2344da73e366c75e735960b5654b63d7e6f69a5885fa3", - "sha256:7f7059ca8d64fea7f238994c97d91f75965216bcbe5f695bb44f354893f11d52", - "sha256:8065914ff79f7eab1599bd80406681f0ad08f8e47c880f17b416c9f8f7a26d05", - "sha256:816f5aa087094099fff7edabb5e01cc370eb21aa1a1d44fe2d2aefdfb5599b31", - "sha256:81f2ec23ddc1b476ff96563f2e8d723830b06dceae348ce02914a37cb4e74b89", - "sha256:84286494f6c5d05243456e04223d5a9417d7f443c3b76065e75001beb26f88de", - "sha256:8bf7b66ce12a2ac52d16f776b31d16d91033150266eb796967a7e4621707e4f6", - "sha256:8f1edcea27918d748c7e5e4d917297b2a0ab80cad10f86631e488b7cddf76a36", - "sha256:981fb88516bd1ae8b0cbbd2034678a39dedc98752f264ac9bc5839d3923fa04c", - "sha256:98476c98b02c8e9b2eec76ac4156fd006628b1b2d0ef27e548ffa978393fd154", - "sha256:992cea5f4f3b29d6b4f7f1726ed8ee46c8331c6b4eed6db5b40134c6fe1768bb", - "sha256:9a3b0793b1bbfd4146304e23d90045f2a9b5fd5823aa682665fbdaf2a6c28f3e", - "sha256:9a42d6a8156ff78981f8aa56eb6394114e0dedb217cf8b729f438f643608cbcd", - "sha256:9c10c309e18e443ddb108f0ef64e8729363adbfd92d6d57beec680f6261556f3", - "sha256:9cbd94fc661d2bab2bc702cddd2d3370bbdcc4cd0f8f57488a81bcce90c7a54f", - "sha256:9fdcf339322a3fae5cbd504edcefddd5a50d9ee00d968696846f089b4432cf78", - "sha256:a0697803ed7d4af5e4c1adf1670af078f8fcab7a86350e969f454daf598c4960", - "sha256:a28af0695a45f7060e6f9b7092558a928a28553366519f64083c63a44f70e618", - "sha256:a2e02889071850bbfd36b56fd6bc98945e23670773bc7a76657e90e6b6603c08", - "sha256:a33cd6ad9017bbeaa9ed78a2e0752c5e250eafb9534f308e7a5f7849b0b1bfb4", - "sha256:a3cb37038123447cf0f3ea4c74751f6a9d7afef0eb71aa07bf5f652b5e6a132c", - "sha256:a57847b090d7892f123726202b7daa20df6694cbd583b67a592e856bff603d6c", - "sha256:a5a8e19d7c707c4cadb8c18f5f60c843052ae83c20fa7d44f41594c644a1d330", - "sha256:ac3b20653bdbe160febbea8aa6c079d3df19310d50ac314911ed8cc4eb7f8cb8", - "sha256:ac6c2c45c847bbf8f91930d88716a0fb924b51e0c6dad329b793d670ec5db792", - "sha256:acc07b2cfc5b835444b44a9956846b578d27beeacd4b52e45489e93276241025", - "sha256:aee66be87825cdf72ac64cb03ad4c15ffef4143dbf5c113f64a5ff4f81477bf9", - "sha256:af52d26579b308921b73b956153066481f064875140ccd1dfd4e77db89dbb12f", - "sha256:b94d4ba43739bbe8b0ce4262bcc3b7b9f31459ad120fb595627eaeb7f9b9ca01", - "sha256:ba630d5e3db74c79300d9a5bdaaf6200172b107f263c98a0539eeecb857b2337", - "sha256:bed0f8a0eeea9fb72937ba118f9db0cb7e90773462af7962d382445f3005e5a4", - "sha256:bf99c8404f008750c846cb4ac4667b798a9f7de673ff719d705d9b2d6de49c5f", - "sha256:c3027001c28434e7ca5a6e1e527487051136aa81803ac812be51802150d880dd", - "sha256:c65af9088ac534313e1963443d0ec360bb2b9cba6c2909478d22c2e363d98a51", - "sha256:d0165ab2914379bd56908c02294ed8405c252250668ebcb438a55494c69f44ab", - "sha256:d1b26e1dff225c31897696cab7d4f0a315d4c0d9e8666dbffdb28216f3b17fdc", - "sha256:d950caa237bb1954f1b8c9227b5065ba6875ac9771bb8ec790d956a699b78676", - "sha256:dc61505e73298a84a2f317255fcc72b710b72980f3a1f670447a21efc88f8381", - "sha256:e173486019cc283dc9778315fa29a363579372fe67045e971e89b6365cc035ed", - "sha256:e1f735dc43da318cad19b4173dd1ffce1d84aafd6c9b782b3abc04a0d5a6f5bb", - "sha256:e9386266798d64eeb19dd3677051f5705bf873e98e15897ddb7d76f477131967", - "sha256:f216dbce0e60e4d03e0c4353c7023b202d95cbaeff12e5fd2e82ea0a66905073", - "sha256:f4e5658dbffe8843a0f12366a4c2d1c316dbe09bb4dfbdc9d2d9cd6031de8aae", - "sha256:f5a823165e6d04ccea61a9f0576f345f8ce40ed533013580e087bd4d7442b52c", - "sha256:f69ed81ab24d5a3bd93861c8c4436f54afdf8e8cc421562b0c7504cf3be58206", - "sha256:f82d068a2d6ecfc6e054726080af69a6764a10015467d7d7b9f66d6ed5afa23b" + "sha256:0102e49ac7d2df3379ef8d658d3bc59d3d769b0bdb17da189b75efa861fc07b4", + "sha256:0123655fedacf035ab10c23450163c2f65a4174f2bb034b188240a6cf06bb123", + "sha256:043ef8469f72609c4c3a5e06a07a1f713d53df4d53112c6d49207c0bd3c3bd9b", + "sha256:0448b81c3dfcde439551bb04a9f41d7627f676b12701865c8a2574bcea034437", + "sha256:05b366fb8fe3d8683b11ac35fa08947d7b92be78ec64e3277d03bd7f9b7cda79", + "sha256:07049ec9306ec64e955b2e7c40c8d77dd78ea89adb97a2013d0b6e055c5ee4c5", + "sha256:084414ffe9a85a52940b49631321d636dadf3576c30259607b75516d131fecd0", + "sha256:086c5db95157dc84c63ff9d96ebb8856f47ce113c86b61065a066f8efbe80acf", + "sha256:12625e69b1199e94b0ae1c9a95d000484ce9f0182f9965a26572f054b1537e44", + "sha256:16b25a4a120a2bb7dab51b81e3d9f3cde4f9a4456566c403ed29ac81bf49744f", + "sha256:19f1352fe4b248cae22a89268720fc74e83f008057a652894f08fa931e77dced", + "sha256:1a2ab4f410f4b886de53b6bddf5dd6f337915a29dd9f22f20f3099659536b2f6", + "sha256:1c7b81beaf7c7ebde978377dc53679c6cba0e946426fc7ade54251dfe24a7604", + "sha256:1cf842265a3a820ebc6388b963ead065f5ce8f2068ac4e1c713ef77a67b71f7c", + "sha256:1eb37f7d6a8001c0f86dc8ff2ee8d08291a536d76e49e78cda8587bb54d8b329", + "sha256:23af245b8f2f4ee9e2c99cb3f93d0e22fb5c16df3f2f643f5a8da5caff12a653", + "sha256:257d6a410a0d8aeb50b4283dea39bb79b14303e0fab0f2b9d617701331ed1515", + "sha256:276ae78153a94b664e700ac362587c73b84399bd1145e135287513442e7dfbc7", + "sha256:2b1a195efd347ede8bcf723e932300292eb13a9d2a3c1f84eb8f37cbbc905b7f", + "sha256:329a721253c7e4cbd7aad4a377745fbcc0607f9d72a3cc2102dd40519be75ed2", + "sha256:358331e21a897151e54d58e08d0219acf98ebb14c567267a87e971f3d2a3be59", + "sha256:3649bd3ae6a8ebea7dc381afb7f3c6db237fc7cebd05c8ac36ca8a4187b03b30", + "sha256:3713dc093d5048bfaedbba7a8dbc53e74c44a140d45ede020dc347dda18daf3f", + "sha256:3ef71ec876fcc4d3bbf2ae81961959e8d62f8d74a83d116668409c224012e3af", + "sha256:41ae8537ad371ec018e3c5da0eb3f3e40ee1011eb9be1da7f965357c4623c501", + "sha256:4a801c5e1e13272e0909c520708122496647d1279d252c9e6e07dac216accc41", + "sha256:4c83c64d05ffbbe12d4e8498ab72bdb05bcc1026340a4a597dc647a13c1605ec", + "sha256:4cebb9794f67266d65e7e4cbe5dcf063e29fc7b81c79dc9475bd476d9534150e", + "sha256:5668b3173bb0b2e65020b60d83f5910a7224027232c9f5dc05a71a1deac9f960", + "sha256:56e6a12ec8d7679f41b3750ffa426d22b44ef97be226a9bab00a03365f217b2b", + "sha256:582871902e1902b3c8e9b2c347f32a792a07094110c1bca6c2ea89b90150caac", + "sha256:5c8aa40f6ca803f95b1c1c5aeaee6237b9e879e4dfb46ad713229a63651a95fb", + "sha256:5d813fd871b3d5c3005157622ee102e8908ad6011ec915a18bd8fde673c4360e", + "sha256:5dd0ec5f514ed40e49bf961d49cf1bc2c72e9b50f29a163b2cc9030c6742aa73", + "sha256:5f3cf3721eaf8741cffaf092487f1ca80831202ce91672776b02b875580e174a", + "sha256:6294907eaaccf71c076abdd1c7954e272efa39bb043161b4b8aa1cd76a16ce43", + "sha256:64d094ea1aa97c6ded4748d40886076a931a8bf6f61b6e43e4a1041769c39dd2", + "sha256:6650a7bbe17a2717167e3e23c186849bae5cef35d38949549f1c116031b2b3aa", + "sha256:67b6655311b00581914aba481729971b88bb8bc7996206590700a3ac85e457b8", + "sha256:6b06c5d4e8701ac2ba99a2ef835e4e1b187d41095a9c619c5b185c9068ed2a49", + "sha256:6ce883906810b4c3bd90e0ada1f9e808d9ecf1c5f0b60c6b8831d6100bcc7dd6", + "sha256:6db09153d8438425e98cdc9a289c5fade04a5d2128faff8f227c459da21b9703", + "sha256:6f80fba4af0cb1d2344869d56430e304a51396b70d46b91a55ed4959993c0589", + "sha256:743e5811b0c377eb830150d675b0847a74a44d4ad5ab8845923d5b3a756d8100", + "sha256:753294d42fb072aa1775bfe1a2ba1012427376718fa4c72de52005a3d2a22178", + "sha256:7568f682c06f10f30ef643a1e8eec4afeecdafde5c4af1b574c6df079e96f96c", + "sha256:7706e15cdbf42f8fab1e6425247dfa98f4a6f8c63746c995d6a2017f78e619ae", + "sha256:785e7f517ebb9890813d31cb5d328fa5eda825bb205065cde760b3150e4de1f7", + "sha256:7a05c0240f6c711eb381ac392de987ee974fa9336071fb697768dfdb151345ce", + "sha256:7ce7eaf9a98680b4312b7cebcdd9352531c43db00fca586115845df388f3c465", + "sha256:7ce8e26b86a91e305858e018afc7a6e932f17428b1eaa60154bd1f7ee888b5f8", + "sha256:7d0324a35ab436c9d768753cbc3c47a865a2cbc0757066cb864747baa61f6ece", + "sha256:7e9b24cca4037a561422bf5dc52b38d390fb61f7bfff64053ce1b72f6938e6b2", + "sha256:810ca06cca91de9107718dc83d9ac4d2e86efd6c02cba49a190abcaf33fb0472", + "sha256:820f6ee5c06bc868335e3b6e42d7ef41f50dfb3ea32fbd523ab679d10d8741c0", + "sha256:82764c0bd697159fe9947ad59b6db6d7329e88505c8f98990eb07e84cc0a5d81", + "sha256:8ae65fdfb8a841556b52935dfd4c3f79132dc5253b12c0061b96415208f4d622", + "sha256:8d5b0ff3218858859910295df6953d7bafac3a48d5cd18f4e3ed9999efd2245f", + "sha256:95d6bf449a1ac81de562d65d180af5d8c19672793c81877a2eda8fde5d08f2fd", + "sha256:964c7aa318da542cdcc60d4a648377ffe1a2ef0eb1e996026c7f74507b720a78", + "sha256:96ef39add33ff58cd4c112cbac076726b96b98bb8f1e7f7595288dcfb2f10b57", + "sha256:a6612c2a844043e4d10a8324c54cdff0042c558eef30bd705770793d70b224aa", + "sha256:a8031074a397a5925d06b590121f8339d34a5a74cfe6970f8a1124eb8b83f4ac", + "sha256:aab9e522efff3993a9e98ab14263d4e20211e62da088298089a03056980a3e69", + "sha256:ae579143826c6f05a361d9546446c432a165ecf1c0b720bbfd81152645cb897d", + "sha256:ae90b9e50fe1bd115b24785e962b51130340408156d34d67b5f8f3fa6540938e", + "sha256:b18cf68255a476b927910c6873d9ed00da692bb293c5b10b282bd48a0afe3ae2", + "sha256:b7efb12e5071ad8d5b547487bdad489fbd4a5a35a0fc36a1941517a6ad7f23e0", + "sha256:c4d9f15ffe68bcd3898b0ad7233af01b15c57d91cd1667f8d868e0eacbfe3f87", + "sha256:c53100c8ee5a1e102766abde2158077d8c374bee0639201f11d3032e3555dfbc", + "sha256:c57e493a0faea1e4c38f860d6862ba6832723396c884fbf938ff5e9b224200e2", + "sha256:c8319e0bd6a7b45ad76166cc3d5d6a36c97d0c82a196f478c3ee5346566eebfd", + "sha256:caffda619099cfd4f63d48462f6aadbecee3ad9603b4b88b60cb821c1b258576", + "sha256:cc0c316fba3ce72ac3ab7902a888b9dc4979162d320823679da270c2d9ad0cad", + "sha256:cdd02a08205dc90238669f082747612cb3c82bd2c717adc60f9b9ecadb540f80", + "sha256:d50ac34835c6a4a0d456b5db559b82047403c4317b3bc73b3455fefdbdc54b0a", + "sha256:d6b9dd6aa03c812017411734e496c44fef29b43dba1e3dd1fa7361bbacfc1354", + "sha256:da3131ef2b940b99106f29dfbc30d9505643f766704e14c5d5e504e6a480c35e", + "sha256:da43cbe593e3c87d07108d0ebd73771dc414488f1f91ed2e204b0370b94b37ac", + "sha256:dd59638025160056687d598b054b64a79183f8065eae0d3f5ca523cde9943940", + "sha256:e1895e949f8849bc2757c0dbac28422a04be031204df46a56ab34bcf98507342", + "sha256:e1a79ad49f346aa1a2921f31e8dbbab4d64484823e813a002679eaa46cba39e1", + "sha256:e460475719721d59cd54a350c1f71c797c763212c836bf48585478c5514d2854", + "sha256:e64ffaf8f6e17ca15eb48344d86a7a741454526f3a3fa56bc493ad9d7ec63936", + "sha256:e6e3ccebdbd6e53474b0bb7ab8b88e83c0cfe91484b25e058e581348ee5a01a5", + "sha256:e758d271ed0286d146cf7c04c539a5169a888dd0b57026be621547e756af55bc", + "sha256:f087879f1ffde024dd2788a30d55acd67959dcf6c431e9d3682d1c491a0eb474", + "sha256:f477d26183e94eaafc60b983ab25af2a809a1b48ce4debb57b343f671b7a90b6", + "sha256:fc535cb898ef88333cf317777ecdfe0faac1c2a3187ef7eb061b6f7ecf7e6bae" ], "markers": "python_version >= '3.8'", - "version": "==2.27.1" + "version": "==2.23.2" }, "pydantic-settings": { "hashes": [ - "sha256:7fb0637c786a558d3103436278a7c4f1cfd29ba8973238a50c5bb9a55387da87", - "sha256:e0f92546d8a9923cb8941689abf85d6601a8c19a23e97a34b2964a2e3f813ca0" + "sha256:10c9caad35e64bfb3c2fbf70a078c0e25cc92499782e5200747f942a065dec93", + "sha256:590be9e6e24d06db33a4262829edef682500ef008565a969c73d39d5f8bfb3fd" ], "markers": "python_version >= '3.8'", - "version": "==2.6.1" + "version": "==2.7.1" }, "pynacl": { "hashes": [ @@ -1228,11 +1197,49 @@ }, "pyparsing": { "hashes": [ - "sha256:93d9577b88da0bbea8cc8334ee8b918ed014968fd2ec383e868fb8afb1ccef84", - "sha256:cbf74e27246d595d9a74b186b810f6fbb86726dbf3b9532efb343f6d7294fe9c" + "sha256:506ff4f4386c4cec0590ec19e6302d3aedb992fdc02c761e90416f158dacf8e1", + "sha256:61980854fd66de3a90028d679a954d5f2623e83144b5afe5ee86f43d762e5f0a" + ], + "markers": "python_version > '3.0'", + "version": "==3.2.1" + }, + "pyrsistent": { + "hashes": [ + "sha256:0724c506cd8b63c69c7f883cc233aac948c1ea946ea95996ad8b1380c25e1d3f", + "sha256:09848306523a3aba463c4b49493a760e7a6ca52e4826aa100ee99d8d39b7ad1e", + "sha256:0f3b1bcaa1f0629c978b355a7c37acd58907390149b7311b5db1b37648eb6958", + "sha256:21cc459636983764e692b9eba7144cdd54fdec23ccdb1e8ba392a63666c60c34", + "sha256:2e14c95c16211d166f59c6611533d0dacce2e25de0f76e4c140fde250997b3ca", + "sha256:2e2c116cc804d9b09ce9814d17df5edf1df0c624aba3b43bc1ad90411487036d", + "sha256:4021a7f963d88ccd15b523787d18ed5e5269ce57aa4037146a2377ff607ae87d", + "sha256:4c48f78f62ab596c679086084d0dd13254ae4f3d6c72a83ffdf5ebdef8f265a4", + "sha256:4f5c2d012671b7391803263419e31b5c7c21e7c95c8760d7fc35602353dee714", + "sha256:58b8f6366e152092194ae68fefe18b9f0b4f89227dfd86a07770c3d86097aebf", + "sha256:59a89bccd615551391f3237e00006a26bcf98a4d18623a19909a2c48b8e986ee", + "sha256:5cdd7ef1ea7a491ae70d826b6cc64868de09a1d5ff9ef8d574250d0940e275b8", + "sha256:6288b3fa6622ad8a91e6eb759cfc48ff3089e7c17fb1d4c59a919769314af224", + "sha256:6d270ec9dd33cdb13f4d62c95c1a5a50e6b7cdd86302b494217137f760495b9d", + "sha256:79ed12ba79935adaac1664fd7e0e585a22caa539dfc9b7c7c6d5ebf91fb89054", + "sha256:7d29c23bdf6e5438c755b941cef867ec2a4a172ceb9f50553b6ed70d50dfd656", + "sha256:8441cf9616d642c475684d6cf2520dd24812e996ba9af15e606df5f6fd9d04a7", + "sha256:881bbea27bbd32d37eb24dd320a5e745a2a5b092a17f6debc1349252fac85423", + "sha256:8c3aba3e01235221e5b229a6c05f585f344734bd1ad42a8ac51493d74722bbce", + "sha256:a14798c3005ec892bbada26485c2eea3b54109cb2533713e355c806891f63c5e", + "sha256:b14decb628fac50db5e02ee5a35a9c0772d20277824cfe845c8a8b717c15daa3", + "sha256:b318ca24db0f0518630e8b6f3831e9cba78f099ed5c1d65ffe3e023003043ba0", + "sha256:c1beb78af5423b879edaf23c5591ff292cf7c33979734c99aa66d5914ead880f", + "sha256:c55acc4733aad6560a7f5f818466631f07efc001fd023f34a6c203f8b6df0f0b", + "sha256:ca52d1ceae015859d16aded12584c59eb3825f7b50c6cfd621d4231a6cc624ce", + "sha256:cae40a9e3ce178415040a0383f00e8d68b569e97f31928a3a8ad37e3fde6df6a", + "sha256:e78d0c7c1e99a4a45c99143900ea0546025e41bb59ebc10182e947cf1ece9174", + "sha256:ef3992833fbd686ee783590639f4b8343a57f1f75de8633749d984dc0eb16c86", + "sha256:f058a615031eea4ef94ead6456f5ec2026c19fb5bd6bfe86e9665c4158cf802f", + "sha256:f5ac696f02b3fc01a710427585c855f65cd9c640e14f52abe52020722bb4906b", + "sha256:f920385a11207dc372a028b3f1e1038bb244b3ec38d448e6d8e43c6b3ba20e98", + "sha256:fed2c3216a605dc9a6ea50c7e84c82906e3684c4e80d2908208f662a6cbf9022" ], - "markers": "python_version >= '3.9'", - "version": "==3.2.0" + "markers": "python_version >= '3.8'", + "version": "==0.20.0" }, "pyserial": { "hashes": [ @@ -1280,14 +1287,6 @@ "markers": "python_full_version >= '3.6.0'", "version": "==1.2.1" }, - "referencing": { - "hashes": [ - "sha256:25b42124a6c8b632a425174f24087783efb348a6f1e0008e63cd4466fedf703c", - "sha256:eda6d3234d62814d1c64e305c1331c9a3a6132da475ab6382eaa997b21ee75de" - ], - "markers": "python_version >= '3.8'", - "version": "==0.35.1" - }, "requests": { "hashes": [ "sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760", @@ -1304,115 +1303,6 @@ "markers": "python_version >= '3.4'", "version": "==2.0.0" }, - "rpds-py": { - "hashes": [ - "sha256:009de23c9c9ee54bf11303a966edf4d9087cd43a6003672e6aa7def643d06518", - "sha256:02fbb9c288ae08bcb34fb41d516d5eeb0455ac35b5512d03181d755d80810059", - "sha256:0a0461200769ab3b9ab7e513f6013b7a97fdeee41c29b9db343f3c5a8e2b9e61", - "sha256:0b09865a9abc0ddff4e50b5ef65467cd94176bf1e0004184eb915cbc10fc05c5", - "sha256:0b8db6b5b2d4491ad5b6bdc2bc7c017eec108acbf4e6785f42a9eb0ba234f4c9", - "sha256:0c150c7a61ed4a4f4955a96626574e9baf1adf772c2fb61ef6a5027e52803543", - "sha256:0f3cec041684de9a4684b1572fe28c7267410e02450f4561700ca5a3bc6695a2", - "sha256:1352ae4f7c717ae8cba93421a63373e582d19d55d2ee2cbb184344c82d2ae55a", - "sha256:177c7c0fce2855833819c98e43c262007f42ce86651ffbb84f37883308cb0e7d", - "sha256:1978d0021e943aae58b9b0b196fb4895a25cc53d3956b8e35e0b7682eefb6d56", - "sha256:1a60bce91f81ddaac922a40bbb571a12c1070cb20ebd6d49c48e0b101d87300d", - "sha256:1aef18820ef3e4587ebe8b3bc9ba6e55892a6d7b93bac6d29d9f631a3b4befbd", - "sha256:1e9663daaf7a63ceccbbb8e3808fe90415b0757e2abddbfc2e06c857bf8c5e2b", - "sha256:20070c65396f7373f5df4005862fa162db5d25d56150bddd0b3e8214e8ef45b4", - "sha256:214b7a953d73b5e87f0ebece4a32a5bd83c60a3ecc9d4ec8f1dca968a2d91e99", - "sha256:22bebe05a9ffc70ebfa127efbc429bc26ec9e9b4ee4d15a740033efda515cf3d", - "sha256:24e8abb5878e250f2eb0d7859a8e561846f98910326d06c0d51381fed59357bd", - "sha256:26fd7cac7dd51011a245f29a2cc6489c4608b5a8ce8d75661bb4a1066c52dfbe", - "sha256:27b1d3b3915a99208fee9ab092b8184c420f2905b7d7feb4aeb5e4a9c509b8a1", - "sha256:27e98004595899949bd7a7b34e91fa7c44d7a97c40fcaf1d874168bb652ec67e", - "sha256:2b8f60e1b739a74bab7e01fcbe3dddd4657ec685caa04681df9d562ef15b625f", - "sha256:2de29005e11637e7a2361fa151f780ff8eb2543a0da1413bb951e9f14b699ef3", - "sha256:2e8b55d8517a2fda8d95cb45d62a5a8bbf9dd0ad39c5b25c8833efea07b880ca", - "sha256:2fa4331c200c2521512595253f5bb70858b90f750d39b8cbfd67465f8d1b596d", - "sha256:3445e07bf2e8ecfeef6ef67ac83de670358abf2996916039b16a218e3d95e97e", - "sha256:3453e8d41fe5f17d1f8e9c383a7473cd46a63661628ec58e07777c2fff7196dc", - "sha256:378753b4a4de2a7b34063d6f95ae81bfa7b15f2c1a04a9518e8644e81807ebea", - "sha256:3af6e48651c4e0d2d166dc1b033b7042ea3f871504b6805ba5f4fe31581d8d38", - "sha256:3dfcbc95bd7992b16f3f7ba05af8a64ca694331bd24f9157b49dadeeb287493b", - "sha256:3f21f0495edea7fdbaaa87e633a8689cd285f8f4af5c869f27bc8074638ad69c", - "sha256:4041711832360a9b75cfb11b25a6a97c8fb49c07b8bd43d0d02b45d0b499a4ff", - "sha256:44d61b4b7d0c2c9ac019c314e52d7cbda0ae31078aabd0f22e583af3e0d79723", - "sha256:4617e1915a539a0d9a9567795023de41a87106522ff83fbfaf1f6baf8e85437e", - "sha256:4b232061ca880db21fa14defe219840ad9b74b6158adb52ddf0e87bead9e8493", - "sha256:5246b14ca64a8675e0a7161f7af68fe3e910e6b90542b4bfb5439ba752191df6", - "sha256:5725dd9cc02068996d4438d397e255dcb1df776b7ceea3b9cb972bdb11260a83", - "sha256:583f6a1993ca3369e0f80ba99d796d8e6b1a3a2a442dd4e1a79e652116413091", - "sha256:59259dc58e57b10e7e18ce02c311804c10c5a793e6568f8af4dead03264584d1", - "sha256:593eba61ba0c3baae5bc9be2f5232430453fb4432048de28399ca7376de9c627", - "sha256:59f4a79c19232a5774aee369a0c296712ad0e77f24e62cad53160312b1c1eaa1", - "sha256:5f0e260eaf54380380ac3808aa4ebe2d8ca28b9087cf411649f96bad6900c728", - "sha256:62d9cfcf4948683a18a9aff0ab7e1474d407b7bab2ca03116109f8464698ab16", - "sha256:64607d4cbf1b7e3c3c8a14948b99345eda0e161b852e122c6bb71aab6d1d798c", - "sha256:655ca44a831ecb238d124e0402d98f6212ac527a0ba6c55ca26f616604e60a45", - "sha256:666ecce376999bf619756a24ce15bb14c5bfaf04bf00abc7e663ce17c3f34fe7", - "sha256:68049202f67380ff9aa52f12e92b1c30115f32e6895cd7198fa2a7961621fc5a", - "sha256:69803198097467ee7282750acb507fba35ca22cc3b85f16cf45fb01cb9097730", - "sha256:6c7b99ca52c2c1752b544e310101b98a659b720b21db00e65edca34483259967", - "sha256:6dd9412824c4ce1aca56c47b0991e65bebb7ac3f4edccfd3f156150c96a7bf25", - "sha256:70eb60b3ae9245ddea20f8a4190bd79c705a22f8028aaf8bbdebe4716c3fab24", - "sha256:70fb28128acbfd264eda9bf47015537ba3fe86e40d046eb2963d75024be4d055", - "sha256:7b2513ba235829860b13faa931f3b6846548021846ac808455301c23a101689d", - "sha256:7ef9d9da710be50ff6809fed8f1963fecdfecc8b86656cadfca3bc24289414b0", - "sha256:81e69b0a0e2537f26d73b4e43ad7bc8c8efb39621639b4434b76a3de50c6966e", - "sha256:8633e471c6207a039eff6aa116e35f69f3156b3989ea3e2d755f7bc41754a4a7", - "sha256:8bd7c8cfc0b8247c8799080fbff54e0b9619e17cdfeb0478ba7295d43f635d7c", - "sha256:9253fc214112405f0afa7db88739294295f0e08466987f1d70e29930262b4c8f", - "sha256:99b37292234e61325e7a5bb9689e55e48c3f5f603af88b1642666277a81f1fbd", - "sha256:9bd7228827ec7bb817089e2eb301d907c0d9827a9e558f22f762bb690b131652", - "sha256:9beeb01d8c190d7581a4d59522cd3d4b6887040dcfc744af99aa59fef3e041a8", - "sha256:a63cbdd98acef6570c62b92a1e43266f9e8b21e699c363c0fef13bd530799c11", - "sha256:a76e42402542b1fae59798fab64432b2d015ab9d0c8c47ba7addddbaf7952333", - "sha256:ac0a03221cdb5058ce0167ecc92a8c89e8d0decdc9e99a2ec23380793c4dcb96", - "sha256:b0b4136a252cadfa1adb705bb81524eee47d9f6aab4f2ee4fa1e9d3cd4581f64", - "sha256:b25bc607423935079e05619d7de556c91fb6adeae9d5f80868dde3468657994b", - "sha256:b3d504047aba448d70cf6fa22e06cb09f7cbd761939fdd47604f5e007675c24e", - "sha256:bb47271f60660803ad11f4c61b42242b8c1312a31c98c578f79ef9387bbde21c", - "sha256:bbb232860e3d03d544bc03ac57855cd82ddf19c7a07651a7c0fdb95e9efea8b9", - "sha256:bc27863442d388870c1809a87507727b799c8460573cfbb6dc0eeaef5a11b5ec", - "sha256:bc51abd01f08117283c5ebf64844a35144a0843ff7b2983e0648e4d3d9f10dbb", - "sha256:be2eb3f2495ba669d2a985f9b426c1797b7d48d6963899276d22f23e33d47e37", - "sha256:bf9db5488121b596dbfc6718c76092fda77b703c1f7533a226a5a9f65248f8ad", - "sha256:c58e2339def52ef6b71b8f36d13c3688ea23fa093353f3a4fee2556e62086ec9", - "sha256:cfbc454a2880389dbb9b5b398e50d439e2e58669160f27b60e5eca11f68ae17c", - "sha256:cff63a0272fcd259dcc3be1657b07c929c466b067ceb1c20060e8d10af56f5bf", - "sha256:d115bffdd417c6d806ea9069237a4ae02f513b778e3789a359bc5856e0404cc4", - "sha256:d20cfb4e099748ea39e6f7b16c91ab057989712d31761d3300d43134e26e165f", - "sha256:d48424e39c2611ee1b84ad0f44fb3b2b53d473e65de061e3f460fc0be5f1939d", - "sha256:e0fa2d4ec53dc51cf7d3bb22e0aa0143966119f42a0c3e4998293a3dd2856b09", - "sha256:e32fee8ab45d3c2db6da19a5323bc3362237c8b653c70194414b892fd06a080d", - "sha256:e35ba67d65d49080e8e5a1dd40101fccdd9798adb9b050ff670b7d74fa41c566", - "sha256:e3fb866d9932a3d7d0c82da76d816996d1667c44891bd861a0f97ba27e84fc74", - "sha256:e61b02c3f7a1e0b75e20c3978f7135fd13cb6cf551bf4a6d29b999a88830a338", - "sha256:e67ba3c290821343c192f7eae1d8fd5999ca2dc99994114643e2f2d3e6138b15", - "sha256:e79dd39f1e8c3504be0607e5fc6e86bb60fe3584bec8b782578c3b0fde8d932c", - "sha256:e89391e6d60251560f0a8f4bd32137b077a80d9b7dbe6d5cab1cd80d2746f648", - "sha256:ea7433ce7e4bfc3a85654aeb6747babe3f66eaf9a1d0c1e7a4435bbdf27fea84", - "sha256:eaf16ae9ae519a0e237a0f528fd9f0197b9bb70f40263ee57ae53c2b8d48aeb3", - "sha256:eb0c341fa71df5a4595f9501df4ac5abfb5a09580081dffbd1ddd4654e6e9123", - "sha256:f276b245347e6e36526cbd4a266a417796fc531ddf391e43574cf6466c492520", - "sha256:f47ad3d5f3258bd7058d2d506852217865afefe6153a36eb4b6928758041d831", - "sha256:f56a6b404f74ab372da986d240e2e002769a7d7102cc73eb238a4f72eec5284e", - "sha256:f5cf2a0c2bdadf3791b5c205d55a37a54025c6e18a71c71f82bb536cf9a454bf", - "sha256:f5d36399a1b96e1a5fdc91e0522544580dbebeb1f77f27b2b0ab25559e103b8b", - "sha256:f60bd8423be1d9d833f230fdbccf8f57af322d96bcad6599e5a771b151398eb2", - "sha256:f612463ac081803f243ff13cccc648578e2279295048f2a8d5eb430af2bae6e3", - "sha256:f73d3fef726b3243a811121de45193c0ca75f6407fe66f3f4e183c983573e130", - "sha256:f82a116a1d03628a8ace4859556fb39fd1424c933341a08ea3ed6de1edb0283b", - "sha256:fb0ba113b4983beac1a2eb16faffd76cb41e176bf58c4afe3e14b9c681f702de", - "sha256:fb4f868f712b2dd4bcc538b0a0c1f63a2b1d584c925e69a224d759e7070a12d5", - "sha256:fb6116dfb8d1925cbdb52595560584db42a7f664617a1f7d7f6e32f138cdf37d", - "sha256:fda7cb070f442bf80b642cd56483b5548e43d366fe3f39b98e67cce780cded00", - "sha256:feea821ee2a9273771bae61194004ee2fc33f8ec7db08117ef9147d4bbcbca8e" - ], - "markers": "python_version >= '3.9'", - "version": "==0.22.3" - }, "rsa": { "hashes": [ "sha256:90260d9058e514786967344d0ef75fa8727eed8a7d2e43ce9f4bcf1b536174f7", @@ -1423,11 +1313,11 @@ }, "setuptools": { "hashes": [ - "sha256:8199222558df7c86216af4f84c30e9b34a61d8ba19366cc914424cdbd28252f6", - "sha256:ce74b49e8f7110f9bf04883b730f4765b774ef3ef28f722cce7c273d253aaf7d" + "sha256:84fb203f278ebcf5cd08f97d3fb96d3fbed4b629d500b29ad60d11e00769b183", + "sha256:886ff7b16cd342f1d1defc16fc98c9ce3fde69e087a4e1983d7ab634e5f41f4f" ], "markers": "python_version >= '3.9'", - "version": "==75.6.0" + "version": "==75.7.0" }, "six": { "hashes": [ @@ -1439,12 +1329,12 @@ }, "slack-sdk": { "hashes": [ - "sha256:a5e74c00c99dc844ad93e501ab764a20d86fa8184bbc9432af217496f632c4ee", - "sha256:b8cccadfa3d4005a5e6529f52000d25c583f46173fda8e9136fdd2bc58923ff6" + "sha256:c61f57f310d85be83466db5a98ab6ae3bb2e5587437b54fa0daa8fae6a0feffa", + "sha256:ff61db7012160eed742285ea91f11c72b7a38a6500a7f6c5335662b4bc6b853d" ], "index": "pypi", "markers": "python_version >= '3.6'", - "version": "==3.33.5" + "version": "==3.34.0" }, "slackclient": { "hashes": [ @@ -1472,27 +1362,27 @@ }, "types-httplib2": { "hashes": [ - "sha256:1eda99fea18ec8a1dc1a725ead35b889d0836fec1b11ae6f1fe05440724c1d15", - "sha256:8cd706fc81f0da32789a4373a28df6f39e9d5657d1281db4d2fd22ee29e83661" + "sha256:42b67f16a6b0abb337a1fcea628dcd335e1e75f32cd198a657f41a6f4d507508", + "sha256:b15aed53ae5430b87205b6ac270d6332cb5e28e27151e2ac4848fe417827eb54" ], "index": "pypi", "markers": "python_version >= '3.8'", - "version": "==0.22.0.20240310" + "version": "==0.22.0.20241221" }, "types-pytz": { "hashes": [ - "sha256:3e22df1336c0c6ad1d29163c8fda82736909eb977281cb823c57f8bae07118b7", - "sha256:575dc38f385a922a212bac00a7d6d2e16e141132a3c955078f4a4fd13ed6cb44" + "sha256:06d7cde9613e9f7504766a0554a270c369434b50e00975b3a4a0f6eed0f2c1a9", + "sha256:8fc03195329c43637ed4f593663df721fef919b60a969066e22606edf0b53ad5" ], "markers": "python_version >= '3.8'", - "version": "==2024.2.0.20241003" + "version": "==2024.2.0.20241221" }, "typing-extensions": { "hashes": [ "sha256:04e5ca0351e0f3f85c6853954072df659d0d13fac324d0072316b67d7794700d", "sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8" ], - "markers": "python_version >= '3.8'", + "markers": "python_version < '3.13'", "version": "==4.12.2" }, "tzdata": { @@ -1500,7 +1390,7 @@ "sha256:7d85cc416e9382e69095b7bdf4afd9e3880418a2413feec7069d533d6b4e31cc", "sha256:a48093786cdcde33cad18c2555e8532f34422074448fbc874186f0abd79565cd" ], - "markers": "python_version >= '2'", + "markers": "python_version >= '3.9'", "version": "==2024.2" }, "uritemplate": { @@ -1513,11 +1403,11 @@ }, "urllib3": { "hashes": [ - "sha256:ca899ca043dcb1bafa3e262d73aa25c465bfb49e0bd9dd5d59f1d0acba2f8fac", - "sha256:e7d814a81dad81e6caf2ec9fdedb284ecc9c73076b62654547cc64ccdcae26e9" + "sha256:1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df", + "sha256:f8c5449b3cf0861679ce7e0503c7b44b5ec981bec0d1d3795a07f1ba96f0204d" ], - "markers": "python_version >= '3.8'", - "version": "==2.2.3" + "markers": "python_version >= '3.9'", + "version": "==2.3.0" }, "wrapt": { "hashes": [ @@ -1689,11 +1579,11 @@ }, "attrs": { "hashes": [ - "sha256:5cfb1b9148b5b086569baec03f20d7b6bf3bcacc9a42bebf87ffaaca362f6346", - "sha256:81921eb96de3191c8258c199618104dd27ac608d9366f5e35d011eae1867ede2" + "sha256:8f5c07333d543103541ba7be0e2ce16eeee8130cb0b3f9238ab904ce1e85baff", + "sha256:ac96cd038792094f438ad1f6ff80837353805ac950cd2aa0e0625ef19850c308" ], - "markers": "python_version >= '3.7'", - "version": "==24.2.0" + "markers": "python_version >= '3.8'", + "version": "==24.3.0" }, "black": { "hashes": [ @@ -1735,130 +1625,117 @@ }, "certifi": { "hashes": [ - "sha256:922820b53db7a7257ffbda3f597266d435245903d80737e34f8a45ff3e3230d8", - "sha256:bec941d2aa8195e248a60b31ff9f0558284cf01a52591ceda73ea9afffd69fd9" + "sha256:1275f7a45be9464efc1173084eaa30f866fe2e47d389406136d332ed4967ec56", + "sha256:b650d30f370c2b724812bee08008be0c4163b163ddaec3f2546c1caf65f191db" ], "markers": "python_version >= '3.6'", - "version": "==2024.8.30" + "version": "==2024.12.14" }, "charset-normalizer": { "hashes": [ - "sha256:0099d79bdfcf5c1f0c2c72f91516702ebf8b0b8ddd8905f97a8aecf49712c621", - "sha256:0713f3adb9d03d49d365b70b84775d0a0d18e4ab08d12bc46baa6132ba78aaf6", - "sha256:07afec21bbbbf8a5cc3651aa96b980afe2526e7f048fdfb7f1014d84acc8b6d8", - "sha256:0b309d1747110feb25d7ed6b01afdec269c647d382c857ef4663bbe6ad95a912", - "sha256:0d99dd8ff461990f12d6e42c7347fd9ab2532fb70e9621ba520f9e8637161d7c", - "sha256:0de7b687289d3c1b3e8660d0741874abe7888100efe14bd0f9fd7141bcbda92b", - "sha256:1110e22af8ca26b90bd6364fe4c763329b0ebf1ee213ba32b68c73de5752323d", - "sha256:130272c698667a982a5d0e626851ceff662565379baf0ff2cc58067b81d4f11d", - "sha256:136815f06a3ae311fae551c3df1f998a1ebd01ddd424aa5603a4336997629e95", - "sha256:14215b71a762336254351b00ec720a8e85cada43b987da5a042e4ce3e82bd68e", - "sha256:1db4e7fefefd0f548d73e2e2e041f9df5c59e178b4c72fbac4cc6f535cfb1565", - "sha256:1ffd9493de4c922f2a38c2bf62b831dcec90ac673ed1ca182fe11b4d8e9f2a64", - "sha256:2006769bd1640bdf4d5641c69a3d63b71b81445473cac5ded39740a226fa88ab", - "sha256:20587d20f557fe189b7947d8e7ec5afa110ccf72a3128d61a2a387c3313f46be", - "sha256:223217c3d4f82c3ac5e29032b3f1c2eb0fb591b72161f86d93f5719079dae93e", - "sha256:27623ba66c183eca01bf9ff833875b459cad267aeeb044477fedac35e19ba907", - "sha256:285e96d9d53422efc0d7a17c60e59f37fbf3dfa942073f666db4ac71e8d726d0", - "sha256:2de62e8801ddfff069cd5c504ce3bc9672b23266597d4e4f50eda28846c322f2", - "sha256:2f6c34da58ea9c1a9515621f4d9ac379871a8f21168ba1b5e09d74250de5ad62", - "sha256:309a7de0a0ff3040acaebb35ec45d18db4b28232f21998851cfa709eeff49d62", - "sha256:35c404d74c2926d0287fbd63ed5d27eb911eb9e4a3bb2c6d294f3cfd4a9e0c23", - "sha256:3710a9751938947e6327ea9f3ea6332a09bf0ba0c09cae9cb1f250bd1f1549bc", - "sha256:3d59d125ffbd6d552765510e3f31ed75ebac2c7470c7274195b9161a32350284", - "sha256:40d3ff7fc90b98c637bda91c89d51264a3dcf210cade3a2c6f838c7268d7a4ca", - "sha256:425c5f215d0eecee9a56cdb703203dda90423247421bf0d67125add85d0c4455", - "sha256:43193c5cda5d612f247172016c4bb71251c784d7a4d9314677186a838ad34858", - "sha256:44aeb140295a2f0659e113b31cfe92c9061622cadbc9e2a2f7b8ef6b1e29ef4b", - "sha256:47334db71978b23ebcf3c0f9f5ee98b8d65992b65c9c4f2d34c2eaf5bcaf0594", - "sha256:4796efc4faf6b53a18e3d46343535caed491776a22af773f366534056c4e1fbc", - "sha256:4a51b48f42d9358460b78725283f04bddaf44a9358197b889657deba38f329db", - "sha256:4b67fdab07fdd3c10bb21edab3cbfe8cf5696f453afce75d815d9d7223fbe88b", - "sha256:4ec9dd88a5b71abfc74e9df5ebe7921c35cbb3b641181a531ca65cdb5e8e4dea", - "sha256:4f9fc98dad6c2eaa32fc3af1417d95b5e3d08aff968df0cd320066def971f9a6", - "sha256:54b6a92d009cbe2fb11054ba694bc9e284dad30a26757b1e372a1fdddaf21920", - "sha256:55f56e2ebd4e3bc50442fbc0888c9d8c94e4e06a933804e2af3e89e2f9c1c749", - "sha256:5726cf76c982532c1863fb64d8c6dd0e4c90b6ece9feb06c9f202417a31f7dd7", - "sha256:5d447056e2ca60382d460a604b6302d8db69476fd2015c81e7c35417cfabe4cd", - "sha256:5ed2e36c3e9b4f21dd9422f6893dec0abf2cca553af509b10cd630f878d3eb99", - "sha256:5ff2ed8194587faf56555927b3aa10e6fb69d931e33953943bc4f837dfee2242", - "sha256:62f60aebecfc7f4b82e3f639a7d1433a20ec32824db2199a11ad4f5e146ef5ee", - "sha256:63bc5c4ae26e4bc6be6469943b8253c0fd4e4186c43ad46e713ea61a0ba49129", - "sha256:6b40e8d38afe634559e398cc32b1472f376a4099c75fe6299ae607e404c033b2", - "sha256:6b493a043635eb376e50eedf7818f2f322eabbaa974e948bd8bdd29eb7ef2a51", - "sha256:6dba5d19c4dfab08e58d5b36304b3f92f3bd5d42c1a3fa37b5ba5cdf6dfcbcee", - "sha256:6fd30dc99682dc2c603c2b315bded2799019cea829f8bf57dc6b61efde6611c8", - "sha256:707b82d19e65c9bd28b81dde95249b07bf9f5b90ebe1ef17d9b57473f8a64b7b", - "sha256:7706f5850360ac01d80c89bcef1640683cc12ed87f42579dab6c5d3ed6888613", - "sha256:7782afc9b6b42200f7362858f9e73b1f8316afb276d316336c0ec3bd73312742", - "sha256:79983512b108e4a164b9c8d34de3992f76d48cadc9554c9e60b43f308988aabe", - "sha256:7f683ddc7eedd742e2889d2bfb96d69573fde1d92fcb811979cdb7165bb9c7d3", - "sha256:82357d85de703176b5587dbe6ade8ff67f9f69a41c0733cf2425378b49954de5", - "sha256:84450ba661fb96e9fd67629b93d2941c871ca86fc38d835d19d4225ff946a631", - "sha256:86f4e8cca779080f66ff4f191a685ced73d2f72d50216f7112185dc02b90b9b7", - "sha256:8cda06946eac330cbe6598f77bb54e690b4ca93f593dee1568ad22b04f347c15", - "sha256:8ce7fd6767a1cc5a92a639b391891bf1c268b03ec7e021c7d6d902285259685c", - "sha256:8ff4e7cdfdb1ab5698e675ca622e72d58a6fa2a8aa58195de0c0061288e6e3ea", - "sha256:9289fd5dddcf57bab41d044f1756550f9e7cf0c8e373b8cdf0ce8773dc4bd417", - "sha256:92a7e36b000bf022ef3dbb9c46bfe2d52c047d5e3f3343f43204263c5addc250", - "sha256:92db3c28b5b2a273346bebb24857fda45601aef6ae1c011c0a997106581e8a88", - "sha256:95c3c157765b031331dd4db3c775e58deaee050a3042fcad72cbc4189d7c8dca", - "sha256:980b4f289d1d90ca5efcf07958d3eb38ed9c0b7676bf2831a54d4f66f9c27dfa", - "sha256:9ae4ef0b3f6b41bad6366fb0ea4fc1d7ed051528e113a60fa2a65a9abb5b1d99", - "sha256:9c98230f5042f4945f957d006edccc2af1e03ed5e37ce7c373f00a5a4daa6149", - "sha256:9fa2566ca27d67c86569e8c85297aaf413ffab85a8960500f12ea34ff98e4c41", - "sha256:a14969b8691f7998e74663b77b4c36c0337cb1df552da83d5c9004a93afdb574", - "sha256:a8aacce6e2e1edcb6ac625fb0f8c3a9570ccc7bfba1f63419b3769ccf6a00ed0", - "sha256:a8e538f46104c815be19c975572d74afb53f29650ea2025bbfaef359d2de2f7f", - "sha256:aa41e526a5d4a9dfcfbab0716c7e8a1b215abd3f3df5a45cf18a12721d31cb5d", - "sha256:aa693779a8b50cd97570e5a0f343538a8dbd3e496fa5dcb87e29406ad0299654", - "sha256:ab22fbd9765e6954bc0bcff24c25ff71dcbfdb185fcdaca49e81bac68fe724d3", - "sha256:ab2e5bef076f5a235c3774b4f4028a680432cded7cad37bba0fd90d64b187d19", - "sha256:ab973df98fc99ab39080bfb0eb3a925181454d7c3ac8a1e695fddfae696d9e90", - "sha256:af73657b7a68211996527dbfeffbb0864e043d270580c5aef06dc4b659a4b578", - "sha256:b197e7094f232959f8f20541ead1d9862ac5ebea1d58e9849c1bf979255dfac9", - "sha256:b295729485b06c1a0683af02a9e42d2caa9db04a373dc38a6a58cdd1e8abddf1", - "sha256:b8831399554b92b72af5932cdbbd4ddc55c55f631bb13ff8fe4e6536a06c5c51", - "sha256:b8dcd239c743aa2f9c22ce674a145e0a25cb1566c495928440a181ca1ccf6719", - "sha256:bcb4f8ea87d03bc51ad04add8ceaf9b0f085ac045ab4d74e73bbc2dc033f0236", - "sha256:bd7af3717683bea4c87acd8c0d3d5b44d56120b26fd3f8a692bdd2d5260c620a", - "sha256:bf4475b82be41b07cc5e5ff94810e6a01f276e37c2d55571e3fe175e467a1a1c", - "sha256:c3e446d253bd88f6377260d07c895816ebf33ffffd56c1c792b13bff9c3e1ade", - "sha256:c57516e58fd17d03ebe67e181a4e4e2ccab1168f8c2976c6a334d4f819fe5944", - "sha256:c94057af19bc953643a33581844649a7fdab902624d2eb739738a30e2b3e60fc", - "sha256:cab5d0b79d987c67f3b9e9c53f54a61360422a5a0bc075f43cab5621d530c3b6", - "sha256:ce031db0408e487fd2775d745ce30a7cd2923667cf3b69d48d219f1d8f5ddeb6", - "sha256:cee4373f4d3ad28f1ab6290684d8e2ebdb9e7a1b74fdc39e4c211995f77bec27", - "sha256:d5b054862739d276e09928de37c79ddeec42a6e1bfc55863be96a36ba22926f6", - "sha256:dbe03226baf438ac4fda9e2d0715022fd579cb641c4cf639fa40d53b2fe6f3e2", - "sha256:dc15e99b2d8a656f8e666854404f1ba54765871104e50c8e9813af8a7db07f12", - "sha256:dcaf7c1524c0542ee2fc82cc8ec337f7a9f7edee2532421ab200d2b920fc97cf", - "sha256:dd4eda173a9fcccb5f2e2bd2a9f423d180194b1bf17cf59e3269899235b2a114", - "sha256:dd9a8bd8900e65504a305bf8ae6fa9fbc66de94178c420791d0293702fce2df7", - "sha256:de7376c29d95d6719048c194a9cf1a1b0393fbe8488a22008610b0361d834ecf", - "sha256:e7fdd52961feb4c96507aa649550ec2a0d527c086d284749b2f582f2d40a2e0d", - "sha256:e91f541a85298cf35433bf66f3fab2a4a2cff05c127eeca4af174f6d497f0d4b", - "sha256:e9e3c4c9e1ed40ea53acf11e2a386383c3304212c965773704e4603d589343ed", - "sha256:ee803480535c44e7f5ad00788526da7d85525cfefaf8acf8ab9a310000be4b03", - "sha256:f09cb5a7bbe1ecae6e87901a2eb23e0256bb524a79ccc53eb0b7629fbe7677c4", - "sha256:f19c1585933c82098c2a520f8ec1227f20e339e33aca8fa6f956f6691b784e67", - "sha256:f1a2f519ae173b5b6a2c9d5fa3116ce16e48b3462c8b96dfdded11055e3d6365", - "sha256:f28f891ccd15c514a0981f3b9db9aa23d62fe1a99997512b0491d2ed323d229a", - "sha256:f3e73a4255342d4eb26ef6df01e3962e73aa29baa3124a8e824c5d3364a65748", - "sha256:f606a1881d2663630ea5b8ce2efe2111740df4b687bd78b34a8131baa007f79b", - "sha256:fe9f97feb71aa9896b81973a7bbada8c49501dc73e58a10fcef6663af95e5079", - "sha256:ffc519621dce0c767e96b9c53f09c5d215578e10b02c285809f76509a3931482" - ], - "markers": "python_full_version >= '3.7.0'", - "version": "==3.4.0" + "sha256:0167ddc8ab6508fe81860a57dd472b2ef4060e8d378f0cc555707126830f2537", + "sha256:01732659ba9b5b873fc117534143e4feefecf3b2078b0a6a2e925271bb6f4cfa", + "sha256:01ad647cdd609225c5350561d084b42ddf732f4eeefe6e678765636791e78b9a", + "sha256:04432ad9479fa40ec0f387795ddad4437a2b50417c69fa275e212933519ff294", + "sha256:0907f11d019260cdc3f94fbdb23ff9125f6b5d1039b76003b5b0ac9d6a6c9d5b", + "sha256:0924e81d3d5e70f8126529951dac65c1010cdf117bb75eb02dd12339b57749dd", + "sha256:09b26ae6b1abf0d27570633b2b078a2a20419c99d66fb2823173d73f188ce601", + "sha256:09b5e6733cbd160dcc09589227187e242a30a49ca5cefa5a7edd3f9d19ed53fd", + "sha256:0af291f4fe114be0280cdd29d533696a77b5b49cfde5467176ecab32353395c4", + "sha256:0f55e69f030f7163dffe9fd0752b32f070566451afe180f99dbeeb81f511ad8d", + "sha256:1a2bc9f351a75ef49d664206d51f8e5ede9da246602dc2d2726837620ea034b2", + "sha256:22e14b5d70560b8dd51ec22863f370d1e595ac3d024cb8ad7d308b4cd95f8313", + "sha256:234ac59ea147c59ee4da87a0c0f098e9c8d169f4dc2a159ef720f1a61bbe27cd", + "sha256:2369eea1ee4a7610a860d88f268eb39b95cb588acd7235e02fd5a5601773d4fa", + "sha256:237bdbe6159cff53b4f24f397d43c6336c6b0b42affbe857970cefbb620911c8", + "sha256:28bf57629c75e810b6ae989f03c0828d64d6b26a5e205535585f96093e405ed1", + "sha256:2967f74ad52c3b98de4c3b32e1a44e32975e008a9cd2a8cc8966d6a5218c5cb2", + "sha256:2a75d49014d118e4198bcee5ee0a6f25856b29b12dbf7cd012791f8a6cc5c496", + "sha256:2bdfe3ac2e1bbe5b59a1a63721eb3b95fc9b6817ae4a46debbb4e11f6232428d", + "sha256:2d074908e1aecee37a7635990b2c6d504cd4766c7bc9fc86d63f9c09af3fa11b", + "sha256:2fb9bd477fdea8684f78791a6de97a953c51831ee2981f8e4f583ff3b9d9687e", + "sha256:311f30128d7d333eebd7896965bfcfbd0065f1716ec92bd5638d7748eb6f936a", + "sha256:329ce159e82018d646c7ac45b01a430369d526569ec08516081727a20e9e4af4", + "sha256:345b0426edd4e18138d6528aed636de7a9ed169b4aaf9d61a8c19e39d26838ca", + "sha256:363e2f92b0f0174b2f8238240a1a30142e3db7b957a5dd5689b0e75fb717cc78", + "sha256:3a3bd0dcd373514dcec91c411ddb9632c0d7d92aed7093b8c3bbb6d69ca74408", + "sha256:3bed14e9c89dcb10e8f3a29f9ccac4955aebe93c71ae803af79265c9ca5644c5", + "sha256:44251f18cd68a75b56585dd00dae26183e102cd5e0f9f1466e6df5da2ed64ea3", + "sha256:44ecbf16649486d4aebafeaa7ec4c9fed8b88101f4dd612dcaf65d5e815f837f", + "sha256:4532bff1b8421fd0a320463030c7520f56a79c9024a4e88f01c537316019005a", + "sha256:49402233c892a461407c512a19435d1ce275543138294f7ef013f0b63d5d3765", + "sha256:4c0907b1928a36d5a998d72d64d8eaa7244989f7aaaf947500d3a800c83a3fd6", + "sha256:4d86f7aff21ee58f26dcf5ae81a9addbd914115cdebcbb2217e4f0ed8982e146", + "sha256:5777ee0881f9499ed0f71cc82cf873d9a0ca8af166dfa0af8ec4e675b7df48e6", + "sha256:5df196eb874dae23dcfb968c83d4f8fdccb333330fe1fc278ac5ceeb101003a9", + "sha256:619a609aa74ae43d90ed2e89bdd784765de0a25ca761b93e196d938b8fd1dbbd", + "sha256:6e27f48bcd0957c6d4cb9d6fa6b61d192d0b13d5ef563e5f2ae35feafc0d179c", + "sha256:6ff8a4a60c227ad87030d76e99cd1698345d4491638dfa6673027c48b3cd395f", + "sha256:73d94b58ec7fecbc7366247d3b0b10a21681004153238750bb67bd9012414545", + "sha256:7461baadb4dc00fd9e0acbe254e3d7d2112e7f92ced2adc96e54ef6501c5f176", + "sha256:75832c08354f595c760a804588b9357d34ec00ba1c940c15e31e96d902093770", + "sha256:7709f51f5f7c853f0fb938bcd3bc59cdfdc5203635ffd18bf354f6967ea0f824", + "sha256:78baa6d91634dfb69ec52a463534bc0df05dbd546209b79a3880a34487f4b84f", + "sha256:7974a0b5ecd505609e3b19742b60cee7aa2aa2fb3151bc917e6e2646d7667dcf", + "sha256:7a4f97a081603d2050bfaffdefa5b02a9ec823f8348a572e39032caa8404a487", + "sha256:7b1bef6280950ee6c177b326508f86cad7ad4dff12454483b51d8b7d673a2c5d", + "sha256:7d053096f67cd1241601111b698f5cad775f97ab25d81567d3f59219b5f1adbd", + "sha256:804a4d582ba6e5b747c625bf1255e6b1507465494a40a2130978bda7b932c90b", + "sha256:807f52c1f798eef6cf26beb819eeb8819b1622ddfeef9d0977a8502d4db6d534", + "sha256:80ed5e856eb7f30115aaf94e4a08114ccc8813e6ed1b5efa74f9f82e8509858f", + "sha256:8417cb1f36cc0bc7eaba8ccb0e04d55f0ee52df06df3ad55259b9a323555fc8b", + "sha256:8436c508b408b82d87dc5f62496973a1805cd46727c34440b0d29d8a2f50a6c9", + "sha256:89149166622f4db9b4b6a449256291dc87a99ee53151c74cbd82a53c8c2f6ccd", + "sha256:8bfa33f4f2672964266e940dd22a195989ba31669bd84629f05fab3ef4e2d125", + "sha256:8c60ca7339acd497a55b0ea5d506b2a2612afb2826560416f6894e8b5770d4a9", + "sha256:91b36a978b5ae0ee86c394f5a54d6ef44db1de0815eb43de826d41d21e4af3de", + "sha256:955f8851919303c92343d2f66165294848d57e9bba6cf6e3625485a70a038d11", + "sha256:97f68b8d6831127e4787ad15e6757232e14e12060bec17091b85eb1486b91d8d", + "sha256:9b23ca7ef998bc739bf6ffc077c2116917eabcc901f88da1b9856b210ef63f35", + "sha256:9f0b8b1c6d84c8034a44893aba5e767bf9c7a211e313a9605d9c617d7083829f", + "sha256:aabfa34badd18f1da5ec1bc2715cadc8dca465868a4e73a0173466b688f29dda", + "sha256:ab36c8eb7e454e34e60eb55ca5d241a5d18b2c6244f6827a30e451c42410b5f7", + "sha256:b010a7a4fd316c3c484d482922d13044979e78d1861f0e0650423144c616a46a", + "sha256:b1ac5992a838106edb89654e0aebfc24f5848ae2547d22c2c3f66454daa11971", + "sha256:b7b2d86dd06bfc2ade3312a83a5c364c7ec2e3498f8734282c6c3d4b07b346b8", + "sha256:b97e690a2118911e39b4042088092771b4ae3fc3aa86518f84b8cf6888dbdb41", + "sha256:bc2722592d8998c870fa4e290c2eec2c1569b87fe58618e67d38b4665dfa680d", + "sha256:c0429126cf75e16c4f0ad00ee0eae4242dc652290f940152ca8c75c3a4b6ee8f", + "sha256:c30197aa96e8eed02200a83fba2657b4c3acd0f0aa4bdc9f6c1af8e8962e0757", + "sha256:c4c3e6da02df6fa1410a7680bd3f63d4f710232d3139089536310d027950696a", + "sha256:c75cb2a3e389853835e84a2d8fb2b81a10645b503eca9bcb98df6b5a43eb8886", + "sha256:c96836c97b1238e9c9e3fe90844c947d5afbf4f4c92762679acfe19927d81d77", + "sha256:d7f50a1f8c450f3925cb367d011448c39239bb3eb4117c36a6d354794de4ce76", + "sha256:d973f03c0cb71c5ed99037b870f2be986c3c05e63622c017ea9816881d2dd247", + "sha256:d98b1668f06378c6dbefec3b92299716b931cd4e6061f3c875a71ced1780ab85", + "sha256:d9c3cdf5390dcd29aa8056d13e8e99526cda0305acc038b96b30352aff5ff2bb", + "sha256:dad3e487649f498dd991eeb901125411559b22e8d7ab25d3aeb1af367df5efd7", + "sha256:dccbe65bd2f7f7ec22c4ff99ed56faa1e9f785482b9bbd7c717e26fd723a1d1e", + "sha256:dd78cfcda14a1ef52584dbb008f7ac81c1328c0f58184bf9a84c49c605002da6", + "sha256:e218488cd232553829be0664c2292d3af2eeeb94b32bea483cf79ac6a694e037", + "sha256:e358e64305fe12299a08e08978f51fc21fac060dcfcddd95453eabe5b93ed0e1", + "sha256:ea0d8d539afa5eb2728aa1932a988a9a7af94f18582ffae4bc10b3fbdad0626e", + "sha256:eab677309cdb30d047996b36d34caeda1dc91149e4fdca0b1a039b3f79d9a807", + "sha256:eb8178fe3dba6450a3e024e95ac49ed3400e506fd4e9e5c32d30adda88cbd407", + "sha256:ecddf25bee22fe4fe3737a399d0d177d72bc22be6913acfab364b40bce1ba83c", + "sha256:eea6ee1db730b3483adf394ea72f808b6e18cf3cb6454b4d86e04fa8c4327a12", + "sha256:f08ff5e948271dc7e18a35641d2f11a4cd8dfd5634f55228b691e62b37125eb3", + "sha256:f30bf9fd9be89ecb2360c7d94a711f00c09b976258846efe40db3d05828e8089", + "sha256:fa88b843d6e211393a37219e6a1c1df99d35e8fd90446f1118f4216e307e48cd", + "sha256:fc54db6c8593ef7d4b2a331b58653356cf04f67c960f584edb7c3d8c97e8f39e", + "sha256:fd4ec41f914fa74ad1b8304bbc634b3de73d2a0889bd32076342a573e0779e00", + "sha256:ffc9202a29ab3920fa812879e95a9e78b2465fd10be7fcbd042899695d75e616" + ], + "markers": "python_version >= '3.7'", + "version": "==3.4.1" }, "click": { "hashes": [ - "sha256:ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28", - "sha256:ca9853ad459e787e2192211578cc907e7594e294c7ccc834310722b41b9ca6de" + "sha256:63c132bbbed01578a06712a2d1f497bb62d9c1c0d329b7903a866228027263b2", + "sha256:ed53c9d8990d83c2a27deae68e4ee337473f6330c040a31d4225c9574d16096a" ], "markers": "python_version >= '3.7'", - "version": "==8.1.7" + "version": "==8.1.8" }, "colorama": { "hashes": [ @@ -1871,71 +1748,71 @@ }, "coverage": { "hashes": [ - "sha256:0824a28ec542a0be22f60c6ac36d679e0e262e5353203bea81d44ee81fe9c6d4", - "sha256:085161be5f3b30fd9b3e7b9a8c301f935c8313dcf928a07b116324abea2c1c2c", - "sha256:0ae1387db4aecb1f485fb70a6c0148c6cdaebb6038f1d40089b1fc84a5db556f", - "sha256:0d59fd927b1f04de57a2ba0137166d31c1a6dd9e764ad4af552912d70428c92b", - "sha256:0f957943bc718b87144ecaee70762bc2bc3f1a7a53c7b861103546d3a403f0a6", - "sha256:13a9e2d3ee855db3dd6ea1ba5203316a1b1fd8eaeffc37c5b54987e61e4194ae", - "sha256:1a330812d9cc7ac2182586f6d41b4d0fadf9be9049f350e0efb275c8ee8eb692", - "sha256:22be16571504c9ccea919fcedb459d5ab20d41172056206eb2994e2ff06118a4", - "sha256:2d10e07aa2b91835d6abec555ec8b2733347956991901eea6ffac295f83a30e4", - "sha256:35371f8438028fdccfaf3570b31d98e8d9eda8bb1d6ab9473f5a390969e98717", - "sha256:3c026eb44f744acaa2bda7493dad903aa5bf5fc4f2554293a798d5606710055d", - "sha256:41ff7b0da5af71a51b53f501a3bac65fb0ec311ebed1632e58fc6107f03b9198", - "sha256:4401ae5fc52ad8d26d2a5d8a7428b0f0c72431683f8e63e42e70606374c311a1", - "sha256:44349150f6811b44b25574839b39ae35291f6496eb795b7366fef3bd3cf112d3", - "sha256:447af20e25fdbe16f26e84eb714ba21d98868705cb138252d28bc400381f6ffb", - "sha256:4a8d8977b0c6ef5aeadcb644da9e69ae0dcfe66ec7f368c89c72e058bd71164d", - "sha256:4e12ae8cc979cf83d258acb5e1f1cf2f3f83524d1564a49d20b8bec14b637f08", - "sha256:592ac539812e9b46046620341498caf09ca21023c41c893e1eb9dbda00a70cbf", - "sha256:5e6b86b5847a016d0fbd31ffe1001b63355ed309651851295315031ea7eb5a9b", - "sha256:608a7fd78c67bee8936378299a6cb9f5149bb80238c7a566fc3e6717a4e68710", - "sha256:61f70dc68bd36810972e55bbbe83674ea073dd1dcc121040a08cdf3416c5349c", - "sha256:65dad5a248823a4996724a88eb51d4b31587aa7aa428562dbe459c684e5787ae", - "sha256:777abfab476cf83b5177b84d7486497e034eb9eaea0d746ce0c1268c71652077", - "sha256:7e216d8044a356fc0337c7a2a0536d6de07888d7bcda76febcb8adc50bdbbd00", - "sha256:85d9636f72e8991a1706b2b55b06c27545448baf9f6dbf51c4004609aacd7dcb", - "sha256:899b8cd4781c400454f2f64f7776a5d87bbd7b3e7f7bda0cb18f857bb1334664", - "sha256:8a289d23d4c46f1a82d5db4abeb40b9b5be91731ee19a379d15790e53031c014", - "sha256:8d2dfa71665a29b153a9681edb1c8d9c1ea50dfc2375fb4dac99ea7e21a0bcd9", - "sha256:8e3c3e38930cfb729cb8137d7f055e5a473ddaf1217966aa6238c88bd9fd50e6", - "sha256:8f8770dfc6e2c6a2d4569f411015c8d751c980d17a14b0530da2d7f27ffdd88e", - "sha256:932fc826442132dde42ee52cf66d941f581c685a6313feebed358411238f60f9", - "sha256:96d636c77af18b5cb664ddf12dab9b15a0cfe9c0bde715da38698c8cea748bfa", - "sha256:97ddc94d46088304772d21b060041c97fc16bdda13c6c7f9d8fcd8d5ae0d8611", - "sha256:98caba4476a6c8d59ec1eb00c7dd862ba9beca34085642d46ed503cc2d440d4b", - "sha256:9901d36492009a0a9b94b20e52ebfc8453bf49bb2b27bca2c9706f8b4f5a554a", - "sha256:99e266ae0b5d15f1ca8d278a668df6f51cc4b854513daab5cae695ed7b721cf8", - "sha256:9c38bf15a40ccf5619fa2fe8f26106c7e8e080d7760aeccb3722664c8656b030", - "sha256:a27801adef24cc30871da98a105f77995e13a25a505a0161911f6aafbd66e678", - "sha256:abd3e72dd5b97e3af4246cdada7738ef0e608168de952b837b8dd7e90341f015", - "sha256:adb697c0bd35100dc690de83154627fbab1f4f3c0386df266dded865fc50a902", - "sha256:b12c6b18269ca471eedd41c1b6a1065b2f7827508edb9a7ed5555e9a56dcfc97", - "sha256:b9389a429e0e5142e69d5bf4a435dd688c14478a19bb901735cdf75e57b13845", - "sha256:ba9e7484d286cd5a43744e5f47b0b3fb457865baf07bafc6bee91896364e1419", - "sha256:bb5555cff66c4d3d6213a296b360f9e1a8e323e74e0426b6c10ed7f4d021e464", - "sha256:be57b6d56e49c2739cdf776839a92330e933dd5e5d929966fbbd380c77f060be", - "sha256:c69e42c892c018cd3c8d90da61d845f50a8243062b19d228189b0224150018a9", - "sha256:ccc660a77e1c2bf24ddbce969af9447a9474790160cfb23de6be4fa88e3951c7", - "sha256:d5275455b3e4627c8e7154feaf7ee0743c2e7af82f6e3b561967b1cca755a0be", - "sha256:d75cded8a3cff93da9edc31446872d2997e327921d8eed86641efafd350e1df1", - "sha256:d872ec5aeb086cbea771c573600d47944eea2dcba8be5f3ee649bfe3cb8dc9ba", - "sha256:d891c136b5b310d0e702e186d70cd16d1119ea8927347045124cb286b29297e5", - "sha256:db1dab894cc139f67822a92910466531de5ea6034ddfd2b11c0d4c6257168073", - "sha256:e28bf44afa2b187cc9f41749138a64435bf340adfcacb5b2290c070ce99839d4", - "sha256:e5ea1cf0872ee455c03e5674b5bca5e3e68e159379c1af0903e89f5eba9ccc3a", - "sha256:e77363e8425325384f9d49272c54045bbed2f478e9dd698dbc65dbc37860eb0a", - "sha256:ee5defd1733fd6ec08b168bd4f5387d5b322f45ca9e0e6c817ea6c4cd36313e3", - "sha256:f1592791f8204ae9166de22ba7e6705fa4ebd02936c09436a1bb85aabca3e599", - "sha256:f2d1ec60d6d256bdf298cb86b78dd715980828f50c46701abc3b0a2b3f8a0dc0", - "sha256:f3ca78518bc6bc92828cd11867b121891d75cae4ea9e908d72030609b996db1b", - "sha256:f7b15f589593110ae767ce997775d645b47e5cbbf54fd322f8ebea6277466cec", - "sha256:fd1213c86e48dfdc5a0cc676551db467495a95a662d2396ecd58e719191446e1", - "sha256:ff74026a461eb0660366fb01c650c1d00f833a086b336bdad7ab00cc952072b3" + "sha256:05fca8ba6a87aabdd2d30d0b6c838b50510b56cdcfc604d40760dae7153b73d9", + "sha256:0aa9692b4fdd83a4647eeb7db46410ea1322b5ed94cd1715ef09d1d5922ba87f", + "sha256:0c807ca74d5a5e64427c8805de15b9ca140bba13572d6d74e262f46f50b13273", + "sha256:0d7a2bf79378d8fb8afaa994f91bfd8215134f8631d27eba3e0e2c13546ce994", + "sha256:0f460286cb94036455e703c66988851d970fdfd8acc2a1122ab7f4f904e4029e", + "sha256:204a8238afe787323a8b47d8be4df89772d5c1e4651b9ffa808552bdf20e1d50", + "sha256:2396e8116db77789f819d2bc8a7e200232b7a282c66e0ae2d2cd84581a89757e", + "sha256:254f1a3b1eef5f7ed23ef265eaa89c65c8c5b6b257327c149db1ca9d4a35f25e", + "sha256:26bcf5c4df41cad1b19c84af71c22cbc9ea9a547fc973f1f2cc9a290002c8b3c", + "sha256:27c6e64726b307782fa5cbe531e7647aee385a29b2107cd87ba7c0105a5d3853", + "sha256:299e91b274c5c9cdb64cbdf1b3e4a8fe538a7a86acdd08fae52301b28ba297f8", + "sha256:2bcfa46d7709b5a7ffe089075799b902020b62e7ee56ebaed2f4bdac04c508d8", + "sha256:2ccf240eb719789cedbb9fd1338055de2761088202a9a0b73032857e53f612fe", + "sha256:32ee6d8491fcfc82652a37109f69dee9a830e9379166cb73c16d8dc5c2915165", + "sha256:3f7b444c42bbc533aaae6b5a2166fd1a797cdb5eb58ee51a92bee1eb94a1e1cb", + "sha256:457574f4599d2b00f7f637a0700a6422243b3565509457b2dbd3f50703e11f59", + "sha256:489a01f94aa581dbd961f306e37d75d4ba16104bbfa2b0edb21d29b73be83609", + "sha256:4bcc276261505d82f0ad426870c3b12cb177752834a633e737ec5ee79bbdff18", + "sha256:4e0de1e902669dccbf80b0415fb6b43d27edca2fbd48c74da378923b05316098", + "sha256:4e4630c26b6084c9b3cb53b15bd488f30ceb50b73c35c5ad7871b869cb7365fd", + "sha256:4eea95ef275de7abaef630c9b2c002ffbc01918b726a39f5a4353916ec72d2f3", + "sha256:507a20fc863cae1d5720797761b42d2d87a04b3e5aeb682ef3b7332e90598f43", + "sha256:54a5f0f43950a36312155dae55c505a76cd7f2b12d26abeebbe7a0b36dbc868d", + "sha256:55b201b97286cf61f5e76063f9e2a1d8d2972fc2fcfd2c1272530172fd28c359", + "sha256:59af35558ba08b758aec4d56182b222976330ef8d2feacbb93964f576a7e7a90", + "sha256:5c912978f7fbf47ef99cec50c4401340436d200d41d714c7a4766f377c5b7b78", + "sha256:656c82b8a0ead8bba147de9a89bda95064874c91a3ed43a00e687f23cc19d53a", + "sha256:6713ba4b4ebc330f3def51df1d5d38fad60b66720948112f114968feb52d3f99", + "sha256:675cefc4c06e3b4c876b85bfb7c59c5e2218167bbd4da5075cbe3b5790a28988", + "sha256:6f93531882a5f68c28090f901b1d135de61b56331bba82028489bc51bdd818d2", + "sha256:714f942b9c15c3a7a5fe6876ce30af831c2ad4ce902410b7466b662358c852c0", + "sha256:79109c70cc0882e4d2d002fe69a24aa504dec0cc17169b3c7f41a1d341a73694", + "sha256:7bbd8c8f1b115b892e34ba66a097b915d3871db7ce0e6b9901f462ff3a975377", + "sha256:7ed2f37cfce1ce101e6dffdfd1c99e729dd2ffc291d02d3e2d0af8b53d13840d", + "sha256:7fb105327c8f8f0682e29843e2ff96af9dcbe5bab8eeb4b398c6a33a16d80a23", + "sha256:89d76815a26197c858f53c7f6a656686ec392b25991f9e409bcef020cd532312", + "sha256:9a7cfb50515f87f7ed30bc882f68812fd98bc2852957df69f3003d22a2aa0abf", + "sha256:9e1747bab246d6ff2c4f28b4d186b205adced9f7bd9dc362051cc37c4a0c7bd6", + "sha256:9e80eba8801c386f72e0712a0453431259c45c3249f0009aff537a517b52942b", + "sha256:a01ec4af7dfeb96ff0078ad9a48810bb0cc8abcb0115180c6013a6b26237626c", + "sha256:a372c89c939d57abe09e08c0578c1d212e7a678135d53aa16eec4430adc5e690", + "sha256:a3b204c11e2b2d883946fe1d97f89403aa1811df28ce0447439178cc7463448a", + "sha256:a534738b47b0de1995f85f582d983d94031dffb48ab86c95bdf88dc62212142f", + "sha256:a5e37dc41d57ceba70956fa2fc5b63c26dba863c946ace9705f8eca99daecdc4", + "sha256:aa744da1820678b475e4ba3dfd994c321c5b13381d1041fe9c608620e6676e25", + "sha256:ab32947f481f7e8c763fa2c92fd9f44eeb143e7610c4ca9ecd6a36adab4081bd", + "sha256:abb02e2f5a3187b2ac4cd46b8ced85a0858230b577ccb2c62c81482ca7d18852", + "sha256:b330368cb99ef72fcd2dc3ed260adf67b31499584dc8a20225e85bfe6f6cfed0", + "sha256:bc67deb76bc3717f22e765ab3e07ee9c7a5e26b9019ca19a3b063d9f4b874244", + "sha256:c0b1818063dc9e9d838c09e3a473c1422f517889436dd980f5d721899e66f315", + "sha256:c56e097019e72c373bae32d946ecf9858fda841e48d82df7e81c63ac25554078", + "sha256:c7827a5bc7bdb197b9e066cdf650b2887597ad124dd99777332776f7b7c7d0d0", + "sha256:ccc2b70a7ed475c68ceb548bf69cec1e27305c1c2606a5eb7c3afff56a1b3b27", + "sha256:d37a84878285b903c0fe21ac8794c6dab58150e9359f1aaebbeddd6412d53132", + "sha256:e2f0280519e42b0a17550072861e0bc8a80a0870de260f9796157d3fca2733c5", + "sha256:e4ae5ac5e0d1e4edfc9b4b57b4cbecd5bc266a6915c500f358817a8496739247", + "sha256:e67926f51821b8e9deb6426ff3164870976fe414d033ad90ea75e7ed0c2e5022", + "sha256:e78b270eadb5702938c3dbe9367f878249b5ef9a2fcc5360ac7bff694310d17b", + "sha256:ea3c8f04b3e4af80e17bab607c386a830ffc2fb88a5484e1df756478cf70d1d3", + "sha256:ec22b5e7fe7a0fa8509181c4aac1db48f3dd4d3a566131b313d1efc102892c18", + "sha256:f4f620668dbc6f5e909a0946a877310fb3d57aea8198bde792aae369ee1c23b5", + "sha256:fd34e7b3405f0cc7ab03d54a334c17a9e802897580d964bd8c2001f4b9fd488f" ], "markers": "python_version >= '3.9'", - "version": "==7.6.9" + "version": "==7.6.10" }, "flake8": { "hashes": [ @@ -1982,12 +1859,12 @@ }, "google-api-python-client": { "hashes": [ - "sha256:1b420062e03bfcaa1c79e2e00a612d29a6a934151ceb3d272fe150a656dc8f17", - "sha256:a521bbbb2ec0ba9d6f307cdd64ed6e21eeac372d1bd7493a4ab5022941f784ad" + "sha256:0b0231db106324c659bf8b85f390391c00da57a60ebc4271e33def7aac198c75", + "sha256:2ee342d0967ad1cedec43ccd7699671d94bff151e1f06833ea81303f9a6d86fd" ], "index": "pypi", "markers": "python_version >= '3.7'", - "version": "==2.154.0" + "version": "==2.157.0" }, "google-api-python-client-stubs": { "hashes": [ @@ -2000,11 +1877,11 @@ }, "google-auth": { "hashes": [ - "sha256:51a15d47028b66fd36e5c64a82d2d57480075bccc7da37cde257fc94177a61fb", - "sha256:545e9618f2df0bcbb7dcbc45a546485b1212624716975a1ea5ae8149ce769ab1" + "sha256:0054623abf1f9c83492c63d3f47e77f0a544caa3d40b2d98e099a611c2dd5d00", + "sha256:42664f18290a6be591be5329a96fe30184be1a1badb7292a7f686a9659de9ca0" ], "markers": "python_version >= '3.7'", - "version": "==2.36.0" + "version": "==2.37.0" }, "google-auth-httplib2": { "hashes": [ @@ -2137,20 +2014,20 @@ }, "protobuf": { "hashes": [ - "sha256:012ce28d862ff417fd629285aca5d9772807f15ceb1a0dbd15b88f58c776c98c", - "sha256:027fbcc48cea65a6b17028510fdd054147057fa78f4772eb547b9274e5219331", - "sha256:1fc55267f086dd4050d18ef839d7bd69300d0d08c2a53ca7df3920cc271a3c34", - "sha256:22c1f539024241ee545cbcb00ee160ad1877975690b16656ff87dde107b5f110", - "sha256:32600ddb9c2a53dedc25b8581ea0f1fd8ea04956373c0c07577ce58d312522e0", - "sha256:50879eb0eb1246e3a5eabbbe566b44b10348939b7cc1b267567e8c3d07213853", - "sha256:5a41deccfa5e745cef5c65a560c76ec0ed8e70908a67cc8f4da5fce588b50d57", - "sha256:683be02ca21a6ffe80db6dd02c0b5b2892322c59ca57fd6c872d652cb80549cb", - "sha256:8ee1461b3af56145aca2800e6a3e2f928108c749ba8feccc6f5dd0062c410c0d", - "sha256:b5ba1d0e4c8a40ae0496d0e2ecfdbb82e1776928a205106d14ad6985a09ec155", - "sha256:d473655e29c0c4bbf8b69e9a8fb54645bc289dead6d753b952e7aa660254ae18" + "sha256:13d6d617a2a9e0e82a88113d7191a1baa1e42c2cc6f5f1398d3b054c8e7e714a", + "sha256:2d2e674c58a06311c8e99e74be43e7f3a8d1e2b2fdf845eaa347fbd866f23355", + "sha256:36000f97ea1e76e8398a3f02936aac2a5d2b111aae9920ec1b769fc4a222c4d9", + "sha256:494229ecd8c9009dd71eda5fd57528395d1eacdf307dbece6c12ad0dd09e912e", + "sha256:842de6d9241134a973aab719ab42b008a18a90f9f07f06ba480df268f86432f9", + "sha256:a0c53d78383c851bfa97eb42e3703aefdc96d2036a41482ffd55dc5f529466eb", + "sha256:b2cc8e8bb7c9326996f0e160137b0861f1a82162502658df2951209d0cb0309e", + "sha256:b6b0d416bbbb9d4fbf9d0561dbfc4e324fd522f61f7af0fe0f282ab67b22477e", + "sha256:c12ba8249f5624300cf51c3d0bfe5be71a60c63e4dcf51ffe9a68771d958c851", + "sha256:e621a98c0201a7c8afe89d9646859859be97cb22b8bf1d8eacfd90d5bda2eb19", + "sha256:fde4554c0e578a5a0bcc9a276339594848d1e89f9ea47b4427c80e5d72f90181" ], "markers": "python_version >= '3.8'", - "version": "==5.29.1" + "version": "==5.29.2" }, "py": { "hashes": [ @@ -2202,11 +2079,11 @@ }, "pyparsing": { "hashes": [ - "sha256:93d9577b88da0bbea8cc8334ee8b918ed014968fd2ec383e868fb8afb1ccef84", - "sha256:cbf74e27246d595d9a74b186b810f6fbb86726dbf3b9532efb343f6d7294fe9c" + "sha256:506ff4f4386c4cec0590ec19e6302d3aedb992fdc02c761e90416f158dacf8e1", + "sha256:61980854fd66de3a90028d679a954d5f2623e83144b5afe5ee86f43d762e5f0a" ], - "markers": "python_version >= '3.9'", - "version": "==3.2.0" + "markers": "python_version > '3.0'", + "version": "==3.2.1" }, "pytest": { "hashes": [ @@ -2289,12 +2166,12 @@ }, "types-httplib2": { "hashes": [ - "sha256:1eda99fea18ec8a1dc1a725ead35b889d0836fec1b11ae6f1fe05440724c1d15", - "sha256:8cd706fc81f0da32789a4373a28df6f39e9d5657d1281db4d2fd22ee29e83661" + "sha256:42b67f16a6b0abb337a1fcea628dcd335e1e75f32cd198a657f41a6f4d507508", + "sha256:b15aed53ae5430b87205b6ac270d6332cb5e28e27151e2ac4848fe417827eb54" ], "index": "pypi", "markers": "python_version >= '3.8'", - "version": "==0.22.0.20240310" + "version": "==0.22.0.20241221" }, "types-requests": { "hashes": [ @@ -2309,7 +2186,7 @@ "sha256:04e5ca0351e0f3f85c6853954072df659d0d13fac324d0072316b67d7794700d", "sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8" ], - "markers": "python_version >= '3.8'", + "markers": "python_version < '3.13'", "version": "==4.12.2" }, "uritemplate": { @@ -2322,11 +2199,11 @@ }, "urllib3": { "hashes": [ - "sha256:ca899ca043dcb1bafa3e262d73aa25c465bfb49e0bd9dd5d59f1d0acba2f8fac", - "sha256:e7d814a81dad81e6caf2ec9fdedb284ecc9c73076b62654547cc64ccdcae26e9" + "sha256:1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df", + "sha256:f8c5449b3cf0861679ce7e0503c7b44b5ec981bec0d1d3795a07f1ba96f0204d" ], - "markers": "python_version >= '3.8'", - "version": "==2.2.3" + "markers": "python_version >= '3.9'", + "version": "==2.3.0" } } } diff --git a/api/src/opentrons/hardware_control/backends/ot3controller.py b/api/src/opentrons/hardware_control/backends/ot3controller.py index 84ffbffd8da..70d895560ee 100644 --- a/api/src/opentrons/hardware_control/backends/ot3controller.py +++ b/api/src/opentrons/hardware_control/backends/ot3controller.py @@ -1397,7 +1397,11 @@ async def clean_up(self) -> None: return if hasattr(self, "_event_watcher"): - if loop.is_running() and self._event_watcher: + if ( + loop.is_running() + and self._event_watcher + and not self._event_watcher.closed + ): self._event_watcher.close() messenger = getattr(self, "_messenger", None) diff --git a/api/src/opentrons/protocol_api/validation.py b/api/src/opentrons/protocol_api/validation.py index e734a98e818..aef9ca9057d 100644 --- a/api/src/opentrons/protocol_api/validation.py +++ b/api/src/opentrons/protocol_api/validation.py @@ -14,13 +14,15 @@ from math import isinf, isnan from typing_extensions import TypeGuard -from opentrons_shared_data.labware.labware_definition import LabwareRole +from opentrons_shared_data.labware.labware_definition import ( + LabwareDefinition, + LabwareRole, +) from opentrons_shared_data.pipette.types import PipetteNameType from opentrons_shared_data.robot.types import RobotType from opentrons.protocols.api_support.types import APIVersion, ThermocyclerStep from opentrons.protocols.api_support.util import APIVersionError -from opentrons.protocols.models import LabwareDefinition from opentrons.protocols.advanced_control.transfers.common import TransferTipPolicyV2 from opentrons.types import ( Mount, diff --git a/api/src/opentrons/protocol_engine/actions/actions.py b/api/src/opentrons/protocol_engine/actions/actions.py index a9dcc3e7dc3..0ec505d68e6 100644 --- a/api/src/opentrons/protocol_engine/actions/actions.py +++ b/api/src/opentrons/protocol_engine/actions/actions.py @@ -8,12 +8,12 @@ from enum import Enum from typing import List, Optional, Union -from opentrons.protocols.models import LabwareDefinition +from opentrons_shared_data.errors import EnumeratedError +from opentrons_shared_data.labware.labware_definition import LabwareDefinition + from opentrons.hardware_control.types import DoorState from opentrons.hardware_control.modules import LiveData -from opentrons_shared_data.errors import EnumeratedError - from ..commands import ( Command, CommandCreate, diff --git a/api/src/opentrons/protocol_engine/execution/equipment.py b/api/src/opentrons/protocol_engine/execution/equipment.py index 3d26b355741..5ff31fcdabb 100644 --- a/api/src/opentrons/protocol_engine/execution/equipment.py +++ b/api/src/opentrons/protocol_engine/execution/equipment.py @@ -2,10 +2,10 @@ from dataclasses import dataclass from typing import Optional, overload, Union, List +from opentrons_shared_data.labware.labware_definition import LabwareDefinition from opentrons_shared_data.pipette.types import PipetteNameType from opentrons.calibration_storage.helpers import uri_from_details -from opentrons.protocols.models import LabwareDefinition from opentrons.types import MountType from opentrons.hardware_control import HardwareControlAPI from opentrons.hardware_control.modules import ( diff --git a/api/src/opentrons/protocol_engine/protocol_engine.py b/api/src/opentrons/protocol_engine/protocol_engine.py index 92d992016cd..d1636d18001 100644 --- a/api/src/opentrons/protocol_engine/protocol_engine.py +++ b/api/src/opentrons/protocol_engine/protocol_engine.py @@ -2,20 +2,21 @@ from contextlib import AsyncExitStack from logging import getLogger from typing import Dict, Optional, Union, AsyncGenerator, Callable -from opentrons.protocol_engine.actions.actions import ( - ResumeFromRecoveryAction, - SetErrorRecoveryPolicyAction, -) -from opentrons.protocols.models import LabwareDefinition -from opentrons.hardware_control import HardwareControlAPI -from opentrons.hardware_control.modules import AbstractModule as HardwareModuleAPI -from opentrons.hardware_control.types import PauseType as HardwarePauseType from opentrons_shared_data.errors import ( ErrorCodes, EnumeratedError, ) +from opentrons_shared_data.labware.labware_definition import LabwareDefinition +from opentrons.hardware_control import HardwareControlAPI +from opentrons.hardware_control.modules import AbstractModule as HardwareModuleAPI +from opentrons.hardware_control.types import PauseType as HardwarePauseType + +from .actions.actions import ( + ResumeFromRecoveryAction, + SetErrorRecoveryPolicyAction, +) from .errors import ProtocolCommandFailedError, ErrorOccurrence, CommandNotAllowedError from .errors.exceptions import EStopActivatedError from .error_recovery_policy import ErrorRecoveryPolicy diff --git a/api/src/opentrons/protocol_engine/resources/deck_data_provider.py b/api/src/opentrons/protocol_engine/resources/deck_data_provider.py index 72117c23075..5249508a3dd 100644 --- a/api/src/opentrons/protocol_engine/resources/deck_data_provider.py +++ b/api/src/opentrons/protocol_engine/resources/deck_data_provider.py @@ -10,7 +10,7 @@ DEFAULT_DECK_DEFINITION_VERSION, ) from opentrons_shared_data.deck.types import DeckDefinitionV5 -from opentrons.protocols.models import LabwareDefinition +from opentrons_shared_data.labware.labware_definition import LabwareDefinition from opentrons.types import DeckSlotName from ..types import ( diff --git a/api/src/opentrons/protocol_engine/resources/labware_data_provider.py b/api/src/opentrons/protocol_engine/resources/labware_data_provider.py index 8d5cdfc7899..b71f7e6dac1 100644 --- a/api/src/opentrons/protocol_engine/resources/labware_data_provider.py +++ b/api/src/opentrons/protocol_engine/resources/labware_data_provider.py @@ -6,7 +6,8 @@ import logging from anyio import to_thread -from opentrons.protocols.models import LabwareDefinition +from opentrons_shared_data.labware.labware_definition import LabwareDefinition + from opentrons.protocols.labware import get_labware_definition # TODO (lc 09-26-2022) We should conditionally import ot2 or ot3 calibration diff --git a/api/src/opentrons/protocol_engine/resources/labware_validation.py b/api/src/opentrons/protocol_engine/resources/labware_validation.py index efe6d6daf65..924d0fc0a24 100644 --- a/api/src/opentrons/protocol_engine/resources/labware_validation.py +++ b/api/src/opentrons/protocol_engine/resources/labware_validation.py @@ -1,7 +1,9 @@ """Validation file for labware role and location checking functions.""" -from opentrons_shared_data.labware.labware_definition import LabwareRole -from opentrons.protocols.models import LabwareDefinition +from opentrons_shared_data.labware.labware_definition import ( + LabwareDefinition, + LabwareRole, +) def is_flex_trash(load_name: str) -> bool: diff --git a/api/src/opentrons/protocol_engine/state/frustum_helpers.py b/api/src/opentrons/protocol_engine/state/frustum_helpers.py index 83499fb2510..b28fb936be7 100644 --- a/api/src/opentrons/protocol_engine/state/frustum_helpers.py +++ b/api/src/opentrons/protocol_engine/state/frustum_helpers.py @@ -82,19 +82,12 @@ def _circular_frustum_polynomial_roots( def _volume_from_height_circular( - target_height: float, - total_frustum_height: float, - bottom_radius: float, - top_radius: float, + target_height: float, segment: ConicalFrustum ) -> float: """Find the volume given a height within a circular frustum.""" - a, b, c = _circular_frustum_polynomial_roots( - bottom_radius=bottom_radius, - top_radius=top_radius, - total_frustum_height=total_frustum_height, - ) - volume = a * (target_height**3) + b * (target_height**2) + c * target_height - return volume + heights = segment.height_to_volume_table.keys() + best_fit_height = min(heights, key=lambda x: abs(x - target_height)) + return segment.height_to_volume_table[best_fit_height] def _volume_from_height_rectangular( @@ -138,26 +131,12 @@ def _volume_from_height_squared_cone( def _height_from_volume_circular( - volume: float, - total_frustum_height: float, - bottom_radius: float, - top_radius: float, + target_volume: float, segment: ConicalFrustum ) -> float: - """Find the height given a volume within a circular frustum.""" - a, b, c = _circular_frustum_polynomial_roots( - bottom_radius=bottom_radius, - top_radius=top_radius, - total_frustum_height=total_frustum_height, - ) - d = volume * -1 - x_intercept_roots = (a, b, c, d) - - height_from_volume_roots = roots(x_intercept_roots) - height = _reject_unacceptable_heights( - potential_heights=list(height_from_volume_roots), - max_height=total_frustum_height, - ) - return height + """Find the height given a volume within a squared cone segment.""" + volumes = segment.volume_to_height_table.keys() + best_fit_volume = min(volumes, key=lambda x: abs(x - target_volume)) + return segment.volume_to_height_table[best_fit_volume] def _height_from_volume_rectangular( @@ -243,9 +222,7 @@ def _get_segment_capacity(segment: WellSegment) -> float: return ( _volume_from_height_circular( target_height=section_height, - total_frustum_height=section_height, - bottom_radius=(segment.bottomDiameter / 2), - top_radius=(segment.topDiameter / 2), + segment=segment, ) * segment.count ) @@ -293,12 +270,7 @@ def height_at_volume_within_section( radius_of_curvature=section.radiusOfCurvature, ) case ConicalFrustum(): - return _height_from_volume_circular( - volume=target_volume_relative, - top_radius=(section.bottomDiameter / 2), - bottom_radius=(section.topDiameter / 2), - total_frustum_height=section_height, - ) + return _height_from_volume_circular(target_volume_relative, section) case CuboidalFrustum(): return _height_from_volume_rectangular( volume=target_volume_relative, @@ -334,10 +306,7 @@ def volume_at_height_within_section( case ConicalFrustum(): return ( _volume_from_height_circular( - target_height=target_height_relative, - total_frustum_height=section_height, - bottom_radius=(section.bottomDiameter / 2), - top_radius=(section.topDiameter / 2), + target_height=target_height_relative, segment=section ) * section.count ) @@ -427,7 +396,7 @@ def _find_height_in_partial_frustum( if ( bottom_section_volume < target_volume - < (bottom_section_volume + section_volume) + <= (bottom_section_volume + section_volume) ): relative_target_volume = target_volume - bottom_section_volume section_height = section.topHeight - section.bottomHeight diff --git a/api/src/opentrons/protocol_engine/state/geometry.py b/api/src/opentrons/protocol_engine/state/geometry.py index e0d9cb1afa1..7c725d88c62 100644 --- a/api/src/opentrons/protocol_engine/state/geometry.py +++ b/api/src/opentrons/protocol_engine/state/geometry.py @@ -11,10 +11,10 @@ from opentrons_shared_data.errors.exceptions import InvalidStoredData from opentrons_shared_data.labware.constants import WELL_NAME_PATTERN +from opentrons_shared_data.labware.labware_definition import LabwareDefinition from opentrons_shared_data.deck.types import CutoutFixture from opentrons_shared_data.pipette import PIPETTE_X_SPAN from opentrons_shared_data.pipette.types import ChannelCount -from opentrons.protocols.models import LabwareDefinition from .. import errors from ..errors import ( diff --git a/api/src/opentrons/protocol_engine/state/labware.py b/api/src/opentrons/protocol_engine/state/labware.py index 70cb43c8403..34e69a57a3b 100644 --- a/api/src/opentrons/protocol_engine/state/labware.py +++ b/api/src/opentrons/protocol_engine/state/labware.py @@ -20,14 +20,15 @@ from opentrons_shared_data.deck.types import DeckDefinitionV5 from opentrons_shared_data.gripper.constants import LABWARE_GRIP_FORCE from opentrons_shared_data.labware.labware_definition import ( - LabwareRole, InnerWellGeometry, + LabwareDefinition, + LabwareRole, + WellDefinition, ) from opentrons_shared_data.pipette.types import LabwareUri from opentrons.types import DeckSlotName, StagingSlotName, MountType from opentrons.protocols.api_support.constants import OPENTRONS_NAMESPACE -from opentrons.protocols.models import LabwareDefinition, WellDefinition from opentrons.calibration_storage.helpers import uri_from_details from .. import errors @@ -524,7 +525,6 @@ def get_well_definition( will be used. """ definition = self.get_definition(labware_id) - if well_name is None: well_name = definition.ordering[0][0] diff --git a/api/src/opentrons/protocol_reader/extract_labware_definitions.py b/api/src/opentrons/protocol_reader/extract_labware_definitions.py index 88d7e256a07..8ee4c820e87 100644 --- a/api/src/opentrons/protocol_reader/extract_labware_definitions.py +++ b/api/src/opentrons/protocol_reader/extract_labware_definitions.py @@ -6,7 +6,7 @@ import anyio -from opentrons.protocols.models import LabwareDefinition +from opentrons_shared_data.labware.labware_definition import LabwareDefinition from .protocol_source import ProtocolFileRole, ProtocolSource, ProtocolType diff --git a/api/src/opentrons/protocol_reader/file_format_validator.py b/api/src/opentrons/protocol_reader/file_format_validator.py index 17969fc70fe..ca664eced92 100644 --- a/api/src/opentrons/protocol_reader/file_format_validator.py +++ b/api/src/opentrons/protocol_reader/file_format_validator.py @@ -14,7 +14,7 @@ ) from opentrons_shared_data.errors.exceptions import PythonException -from opentrons.protocols.models import JsonProtocol as JsonProtocolUpToV5 +from opentrons.protocols.models.json_protocol import Model as JsonProtocolUpToV5 from .file_identifier import ( IdentifiedFile, diff --git a/api/src/opentrons/protocols/models/__init__.py b/api/src/opentrons/protocols/models/__init__.py index 62eccdf44ff..e69de29bb2d 100644 --- a/api/src/opentrons/protocols/models/__init__.py +++ b/api/src/opentrons/protocols/models/__init__.py @@ -1,21 +0,0 @@ -# Convenience re-exports of models that are especially common or important. -# More detailed sub-models are always available through the underlying -# submodules. -# -# If re-exporting something, its name should still make sense when it's separated -# from the name of its parent submodule. e.g. re-exporting models.json_protocol.Labware -# as models.Labware could be confusing. - -# TODO(mc, 2022-03-11): remove this re-export when it won't break pickling -# https://opentrons.atlassian.net/browse/RSS-94 -from opentrons_shared_data.labware.labware_definition import ( - LabwareDefinition, - WellDefinition, -) -from .json_protocol import Model as JsonProtocol - -__all__ = [ - "LabwareDefinition", - "WellDefinition", - "JsonProtocol", -] diff --git a/api/tests/opentrons/hardware_control/backends/test_ot3_controller.py b/api/tests/opentrons/hardware_control/backends/test_ot3_controller.py index 9bd87fe62ec..d9901ac6cd8 100644 --- a/api/tests/opentrons/hardware_control/backends/test_ot3_controller.py +++ b/api/tests/opentrons/hardware_control/backends/test_ot3_controller.py @@ -145,7 +145,18 @@ def mock_messenger(can_message_notifier: MockCanMessageNotifier) -> mock.AsyncMo @pytest.fixture def mock_can_driver(mock_messenger: mock.AsyncMock) -> AbstractCanDriver: - return mock.AsyncMock(spec=AbstractCanDriver) + driver = mock.AsyncMock(spec=AbstractCanDriver) + + # ignoring this type error because this is a very weird function that will in fact + # do nothing, but has to have the yield in there for the compiler to make it a + # generator function + async def _fake_message_retrieve(d): # type: ignore[no-untyped-def] + while True: + await asyncio.sleep(1) + yield + + driver.__aiter__ = _fake_message_retrieve + return driver @pytest.fixture @@ -160,15 +171,19 @@ def mock_eeprom_driver() -> EEPROMDriver: @pytest.fixture -def controller( +async def controller( mock_config: OT3Config, mock_can_driver: AbstractCanDriver, mock_eeprom_driver: EEPROMDriver, -) -> OT3Controller: - with (mock.patch("opentrons.hardware_control.backends.ot3controller.OT3GPIO")): - return OT3Controller( +) -> AsyncIterator[OT3Controller]: + with mock.patch("opentrons.hardware_control.backends.ot3controller.OT3GPIO"): + controller = OT3Controller( mock_config, mock_can_driver, eeprom_driver=mock_eeprom_driver ) + try: + yield controller + finally: + await controller.clean_up() @pytest.fixture diff --git a/api/tests/opentrons/protocol_api/test_validation.py b/api/tests/opentrons/protocol_api/test_validation.py index ce12d1a8f53..ff02f86bcff 100644 --- a/api/tests/opentrons/protocol_api/test_validation.py +++ b/api/tests/opentrons/protocol_api/test_validation.py @@ -9,6 +9,7 @@ from opentrons.protocols.advanced_control.transfers.common import TransferTipPolicyV2 from opentrons_shared_data.labware.labware_definition import ( + LabwareDefinition, LabwareRole, Parameters as LabwareDefinitionParameters, ) @@ -33,7 +34,6 @@ HeaterShakerModuleModel, ThermocyclerStep, ) -from opentrons.protocols.models import LabwareDefinition from opentrons.protocols.api_support.types import APIVersion from opentrons.protocols.api_support.util import APIVersionError from opentrons.protocol_api import ( diff --git a/api/tests/opentrons/protocol_engine/commands/test_load_labware.py b/api/tests/opentrons/protocol_engine/commands/test_load_labware.py index 8229d7f4265..c8cdcbec147 100644 --- a/api/tests/opentrons/protocol_engine/commands/test_load_labware.py +++ b/api/tests/opentrons/protocol_engine/commands/test_load_labware.py @@ -6,8 +6,9 @@ import pytest from decoy import Decoy +from opentrons_shared_data.labware.labware_definition import LabwareDefinition + from opentrons.types import DeckSlotName -from opentrons.protocols.models import LabwareDefinition from opentrons.protocol_engine.errors import ( LabwareIsNotAllowedInLocationError, diff --git a/api/tests/opentrons/protocol_engine/commands/test_move_labware.py b/api/tests/opentrons/protocol_engine/commands/test_move_labware.py index 2036bda558a..3a1e8c47b02 100644 --- a/api/tests/opentrons/protocol_engine/commands/test_move_labware.py +++ b/api/tests/opentrons/protocol_engine/commands/test_move_labware.py @@ -7,7 +7,11 @@ import pytest from decoy import Decoy, matchers -from opentrons_shared_data.labware.labware_definition import Parameters, Dimensions +from opentrons_shared_data.labware.labware_definition import ( + LabwareDefinition, + Parameters, + Dimensions, +) from opentrons_shared_data.errors.exceptions import ( EnumeratedError, FailedGripperPickupError, @@ -18,7 +22,6 @@ from opentrons.protocol_engine.state import update_types from opentrons.types import DeckSlotName, Point -from opentrons.protocols.models import LabwareDefinition from opentrons.protocol_engine import errors, Config from opentrons.protocol_engine.resources import labware_validation from opentrons.protocol_engine.resources.model_utils import ModelUtils diff --git a/api/tests/opentrons/protocol_engine/commands/test_reload_labware.py b/api/tests/opentrons/protocol_engine/commands/test_reload_labware.py index 51779c427d7..6b13f464e77 100644 --- a/api/tests/opentrons/protocol_engine/commands/test_reload_labware.py +++ b/api/tests/opentrons/protocol_engine/commands/test_reload_labware.py @@ -1,15 +1,12 @@ """Test load labware commands.""" import inspect -from opentrons.protocol_engine.state.update_types import ( - LabwareLocationUpdate, - StateUpdate, -) -import pytest +import pytest from decoy import Decoy +from opentrons_shared_data.labware.labware_definition import LabwareDefinition + from opentrons.types import DeckSlotName -from opentrons.protocols.models import LabwareDefinition from opentrons.protocol_engine.errors import ( LabwareNotLoadedError, @@ -21,6 +18,10 @@ from opentrons.protocol_engine.execution import ReloadedLabwareData, EquipmentHandler from opentrons.protocol_engine.resources import labware_validation from opentrons.protocol_engine.state.state import StateView +from opentrons.protocol_engine.state.update_types import ( + LabwareLocationUpdate, + StateUpdate, +) from opentrons.protocol_engine.commands.command import SuccessData from opentrons.protocol_engine.commands.reload_labware import ( diff --git a/api/tests/opentrons/protocol_engine/conftest.py b/api/tests/opentrons/protocol_engine/conftest.py index 48ce28e7a98..cc4e80485e0 100644 --- a/api/tests/opentrons/protocol_engine/conftest.py +++ b/api/tests/opentrons/protocol_engine/conftest.py @@ -9,8 +9,8 @@ from opentrons_shared_data.deck import load as load_deck from opentrons_shared_data.deck.types import DeckDefinitionV5 from opentrons_shared_data.labware import load_definition +from opentrons_shared_data.labware.labware_definition import LabwareDefinition from opentrons_shared_data.pipette import pipette_definition -from opentrons.protocols.models import LabwareDefinition from opentrons.protocols.api_support.deck_type import ( STANDARD_OT2_DECK, SHORT_TRASH_DECK, diff --git a/api/tests/opentrons/protocol_engine/execution/test_equipment_handler.py b/api/tests/opentrons/protocol_engine/execution/test_equipment_handler.py index 29117a894b5..5d3edc307bd 100644 --- a/api/tests/opentrons/protocol_engine/execution/test_equipment_handler.py +++ b/api/tests/opentrons/protocol_engine/execution/test_equipment_handler.py @@ -9,6 +9,7 @@ from opentrons_shared_data.pipette.types import PipetteNameType from opentrons_shared_data.pipette import pipette_definition +from opentrons_shared_data.labware.labware_definition import LabwareDefinition from opentrons_shared_data.labware.types import LabwareUri from opentrons.calibration_storage.helpers import uri_from_details @@ -21,7 +22,6 @@ AbstractModule, ) from opentrons.hardware_control.dev_types import PipetteDict -from opentrons.protocols.models import LabwareDefinition from opentrons.protocol_engine import errors from opentrons.protocol_engine.types import ( diff --git a/api/tests/opentrons/protocol_engine/execution/test_tip_handler.py b/api/tests/opentrons/protocol_engine/execution/test_tip_handler.py index 23f701db80b..b04bdd25b67 100644 --- a/api/tests/opentrons/protocol_engine/execution/test_tip_handler.py +++ b/api/tests/opentrons/protocol_engine/execution/test_tip_handler.py @@ -11,7 +11,6 @@ from opentrons.hardware_control.types import TipStateType from opentrons.hardware_control.protocols.types import OT2RobotType, FlexRobotType -from opentrons.protocols.models import LabwareDefinition from opentrons.protocol_engine.state.state import StateView from opentrons.protocol_engine.types import TipGeometry, TipPresenceStatus from opentrons.protocol_engine.resources import LabwareDataProvider @@ -20,6 +19,7 @@ CommandPreconditionViolated, CommandParameterLimitViolated, ) +from opentrons_shared_data.labware.labware_definition import LabwareDefinition from opentrons.protocol_engine.execution.tip_handler import ( HardwareTipHandler, VirtualTipHandler, diff --git a/api/tests/opentrons/protocol_engine/resources/test_deck_configuration_provider.py b/api/tests/opentrons/protocol_engine/resources/test_deck_configuration_provider.py index 174c101f8b1..070efd9dbcf 100644 --- a/api/tests/opentrons/protocol_engine/resources/test_deck_configuration_provider.py +++ b/api/tests/opentrons/protocol_engine/resources/test_deck_configuration_provider.py @@ -203,6 +203,11 @@ def test_get_provided_addressable_area_names( cutout_fixture_id="stagingAreaRightSlot", provided_addressable_areas=frozenset({"D3", "D4"}), ), + PotentialCutoutFixture( + cutout_id="cutoutD3", + cutout_fixture_id="flexStackerV1", + provided_addressable_areas=frozenset({"D3", "flexStackerV1D4"}), + ), }, lazy_fixture("ot3_standard_deck_def"), ), diff --git a/api/tests/opentrons/protocol_engine/resources/test_deck_data_provider.py b/api/tests/opentrons/protocol_engine/resources/test_deck_data_provider.py index e051f155113..2c6ed1589dd 100644 --- a/api/tests/opentrons/protocol_engine/resources/test_deck_data_provider.py +++ b/api/tests/opentrons/protocol_engine/resources/test_deck_data_provider.py @@ -4,7 +4,7 @@ from decoy import Decoy from opentrons_shared_data.deck.types import DeckDefinitionV5 -from opentrons.protocols.models import LabwareDefinition +from opentrons_shared_data.labware.labware_definition import LabwareDefinition from opentrons.types import DeckSlotName from opentrons.protocol_engine.types import ( diff --git a/api/tests/opentrons/protocol_engine/resources/test_labware_data_provider.py b/api/tests/opentrons/protocol_engine/resources/test_labware_data_provider.py index a666e7a697d..80c9775ad2d 100644 --- a/api/tests/opentrons/protocol_engine/resources/test_labware_data_provider.py +++ b/api/tests/opentrons/protocol_engine/resources/test_labware_data_provider.py @@ -1,9 +1,9 @@ """Functional tests for the LabwareDataProvider.""" from typing import cast +from opentrons_shared_data.labware.labware_definition import LabwareDefinition from opentrons_shared_data.labware.types import LabwareDefinition as LabwareDefDict from opentrons.calibration_storage.helpers import hash_labware_def -from opentrons.protocols.models import LabwareDefinition from opentrons.protocol_api.labware import get_labware_definition from opentrons.protocol_engine.resources import LabwareDataProvider diff --git a/api/tests/opentrons/protocol_engine/resources/test_labware_validation.py b/api/tests/opentrons/protocol_engine/resources/test_labware_validation.py index fbe9d6c21a4..bb0db528598 100644 --- a/api/tests/opentrons/protocol_engine/resources/test_labware_validation.py +++ b/api/tests/opentrons/protocol_engine/resources/test_labware_validation.py @@ -2,11 +2,11 @@ import pytest from opentrons_shared_data.labware.labware_definition import ( + LabwareDefinition, LabwareRole, OverlapOffset, Parameters, ) -from opentrons.protocols.models import LabwareDefinition from opentrons.protocol_engine.resources import labware_validation as subject diff --git a/api/tests/opentrons/protocol_engine/state/command_fixtures.py b/api/tests/opentrons/protocol_engine/state/command_fixtures.py index 31f06858b53..a50d6ebc1b4 100644 --- a/api/tests/opentrons/protocol_engine/state/command_fixtures.py +++ b/api/tests/opentrons/protocol_engine/state/command_fixtures.py @@ -4,9 +4,9 @@ from pydantic import BaseModel from typing import Optional, cast, Dict +from opentrons_shared_data.labware.labware_definition import LabwareDefinition from opentrons_shared_data.pipette.types import PipetteNameType from opentrons.types import MountType -from opentrons.protocols.models import LabwareDefinition from opentrons.protocol_engine import ErrorOccurrence, commands as cmd from opentrons.protocol_engine.types import ( DeckPoint, diff --git a/api/tests/opentrons/protocol_engine/state/inner_geometry_test_params.py b/api/tests/opentrons/protocol_engine/state/inner_geometry_test_params.py new file mode 100644 index 00000000000..0a60bf4206c --- /dev/null +++ b/api/tests/opentrons/protocol_engine/state/inner_geometry_test_params.py @@ -0,0 +1,150 @@ +"""Arguments needed to test inner geometry. + +Each labware has 2 nominal volumes calculated in solidworks. +- One is a nominal bottom volume, calculated some set distance from the bottom of the inside of the well. +- The other is a nominal top volume, calculated some set distance from the top of the inside of the well. +""" +INNER_WELL_GEOMETRY_TEST_PARAMS = [ + [ + "opentrons_10_tuberack_nest_4x50ml_6x15ml_conical", + "conicalWell15mL", + 16.7, + 15546.9, + 3.0, + 5.0, + ], + [ + "opentrons_10_tuberack_nest_4x50ml_6x15ml_conical", + "conicalWell50mL", + 111.2, + 56110.3, + 3.0, + 5.0, + ], + ["opentrons_24_tuberack_nest_2ml_screwcap", "conicalWell", 66.6, 2104.9, 3.0, 3.0], + [ + "opentrons_24_tuberack_nest_1.5ml_screwcap", + "conicalWell", + 19.5, + 1750.8, + 3.0, + 3.0, + ], + ["nest_1_reservoir_290ml", "cuboidalWell", 16570.380, 271690.520, 3.0, 3.0], + ["opentrons_24_tuberack_nest_2ml_snapcap", "conicalWell", 69.62, 2148.5, 3.0, 3.0], + ["nest_96_wellplate_2ml_deep", "cuboidalWell", 118.3, 2060.4, 3.0, 3.0], + ["opentrons_24_tuberack_nest_1.5ml_snapcap", "conicalWell", 27.8, 1682.3, 3.0, 3.0], + ["nest_12_reservoir_15ml", "cuboidalWell", 1219.0, 13236.1, 3.0, 3.0], + ["nest_1_reservoir_195ml", "cuboidalWell", 14034.2, 172301.9, 3.0, 3.0], + [ + "opentrons_24_tuberack_nest_0.5ml_screwcap", + "conicalWell", + 21.95, + 795.4, + 3.0, + 3.0, + ], + [ + "opentrons_96_wellplate_200ul_pcr_full_skirt", + "conicalWell", + 14.3, + 150.2, + 3.0, + 3.0, + ], + ["nest_96_wellplate_100ul_pcr_full_skirt", "conicalWell", 15.5, 150.8, 3.0, 3.0], + ["nest_96_wellplate_200ul_flat", "conicalWell", 96.3, 259.8, 3.0, 3.0], + [ + "opentrons_10_tuberack_falcon_4x50ml_6x15ml_conical", + "50mlconicalWell", + 163.9, + 57720.5, + 3.0, + 3.0, + ], + [ + "opentrons_10_tuberack_falcon_4x50ml_6x15ml_conical", + "15mlconicalWell", + 40.8, + 15956.6, + 3.0, + 3.0, + ], + ["usascientific_12_reservoir_22ml", "cuboidalWell", 529.36, 21111.5, 3.0, 3.0], + ["thermoscientificnunc_96_wellplate_2000ul", "conicalWell", 73.5, 1768.0, 3.0, 3.0], + [ + "usascientific_96_wellplate_2.4ml_deep", + "cuboidalWell", + 72.220, + 2241.360, + 3.0, + 3.0, + ], + ["agilent_1_reservoir_290ml", "cuboidalWell", 15652.9, 268813.8, 3.0, 3.0], + [ + "opentrons_24_tuberack_eppendorf_1.5ml_safelock_snapcap", + "conicalWell", + 25.8, + 1576.1, + 3.0, + 3.0, + ], + ["thermoscientificnunc_96_wellplate_1300ul", "conicalWell", 73.5, 1155.1, 3.0, 3.0], + ["corning_12_wellplate_6.9ml_flat", "conicalWell", 1156.3, 5654.8, 3.0, 3.0], + ["corning_24_wellplate_3.4ml_flat", "conicalWell", 579.0, 2853.4, 3.0, 3.0], + ["corning_6_wellplate_16.8ml_flat", "conicalWell", 2862.1, 13901.9, 3.0, 3.0], + ["corning_48_wellplate_1.6ml_flat", "conicalWell", 268.9, 1327.0, 3.0, 3.0], + ["biorad_96_wellplate_200ul_pcr", "conicalWell", 17.9, 161.2, 3.0, 3.0], + ["axygen_1_reservoir_90ml", "cuboidalWell", 22373.4, 70450.6, 3.0, 3.0], + ["corning_384_wellplate_112ul_flat", "flatWell", 22.4, 77.4, 2.88, 3.0], + ["corning_96_wellplate_360ul_flat", "conicalWell", 97.2, 257.1, 3.0, 3.0], + ["biorad_384_wellplate_50ul", "conicalWell", 7.7, 27.8, 3.0, 3.0], + [ + "appliedbiosystemsmicroamp_384_wellplate_40ul", + "conicalWell", + 7.44, + 26.19, + 3.0, + 3.0, + ], + [ + "opentrons_24_tuberack_eppendorf_2ml_safelock_snapcap", + "conicalWell", + 60.940, + 2163.980, + 3.0, + 3.0, + ], + [ + "opentrons_10_tuberack_nest_4x50ml_6x15ml_conical", + "conicalWell15mL", + 16.690, + 15546.930, + 3.0, + 5.0, + ], + [ + "opentrons_10_tuberack_nest_4x50ml_6x15ml_conical", + "conicalWell50mL", + 111.200, + 56110.279, + 3.0, + 5.0, + ], + [ + "opentrons_10_tuberack_falcon_4x50ml_6x15ml_conical", + "15mlconicalWell", + 40.830, + 15956.600, + 3.0, + 3.0, + ], + [ + "opentrons_10_tuberack_falcon_4x50ml_6x15ml_conical", + "50mlconicalWell", + 163.860, + 57720.510, + 3.0, + 3.0, + ], +] diff --git a/api/tests/opentrons/protocol_engine/state/test_geometry_view.py b/api/tests/opentrons/protocol_engine/state/test_geometry_view.py index fda32a56ce0..bf82c17c6bc 100644 --- a/api/tests/opentrons/protocol_engine/state/test_geometry_view.py +++ b/api/tests/opentrons/protocol_engine/state/test_geometry_view.py @@ -6,6 +6,7 @@ from math import isclose from typing import cast, List, Tuple, Optional, NamedTuple, Dict from unittest.mock import sentinel +from os import listdir, path import pytest from decoy import Decoy @@ -15,20 +16,21 @@ StateUpdate, ) +from opentrons_shared_data import get_shared_data_root, load_shared_data from opentrons_shared_data.deck.types import DeckDefinitionV5 from opentrons_shared_data.deck import load as load_deck +from opentrons_shared_data.labware.labware_definition import LabwareDefinition from opentrons_shared_data.labware.types import LabwareUri from opentrons_shared_data.pipette import pipette_definition from opentrons.calibration_storage.helpers import uri_from_details -from opentrons.protocols.models import LabwareDefinition from opentrons.types import Point, DeckSlotName, MountType, StagingSlotName from opentrons_shared_data.pipette.types import PipetteNameType from opentrons_shared_data.labware.labware_definition import ( Dimensions as LabwareDimensions, Parameters as LabwareDefinitionParameters, CornerOffsetFromSlot, + ConicalFrustum, ) -from opentrons_shared_data import load_shared_data from opentrons.protocol_engine import errors from opentrons.protocol_engine.types import ( @@ -96,6 +98,7 @@ _volume_from_height_circular, _volume_from_height_rectangular, ) +from .inner_geometry_test_params import INNER_WELL_GEOMETRY_TEST_PARAMS from ..pipette_fixtures import get_default_nozzle_map from ..mock_circular_frusta import TEST_EXAMPLES as CIRCULAR_TEST_EXAMPLES from ..mock_rectangular_frusta import TEST_EXAMPLES as RECTANGULAR_TEST_EXAMPLES @@ -3278,19 +3281,23 @@ def _find_volume_from_height_(index: int) -> None: nonlocal total_frustum_height, bottom_radius top_radius = frustum["radius"][index] target_height = frustum["height"][index] - + segment = ConicalFrustum( + shape="conical", + bottomDiameter=bottom_radius * 2, + topDiameter=top_radius * 2, + topHeight=total_frustum_height, + bottomHeight=0.0, + xCount=1, + yCount=1, + ) found_volume = _volume_from_height_circular( target_height=target_height, - total_frustum_height=total_frustum_height, - top_radius=top_radius, - bottom_radius=bottom_radius, + segment=segment, ) found_height = _height_from_volume_circular( - volume=found_volume, - total_frustum_height=total_frustum_height, - top_radius=top_radius, - bottom_radius=bottom_radius, + target_volume=found_volume, + segment=segment, ) assert isclose(found_height, frustum["height"][index]) @@ -3360,3 +3367,133 @@ def test_validate_dispense_volume_into_well_meniscus( ), volume=1100000.0, ) + + +@pytest.mark.parametrize( + [ + "labware_id", + "well_name", + "input_volume_bottom", + "input_volume_top", + "expected_height_from_bottom_mm", + "expected_height_from_top_mm", + ], + INNER_WELL_GEOMETRY_TEST_PARAMS, +) +def test_get_well_height_at_volume( + decoy: Decoy, + subject: GeometryView, + labware_id: str, + well_name: str, + input_volume_bottom: float, + input_volume_top: float, + expected_height_from_bottom_mm: float, + expected_height_from_top_mm: float, + mock_labware_view: LabwareView, +) -> None: + """Test getting the well height at a given volume.""" + + def _get_labware_def() -> LabwareDefinition: + def_dir = str(get_shared_data_root()) + f"/labware/definitions/3/{labware_id}" + version_str = max([str(version) for version in listdir(def_dir)]) + def_path = path.join(def_dir, version_str) + _labware_def = LabwareDefinition.model_validate( + json.loads(load_shared_data(def_path).decode("utf-8")) + ) + return _labware_def + + labware_def = _get_labware_def() + assert labware_def.innerLabwareGeometry is not None + well_geometry = labware_def.innerLabwareGeometry.get(well_name) + assert well_geometry is not None + well_definition = [ + well + for well in labware_def.wells.values() + if well.geometryDefinitionId == well_name + ][0] + + decoy.when(mock_labware_view.get_well_geometry(labware_id, well_name)).then_return( + well_geometry + ) + decoy.when( + mock_labware_view.get_well_definition(labware_id, well_name) + ).then_return(well_definition) + + found_height_bottom = subject.get_well_height_at_volume( + labware_id=labware_id, well_name=well_name, volume=input_volume_bottom + ) + found_height_top = subject.get_well_height_at_volume( + labware_id=labware_id, well_name=well_name, volume=input_volume_top + ) + assert isclose(found_height_bottom, expected_height_from_bottom_mm, rel_tol=0.01) + vol_2_expected_height_from_bottom = ( + subject.get_well_height(labware_id=labware_id, well_name=well_name) + - expected_height_from_top_mm + ) + assert isclose(found_height_top, vol_2_expected_height_from_bottom, rel_tol=0.01) + + +@pytest.mark.parametrize( + [ + "labware_id", + "well_name", + "expected_volume_bottom", + "expected_volume_top", + "input_height_from_bottom_mm", + "input_height_from_top_mm", + ], + INNER_WELL_GEOMETRY_TEST_PARAMS, +) +def test_get_well_volume_at_height( + decoy: Decoy, + subject: GeometryView, + labware_id: str, + well_name: str, + expected_volume_bottom: float, + expected_volume_top: float, + input_height_from_bottom_mm: float, + input_height_from_top_mm: float, + mock_labware_view: LabwareView, +) -> None: + """Test getting the volume at a given height.""" + + def _get_labware_def() -> LabwareDefinition: + def_dir = str(get_shared_data_root()) + f"/labware/definitions/3/{labware_id}" + version_str = max([str(version) for version in listdir(def_dir)]) + def_path = path.join(def_dir, version_str) + _labware_def = LabwareDefinition.model_validate( + json.loads(load_shared_data(def_path).decode("utf-8")) + ) + return _labware_def + + labware_def = _get_labware_def() + assert labware_def.innerLabwareGeometry is not None + well_geometry = labware_def.innerLabwareGeometry.get(well_name) + assert well_geometry is not None + well_definition = [ + well + for well in labware_def.wells.values() + if well.geometryDefinitionId == well_name + ][0] + + decoy.when(mock_labware_view.get_well_geometry(labware_id, well_name)).then_return( + well_geometry + ) + decoy.when( + mock_labware_view.get_well_definition(labware_id, well_name) + ).then_return(well_definition) + + found_volume_bottom = subject.get_well_volume_at_height( + labware_id=labware_id, well_name=well_name, height=input_height_from_bottom_mm + ) + vol_2_input_height_from_bottom = ( + subject.get_well_height(labware_id=labware_id, well_name=well_name) + - input_height_from_top_mm + ) + found_volume_top = subject.get_well_volume_at_height( + labware_id=labware_id, + well_name=well_name, + height=vol_2_input_height_from_bottom, + ) + assert isclose(found_volume_bottom, expected_volume_bottom, rel_tol=0.01) + assert isclose(found_volume_top, expected_volume_top, rel_tol=0.01) diff --git a/api/tests/opentrons/protocol_engine/state/test_labware_store_old.py b/api/tests/opentrons/protocol_engine/state/test_labware_store_old.py index 3b539df58e3..d5e7e41770e 100644 --- a/api/tests/opentrons/protocol_engine/state/test_labware_store_old.py +++ b/api/tests/opentrons/protocol_engine/state/test_labware_store_old.py @@ -12,7 +12,7 @@ from opentrons.calibration_storage.helpers import uri_from_details from opentrons_shared_data.deck.types import DeckDefinitionV5 -from opentrons.protocols.models import LabwareDefinition +from opentrons_shared_data.labware.labware_definition import LabwareDefinition from opentrons.types import DeckSlotName from opentrons.protocol_engine.types import ( diff --git a/api/tests/opentrons/protocol_engine/state/test_labware_view_old.py b/api/tests/opentrons/protocol_engine/state/test_labware_view_old.py index ac92d5e5eaf..c657ec2a7ae 100644 --- a/api/tests/opentrons/protocol_engine/state/test_labware_view_old.py +++ b/api/tests/opentrons/protocol_engine/state/test_labware_view_old.py @@ -15,6 +15,7 @@ from opentrons_shared_data.labware import load_definition from opentrons_shared_data.labware.labware_definition import ( Parameters, + LabwareDefinition, LabwareRole, OverlapOffset as SharedDataOverlapOffset, GripperOffsets, @@ -25,7 +26,6 @@ STANDARD_OT2_DECK, STANDARD_OT3_DECK, ) -from opentrons.protocols.models import LabwareDefinition from opentrons.types import DeckSlotName, MountType from opentrons.protocol_engine import errors diff --git a/api/tests/opentrons/protocol_engine/state/test_module_store_old.py b/api/tests/opentrons/protocol_engine/state/test_module_store_old.py index 4767ecad16b..b3125865ba6 100644 --- a/api/tests/opentrons/protocol_engine/state/test_module_store_old.py +++ b/api/tests/opentrons/protocol_engine/state/test_module_store_old.py @@ -7,6 +7,8 @@ from typing import List, Set, cast, Dict, Optional import pytest + +from opentrons.protocol_engine.state import update_types from opentrons_shared_data.robot.types import RobotType from opentrons_shared_data.deck.types import DeckDefinitionV5 from pytest_lazyfixture import lazy_fixture # type: ignore[import-untyped] @@ -44,6 +46,8 @@ TemperatureModuleSubState, ThermocyclerModuleId, ThermocyclerModuleSubState, + AbsorbanceReaderSubState, + AbsorbanceReaderId, ModuleSubStateType, ) @@ -723,3 +727,134 @@ def test_handle_thermocycler_lid_commands( target_lid_temperature=None, ) } + + +def test_handle_absorbance_reader_commands( + abs_reader_v1_def: ModuleDefinition, +) -> None: + """It should update absorbance reader state.""" + load_module_cmd = commands.LoadModule.model_construct( # type: ignore[call-arg] + params=commands.LoadModuleParams( + model=ModuleModel.ABSORBANCE_READER_V1, + location=DeckSlotLocation(slotName=DeckSlotName.SLOT_1), + ), + result=commands.LoadModuleResult( + moduleId="module-id", + model=ModuleModel.ABSORBANCE_READER_V1, + serialNumber="serial-number", + definition=abs_reader_v1_def, + ), + ) + + initialize_reader = commands.Comment.model_construct( # type: ignore[call-arg] + params=commands.CommentParams(message="hello"), + result=commands.CommentResult(), + ) + open_lid = commands.Comment.model_construct( # type: ignore[call-arg] + params=commands.CommentParams(message="hello dude"), + result=commands.CommentResult(), + ) + + read_data = commands.Comment.model_construct( # type: ignore[call-arg] + params=commands.CommentParams(message="hello man"), + result=commands.CommentResult(), + ) + + close_lid = commands.Comment.model_construct( # type: ignore[call-arg] + params=commands.CommentParams(message="hello ladies"), + result=commands.CommentResult(), + ) + + subject = ModuleStore( + Config( + use_simulated_deck_config=False, + robot_type="OT-3 Standard", + deck_type=DeckType.OT3_STANDARD, + ), + deck_fixed_labware=[], + ) + + subject.handle_action( + actions.SucceedCommandAction( + command=load_module_cmd, + state_update=update_types.StateUpdate().initialize_absorbance_reader( + "module-id", "single", [1], None + ), + ) + ) + subject.handle_action(actions.SucceedCommandAction(command=initialize_reader)) + assert subject.state.substate_by_module_id == { + "module-id": AbsorbanceReaderSubState( + module_id=AbsorbanceReaderId("module-id"), + is_lid_on=True, + configured=True, + measured=False, + data=None, + configured_wavelengths=[1], + measure_mode="single", # type: ignore[arg-type] + reference_wavelength=None, + ) + } + + subject.handle_action( + actions.SucceedCommandAction( + command=open_lid, + state_update=update_types.StateUpdate().set_absorbance_reader_lid( + module_id="module-id", is_lid_on=False + ), + ) + ) + assert subject.state.substate_by_module_id == { + "module-id": AbsorbanceReaderSubState( + module_id=AbsorbanceReaderId("module-id"), + is_lid_on=False, + configured=True, + measured=True, + data=None, + configured_wavelengths=[1], + measure_mode="single", # type: ignore[arg-type] + reference_wavelength=None, + ) + } + + subject.handle_action( + actions.SucceedCommandAction( + command=read_data, + state_update=update_types.StateUpdate().set_absorbance_reader_data( + module_id="module-id", read_result={1: {"A1": 1.2}} + ), + ) + ) + assert subject.state.substate_by_module_id == { + "module-id": AbsorbanceReaderSubState( + module_id=AbsorbanceReaderId("module-id"), + is_lid_on=False, + configured=True, + measured=True, + data={1: {"A1": 1.2}}, + configured_wavelengths=[1], + measure_mode="single", # type: ignore[arg-type] + reference_wavelength=None, + ) + } + + subject.handle_action( + actions.SucceedCommandAction( + command=close_lid, + state_update=update_types.StateUpdate().set_absorbance_reader_lid( + module_id="module-id", is_lid_on=True + ), + ) + ) + assert subject.state.substate_by_module_id == { + "module-id": AbsorbanceReaderSubState( + module_id=AbsorbanceReaderId("module-id"), + is_lid_on=True, + configured=True, + measured=True, + data={1: {"A1": 1.2}}, + configured_wavelengths=[1], + measure_mode="single", # type: ignore[arg-type] + reference_wavelength=None, + ) + } diff --git a/api/tests/opentrons/protocol_engine/test_create_protocol_engine.py b/api/tests/opentrons/protocol_engine/test_create_protocol_engine.py index b5733cda6b8..a7cb708df75 100644 --- a/api/tests/opentrons/protocol_engine/test_create_protocol_engine.py +++ b/api/tests/opentrons/protocol_engine/test_create_protocol_engine.py @@ -2,14 +2,14 @@ import pytest from pytest_lazyfixture import lazy_fixture # type: ignore[import-untyped] +from opentrons_shared_data.deck import load as load_deck from opentrons_shared_data.deck.types import DeckDefinitionV5 +from opentrons_shared_data.labware.labware_definition import LabwareDefinition from opentrons_shared_data.robot.types import RobotType -from opentrons_shared_data.deck import load as load_deck from opentrons.calibration_storage.helpers import uri_from_details from opentrons.hardware_control import API as HardwareAPI from opentrons.hardware_control.types import DoorState -from opentrons.protocols.models import LabwareDefinition from opentrons.protocol_engine import ( ProtocolEngine, Config as EngineConfig, diff --git a/api/tests/opentrons/protocol_engine/test_protocol_engine.py b/api/tests/opentrons/protocol_engine/test_protocol_engine.py index 95289d681b8..6c1efcc55d7 100644 --- a/api/tests/opentrons/protocol_engine/test_protocol_engine.py +++ b/api/tests/opentrons/protocol_engine/test_protocol_engine.py @@ -9,6 +9,7 @@ from decoy import Decoy from opentrons_shared_data.robot.types import RobotType +from opentrons_shared_data.labware.labware_definition import LabwareDefinition from opentrons.protocol_engine.actions.actions import SetErrorRecoveryPolicyAction from opentrons.protocol_engine.state.update_types import StateUpdate @@ -16,7 +17,6 @@ from opentrons.hardware_control import HardwareControlAPI, OT2HardwareControlAPI from opentrons.hardware_control.modules import MagDeck, TempDeck from opentrons.hardware_control.types import PauseType as HardwarePauseType -from opentrons.protocols.models import LabwareDefinition from opentrons.protocol_engine import ProtocolEngine, commands, slot_standardization from opentrons.protocol_engine.errors.exceptions import ( diff --git a/api/tests/opentrons/protocols/geometry/test_frustum_helpers.py b/api/tests/opentrons/protocols/geometry/test_frustum_helpers.py index 0b8d3429527..d9bd8173834 100644 --- a/api/tests/opentrons/protocols/geometry/test_frustum_helpers.py +++ b/api/tests/opentrons/protocols/geometry/test_frustum_helpers.py @@ -11,7 +11,6 @@ _cross_section_area_rectangular, _cross_section_area_circular, _reject_unacceptable_heights, - _circular_frustum_polynomial_roots, _rectangular_frustum_polynomial_roots, _volume_from_height_rectangular, _volume_from_height_circular, @@ -211,39 +210,25 @@ def test_volume_and_height_circular(well: List[Any]) -> None: """Test both volume and height calculations for circular frusta.""" if well[-1].shape == "spherical": return - total_height = well[0].topHeight for segment in well: if segment.shape == "conical": - top_radius = segment.topDiameter / 2 - bottom_radius = segment.bottomDiameter / 2 - a = pi * ((top_radius - bottom_radius) ** 2) / (3 * total_height**2) - b = pi * bottom_radius * (top_radius - bottom_radius) / total_height - c = pi * bottom_radius**2 - assert _circular_frustum_polynomial_roots( - top_radius=top_radius, - bottom_radius=bottom_radius, - total_frustum_height=total_height, - ) == (a, b, c) + a = segment.topDiameter / 2 + b = segment.bottomDiameter / 2 # test volume within a bunch of arbitrary heights - for target_height in range(round(total_height)): - expected_volume = ( - a * (target_height**3) - + b * (target_height**2) - + c * target_height + segment_height = segment.topHeight - segment.bottomHeight + for target_height in range(round(segment_height)): + r_y = (target_height / segment_height) * (a - b) + b + expected_volume = (pi * target_height / 3) * ( + b**2 + b * r_y + r_y**2 ) found_volume = _volume_from_height_circular( target_height=target_height, - total_frustum_height=total_height, - bottom_radius=bottom_radius, - top_radius=top_radius, + segment=segment, ) - assert found_volume == expected_volume + assert isclose(found_volume, expected_volume) # test going backwards to get height back found_height = _height_from_volume_circular( - volume=found_volume, - total_frustum_height=total_height, - bottom_radius=bottom_radius, - top_radius=top_radius, + target_volume=found_volume, segment=segment ) assert isclose(found_height, target_height) diff --git a/app/src/DesignTokens/Spacing/Spacing.stories.tsx b/app/src/DesignTokens/Spacing/Spacing.stories.tsx index 3b12ae833db..11c9125a45f 100644 --- a/app/src/DesignTokens/Spacing/Spacing.stories.tsx +++ b/app/src/DesignTokens/Spacing/Spacing.stories.tsx @@ -1,3 +1,6 @@ +import styled from 'styled-components' +// eslint-disable-next-line @typescript-eslint/no-unused-vars +import React from 'react' import { ALIGN_FLEX_START, Box, @@ -5,8 +8,7 @@ import { DIRECTION_COLUMN, Flex, SPACING, - LegacyStyledText, - TYPOGRAPHY, + StyledText, } from '@opentrons/components' import type { Story, Meta } from '@storybook/react' @@ -21,6 +23,12 @@ interface SpacingsStorybookProps { const Template: Story = args => { const targetSpacings = args.spacings.filter(s => !s[1].includes('auto')) + // sort by rem value + const sortedSpacing = targetSpacings.sort((a, b) => { + const aValue = parseFloat(a[1].replace('rem', '')) + const bValue = parseFloat(b[1].replace('rem', '')) + return aValue - bValue + }) const convertToPx = (remFormat: string): string => { const pxVal = Number(remFormat.replace('rem', '')) * 16 @@ -33,7 +41,7 @@ const Template: Story = args => { gridGap={SPACING.spacing8} padding={SPACING.spacing24} > - {targetSpacings.map((spacing, index) => ( + {sortedSpacing.map((spacing, index) => ( = args => { width="100%" height="6rem" > - + {`${spacing[0]} - ${spacing[1]}: ${convertToPx(spacing[1])}`} - - + + + + + ))} @@ -62,3 +69,9 @@ const allSpacings = Object.entries(SPACING) AllSpacing.args = { spacings: allSpacings, } + +const StyledBox = styled(Box)` + width: 2rem; + height: 2rem; + background-color: ${COLORS.blue35}; +` diff --git a/app/src/organisms/Desktop/Devices/ProtocolRun/SetupModuleAndDeck/OT2MultipleModulesHelp.tsx b/app/src/organisms/Desktop/Devices/ProtocolRun/SetupModuleAndDeck/OT2MultipleModulesHelp.tsx index 6533828d803..2d35ca9925c 100644 --- a/app/src/organisms/Desktop/Devices/ProtocolRun/SetupModuleAndDeck/OT2MultipleModulesHelp.tsx +++ b/app/src/organisms/Desktop/Devices/ProtocolRun/SetupModuleAndDeck/OT2MultipleModulesHelp.tsx @@ -9,11 +9,11 @@ import { DIRECTION_ROW, Flex, Icon, + LegacyStyledText, Link, + Modal, PrimaryButton, SPACING, - Modal, - LegacyStyledText, TYPOGRAPHY, } from '@opentrons/components' import { getTopPortalEl } from '/app/App/portal' diff --git a/app/src/organisms/EmergencyStop/DesktopEstopMissingModal.stories.tsx b/app/src/organisms/EmergencyStop/DesktopEstopMissingModal.stories.tsx index f8729d48263..e089b8cee20 100644 --- a/app/src/organisms/EmergencyStop/DesktopEstopMissingModal.stories.tsx +++ b/app/src/organisms/EmergencyStop/DesktopEstopMissingModal.stories.tsx @@ -2,7 +2,7 @@ import type * as React from 'react' import { Provider } from 'react-redux' import { createStore } from 'redux' -import { configReducer } from '/app/redux/config/reducer' +import { configReducer } from '../../redux/config/reducer' import { EstopMissingModal } from '.' import type { Store, StoreEnhancer } from 'redux' diff --git a/app/src/organisms/EmergencyStop/DesktopEstopPressedModal.stories.tsx b/app/src/organisms/EmergencyStop/DesktopEstopPressedModal.stories.tsx index 5b999ce2bc5..917e92143c6 100644 --- a/app/src/organisms/EmergencyStop/DesktopEstopPressedModal.stories.tsx +++ b/app/src/organisms/EmergencyStop/DesktopEstopPressedModal.stories.tsx @@ -3,7 +3,7 @@ import { Provider } from 'react-redux' import { createStore } from 'redux' import { QueryClient, QueryClientProvider } from 'react-query' -import { configReducer } from '/app/redux/config/reducer' +import { configReducer } from '../../redux/config/reducer' import { EstopPressedModal } from '.' import type { Store, StoreEnhancer } from 'redux' diff --git a/components/src/modals/Modal.stories.tsx b/components/src/modals/Modal.stories.tsx index 6adfcbc3274..76cef153d47 100644 --- a/components/src/modals/Modal.stories.tsx +++ b/components/src/modals/Modal.stories.tsx @@ -1,52 +1,36 @@ -import type * as React from 'react' +import { PrimaryButton, StyledText } from '../atoms' +import { SPACING } from '../ui-style-constants' +import { Flex } from '../primitives' +import { JUSTIFY_END } from '../styles' +import { Modal as ModalComponent } from './Modal' -import { LegacyStyledText } from '../atoms' -import { SPACING, TYPOGRAPHY } from '../ui-style-constants' -import { PrimaryBtn } from '../primitives' -import { COLORS } from '../helix-design-system' -import { Modal } from './Modal' +import type { Meta, StoryObj } from '@storybook/react' -import type { Story, Meta } from '@storybook/react' - -export default { +const meta: Meta = { title: 'Library/Molecules/modals/Modal', - component: Modal, -} as Meta - -const Template: Story> = args => ( - -) + component: ModalComponent, +} +export default meta +type Story = StoryObj +const bodyText = 'Modal body goes here' const Children = ( - <> - - {'Modal body goes here'} - + {bodyText} +) - - - {'btn text'} - - - +const Footer = ( + + {}}>{'btn text'} + ) -export const Primary = Template.bind({}) -Primary.args = { - type: 'info', - onClose: () => {}, - closeOnOutsideClick: false, - title: 'Modal Title', - children: Children, +export const Modal: Story = { + args: { + type: 'info', + onClose: () => {}, + closeOnOutsideClick: false, + title: 'Modal Title', + children: Children, + footer: Footer, + }, } diff --git a/components/src/modals/Modal.tsx b/components/src/modals/Modal.tsx index 304b733de8a..7c10694981c 100644 --- a/components/src/modals/Modal.tsx +++ b/components/src/modals/Modal.tsx @@ -66,7 +66,6 @@ export const Modal = (props: ModalProps): JSX.Element => { name: 'ot-alert', color: iconColor(type), size: '1.25rem', - marginRight: SPACING.spacing8, } const modalHeader = ( diff --git a/components/src/modals/ModalHeader.tsx b/components/src/modals/ModalHeader.tsx index b505b1f1a47..6472157400f 100644 --- a/components/src/modals/ModalHeader.tsx +++ b/components/src/modals/ModalHeader.tsx @@ -1,10 +1,15 @@ -import { css } from 'styled-components' +import styled, { css } from 'styled-components' import { Icon } from '../icons' import { Box, Btn, Flex } from '../primitives' -import { LegacyStyledText } from '../atoms' -import { ALIGN_CENTER, JUSTIFY_CENTER, JUSTIFY_SPACE_BETWEEN } from '../styles' -import { SPACING, TYPOGRAPHY } from '../ui-style-constants' +import { StyledText } from '../atoms' +import { + ALIGN_CENTER, + DISPLAY_FLEX, + JUSTIFY_CENTER, + JUSTIFY_SPACE_BETWEEN, +} from '../styles' +import { SPACING } from '../ui-style-constants' import { COLORS } from '../helix-design-system' import type { MouseEventHandler, ReactNode } from 'react' @@ -21,22 +26,6 @@ export interface ModalHeaderProps { closeButton?: ReactNode } -const closeIconStyles = css` - display: flex; - justify-content: ${JUSTIFY_CENTER}; - align-items: ${ALIGN_CENTER}; - border-radius: 0.875rem; - width: 1.625rem; - height: 1.625rem; - &:hover { - background-color: ${COLORS.grey30}; - } - - &:active { - background-color: ${COLORS.grey35}; - } -` - export const ModalHeader = (props: ModalHeaderProps): JSX.Element => { const { icon, @@ -45,57 +34,72 @@ export const ModalHeader = (props: ModalHeaderProps): JSX.Element => { titleElement1, titleElement2, backgroundColor, - color, + color = COLORS.black90, closeButton, } = props return ( <> - - + {icon != null && } {titleElement1} {titleElement2} - {/* TODO (nd: 08/07/2024) Convert to StyledText once designs are resolved */} - + {title} - + - {closeButton != null - ? closeButton - : onClose != null && ( - - - - )} - - + {closeButton != null || + (onClose != null && ( + + + + ))} + + ) } + +const StyledModalHeader = styled(Flex)` + padding: ${SPACING.spacing16} ${SPACING.spacing24}; + justify-content: ${JUSTIFY_SPACE_BETWEEN}; + align-items: ${ALIGN_CENTER}; + background-color: ${props => props.backgroundColor}; +` + +const StyledDivider = styled(Box)` + border-bottom: 1px solid ${COLORS.grey30}; + margin: 0; + width: 100%; +` + +const closeIconStyles = css` + display: ${DISPLAY_FLEX}; + justify-content: ${JUSTIFY_CENTER}; + align-items: ${ALIGN_CENTER}; + border-radius: 0.875rem; + width: 1.625rem; + height: 1.625rem; + &:hover { + background-color: ${COLORS.grey30}; + } + + &:active { + background-color: ${COLORS.grey35}; + } +` diff --git a/components/src/modals/ModalShell.tsx b/components/src/modals/ModalShell.tsx index c6fa7e5ccb3..82ae09b8868 100644 --- a/components/src/modals/ModalShell.tsx +++ b/components/src/modals/ModalShell.tsx @@ -3,6 +3,7 @@ import { ALIGN_CENTER, ALIGN_END, CURSOR_DEFAULT, + DISPLAY_FLEX, JUSTIFY_CENTER, JUSTIFY_END, OVERFLOW_AUTO, @@ -110,7 +111,7 @@ const ContentArea = styled.div<{ position: Position noPadding: boolean }>` - display: flex; + display: ${DISPLAY_FLEX}; position: ${POSITION_ABSOLUTE}; align-items: ${({ position }) => position === 'center' ? ALIGN_CENTER : ALIGN_END}; @@ -137,6 +138,7 @@ const ModalArea = styled.div< box-shadow: ${BORDERS.smallDropShadow}; height: ${({ isFullPage }) => (isFullPage ? '100%' : 'auto')}; background-color: ${COLORS.white}; + @media ${RESPONSIVENESS.touchscreenMediaQuerySpecs} { border-radius: ${BORDERS.borderRadius16}; } diff --git a/components/src/modals/__tests__/ModalHeader.test.tsx b/components/src/modals/__tests__/ModalHeader.test.tsx index bf55110b63f..051dfea623d 100644 --- a/components/src/modals/__tests__/ModalHeader.test.tsx +++ b/components/src/modals/__tests__/ModalHeader.test.tsx @@ -3,10 +3,9 @@ import '@testing-library/jest-dom/vitest' import { describe, it, expect, vi, beforeEach } from 'vitest' import { renderWithProviders } from '../../testing/utils' -import { ModalHeader } from '../ModalHeader' import { COLORS } from '../../helix-design-system' -import { SPACING } from '../../ui-style-constants' import { ALIGN_CENTER, JUSTIFY_CENTER } from '../../styles' +import { ModalHeader } from '../ModalHeader' import type { ComponentProps } from 'react' @@ -40,7 +39,6 @@ describe('ModalHeader', () => { name: 'ot-alert', color: COLORS.black90, size: '1.25rem', - marginRight: SPACING.spacing8, } render(props) expect(screen.getByTestId('Modal_header_icon')).toHaveStyle( @@ -52,9 +50,6 @@ describe('ModalHeader', () => { expect(screen.getByTestId('Modal_header_icon')).toHaveStyle( `height: 1.25rem` ) - expect(screen.getByTestId('Modal_header_icon')).toHaveStyle( - `margin-right: ${SPACING.spacing8}` - ) }) it('should call a mock function when clicking close icon', () => { diff --git a/components/src/organisms/DeckLabelSet/DeckLabelSet.stories.tsx b/components/src/organisms/DeckLabelSet/DeckLabelSet.stories.tsx index 5836fe5b947..73542cce99a 100644 --- a/components/src/organisms/DeckLabelSet/DeckLabelSet.stories.tsx +++ b/components/src/organisms/DeckLabelSet/DeckLabelSet.stories.tsx @@ -8,14 +8,17 @@ import type { Meta, StoryObj } from '@storybook/react' const mockDeckLabels = [ { + isZoomed: false, text: 'Label', isSelected: false, labelBorderRadius: BORDERS.borderRadius4, }, { + isZoomed: false, text: 'Label', isSelected: false, labelBorderRadius: BORDERS.borderRadius4, + isLast: true, }, ] @@ -24,7 +27,7 @@ const meta: Meta = { component: DeckLabelSetComponent, decorators: [ Story => ( - + ), @@ -38,8 +41,8 @@ export const DeckLabel: Story = { args: { // width and height from Figma deckLabels: mockDeckLabels, - width: 31.9375, - height: 5.75, + width: 31.9375 * 16, + height: 5.75 * 16, x: 0, y: 0, }, diff --git a/hardware/opentrons_hardware/drivers/can_bus/can_messenger.py b/hardware/opentrons_hardware/drivers/can_bus/can_messenger.py index c0b49e376bb..69623381d96 100644 --- a/hardware/opentrons_hardware/drivers/can_bus/can_messenger.py +++ b/hardware/opentrons_hardware/drivers/can_bus/can_messenger.py @@ -1,4 +1,5 @@ """Can messenger class.""" + from __future__ import annotations import asyncio from inspect import Traceback @@ -361,7 +362,11 @@ async def _read_task_shield(self) -> None: return except BaseException: log.exception("Exception in read") + await asyncio.sleep(0) continue + else: + log.error("read task finished, this should not happen") + await asyncio.sleep(0) async def _read_task(self) -> None: """Read task.""" diff --git a/package.json b/package.json index 654f12137fc..870fa181506 100755 --- a/package.json +++ b/package.json @@ -47,11 +47,11 @@ "@rollup/plugin-json": "^4.1.0", "@rollup/plugin-node-resolve": "^11.2.1", "@rollup/plugin-replace": "^2.4.2", - "@storybook/addon-actions": "^7.6.16", - "@storybook/addon-essentials": "^7.6.16", - "@storybook/addon-links": "^7.6.16", - "@storybook/react": "^7.6.16", - "@storybook/react-vite": "^7.6.16", + "@storybook/addon-actions": "7.6.17", + "@storybook/addon-essentials": "7.6.17", + "@storybook/addon-links": "7.6.17", + "@storybook/react": "7.6.17", + "@storybook/react-vite": "7.6.17", "@testing-library/jest-dom": "6.4.2", "@testing-library/react": "14.2.1", "@testing-library/user-event": "13.5.0", @@ -140,7 +140,7 @@ "semver": "^7.3.8", "shx": "^0.3.4", "simple-git": "^3.15.1", - "storybook": "^7.6.16", + "storybook": "7.6.17", "storybook-addon-pseudo-states": "2.0.0", "style-loader": "^1.1.3", "stylelint": "^11.0.0", @@ -150,7 +150,7 @@ "terser-webpack-plugin": "^2.3.5", "typescript": "5.3.3", "url-loader": "^2.1.0", - "vite": "5.3.2", + "vite": "5.4.11", "vitest": "2.1.8", "vitest-when": "0.5.0", "wait-on": "^4.0.2", diff --git a/protocol-designer/fixtures/protocol/8/newAdvancedSettingsAndMultiTemp.json b/protocol-designer/fixtures/protocol/8/newAdvancedSettingsAndMultiTemp.json index 9c6d24abaca..8b8d129418f 100644 --- a/protocol-designer/fixtures/protocol/8/newAdvancedSettingsAndMultiTemp.json +++ b/protocol-designer/fixtures/protocol/8/newAdvancedSettingsAndMultiTemp.json @@ -3624,7 +3624,7 @@ "key": "dd1b37d6-eb8c-4616-bc8a-e1f17556234a", "params": { "pipetteId": "21087f15-4c03-4587-8a2b-1ba0b5a501a0", - "volume": 1 + "volume": 10 } }, { diff --git a/protocol-designer/package.json b/protocol-designer/package.json index 8be7d0a965b..51718e773bf 100755 --- a/protocol-designer/package.json +++ b/protocol-designer/package.json @@ -33,12 +33,10 @@ "@typescript-eslint/eslint-plugin": "^6.10.0", "@typescript-eslint/parser": "^6.10.0", "ajv": "6.12.3", - "cookie": "0.3.1", "core-js": "3.2.1", "date-fns": "2.10.0", "file-saver": "2.0.1", "i18next": "^19.8.3", - "immer": "9.0.6", "lodash": "4.17.21", "mixpanel-browser": "2.22.1", "query-string": "6.2.0", diff --git a/protocol-designer/src/assets/localization/en/protocol_steps.json b/protocol-designer/src/assets/localization/en/protocol_steps.json index 2f498904c61..0ed3f34caf8 100644 --- a/protocol-designer/src/assets/localization/en/protocol_steps.json +++ b/protocol-designer/src/assets/localization/en/protocol_steps.json @@ -143,5 +143,6 @@ "volume_per_well": "Volume per well", "well_name": "Well {{wellName}}", "well_order_title": "{{prefix}} well order", - "well_position": "Well position: X {{x}} Y {{y}} Z {{z}} (mm)" + "well_position": "Well position: X {{x}} Y {{y}} Z {{z}} (mm)", + "unknown_module": "Unknown module" } diff --git a/protocol-designer/src/feature-flags/reducers.ts b/protocol-designer/src/feature-flags/reducers.ts index bcffd39c5e7..336014c6691 100644 --- a/protocol-designer/src/feature-flags/reducers.ts +++ b/protocol-designer/src/feature-flags/reducers.ts @@ -31,7 +31,7 @@ const initialFlags: Flags = { process.env.OT_PD_ENABLE_HOT_KEYS_DISPLAY === '1' || true, OT_PD_ENABLE_REACT_SCAN: process.env.OT_PD_ENABLE_REACT_SCAN === '1' || false, OT_PD_ENABLE_LIQUID_CLASSES: - process.env.OT_PD_ENABLE_REACT_SCAN === '1' || false, + process.env.OT_PD_ENABLE_LIQUID_CLASSES === '1' || false, } // @ts-expect-error(sa, 2021-6-10): cannot use string literals as action type // TODO IMMEDIATELY: refactor this to the old fashioned way if we cannot have type safety: https://github.com/redux-utilities/redux-actions/issues/282#issuecomment-595163081 diff --git a/protocol-designer/src/organisms/AnnouncementModal/__tests__/AnnouncementModal.test.tsx b/protocol-designer/src/organisms/AnnouncementModal/__tests__/AnnouncementModal.test.tsx index da4929df54d..34a220d0eae 100644 --- a/protocol-designer/src/organisms/AnnouncementModal/__tests__/AnnouncementModal.test.tsx +++ b/protocol-designer/src/organisms/AnnouncementModal/__tests__/AnnouncementModal.test.tsx @@ -31,7 +31,7 @@ describe('AnnouncementModal', () => { const heading = screen.getByText('mockHeading') expect(heading).toBeVisible() screen.getByText('mockImage') - fireEvent.click(screen.getByRole('button', { name: 'Got It!' })) + fireEvent.click(screen.getByRole('button', { name: 'Close' })) expect(vi.mocked(setLocalStorageItem)).toHaveBeenCalled() expect(heading).not.toBeVisible() }) diff --git a/protocol-designer/src/organisms/AnnouncementModal/index.tsx b/protocol-designer/src/organisms/AnnouncementModal/index.tsx index 1974ef47eb6..db898dd3a9e 100644 --- a/protocol-designer/src/organisms/AnnouncementModal/index.tsx +++ b/protocol-designer/src/organisms/AnnouncementModal/index.tsx @@ -25,7 +25,7 @@ export const AnnouncementModal = ( props: AnnouncementModalProps ): JSX.Element => { const { onClose, isViewReleaseNotes = false } = props - const { t } = useTranslation(['modal', 'button']) + const { i18n, t } = useTranslation(['modal', 'button']) const announcements = useAnnouncements() const { announcementKey, message, heading, image } = announcements[ @@ -40,7 +40,9 @@ export const AnnouncementModal = ( ) const handleClick = (): void => { - if (onClose != null) onClose() + if (onClose != null) { + onClose() + } setLocalStorageItem(localStorageAnnouncementKey, announcementKey) setShowAnnouncementModal(false) } @@ -49,13 +51,18 @@ export const AnnouncementModal = ( <> {showAnnouncementModal && ( + - {t('button:got_it')} + {i18n.format(t('close'), 'capitalize')} } diff --git a/protocol-designer/src/organisms/DefineLiquidsModal/index.tsx b/protocol-designer/src/organisms/DefineLiquidsModal/index.tsx index 3e2e90d8d94..33f98e7c412 100644 --- a/protocol-designer/src/organisms/DefineLiquidsModal/index.tsx +++ b/protocol-designer/src/organisms/DefineLiquidsModal/index.tsx @@ -143,8 +143,8 @@ export function DefineLiquidsModal( saveForm({ name: values.name, displayColor: values.displayColor, - liquidClass: values.liquidClass ? values.liquidClass : null, - description: values.description ? values.description : null, + liquidClass: values.liquidClass !== '' ? values.liquidClass : null, + description: values.description !== '' ? values.description : null, serialize: values.serialize ?? false, }) } diff --git a/protocol-designer/src/organisms/MaterialsListModal/MaterialsListModal.stories.tsx b/protocol-designer/src/organisms/MaterialsListModal/MaterialsListModal.stories.tsx index 36cb4f58efb..21d6a171744 100644 --- a/protocol-designer/src/organisms/MaterialsListModal/MaterialsListModal.stories.tsx +++ b/protocol-designer/src/organisms/MaterialsListModal/MaterialsListModal.stories.tsx @@ -1,11 +1,15 @@ import { I18nextProvider } from 'react-i18next' +import { Provider } from 'react-redux' + import { i18n } from '../../assets/localization' +import { configureStore } from '../../configureStore' import { MaterialsListModal as MaterialsListModalComponent } from '.' import type { Meta, StoryObj } from '@storybook/react' import type { LabwareOnDeck, ModuleOnDeck } from '../../step-forms' import type { FixtureInList } from '.' +const mockStore = configureStore() const mockHardware = [ { id: 'mockHardware', @@ -49,9 +53,11 @@ const meta: Meta = { component: MaterialsListModalComponent, decorators: [ Story => ( - - - + + + + + ), ], } diff --git a/protocol-designer/src/organisms/SlotInformation/SlotInformation.stories.tsx b/protocol-designer/src/organisms/SlotInformation/SlotInformation.stories.tsx index 98d6132ef23..1a748fbc37f 100644 --- a/protocol-designer/src/organisms/SlotInformation/SlotInformation.stories.tsx +++ b/protocol-designer/src/organisms/SlotInformation/SlotInformation.stories.tsx @@ -1,6 +1,7 @@ -import { Flex } from '@opentrons/components' +import { MemoryRouter } from 'react-router-dom' import { I18nextProvider } from 'react-i18next' import { i18n } from '../../assets/localization' +import { Flex } from '@opentrons/components' import { SlotInformation as SlotInformationComponent } from '.' import type { Meta, StoryObj } from '@storybook/react' @@ -37,11 +38,13 @@ const meta: Meta = { }, decorators: [ Story => ( - - - - - + + + + + + + ), ], } diff --git a/protocol-designer/src/pages/Designer/DeckSetup/DeckSetupTools.tsx b/protocol-designer/src/pages/Designer/DeckSetup/DeckSetupTools.tsx index f5b1fe252cd..61b4c73de2f 100644 --- a/protocol-designer/src/pages/Designer/DeckSetup/DeckSetupTools.tsx +++ b/protocol-designer/src/pages/Designer/DeckSetup/DeckSetupTools.tsx @@ -36,8 +36,9 @@ import { createDeckFixture, deleteDeckFixture, } from '../../../step-forms/actions/additionalItems' -import { createModule, deleteModule } from '../../../step-forms/actions' import { getAdditionalEquipment } from '../../../step-forms/selectors' +import { deleteModule } from '../../../step-forms/actions' +import { getSavedStepForms } from '../../../step-forms/selectors' import { getDeckSetupForActiveItem } from '../../../top-selectors/labware-locations' import { createContainer, @@ -54,8 +55,11 @@ import { useBlockingHint } from '../../../organisms/BlockingHintModal/useBlockin import { selectors } from '../../../labware-ingred/selectors' import { useKitchen } from '../../../organisms/Kitchen/hooks' import { getDismissedHints } from '../../../tutorial/selectors' -import { createContainerAboveModule } from '../../../step-forms/actions/thunks' import { LINK_BUTTON_STYLE, NAV_BAR_HEIGHT_REM } from '../../../atoms' +import { + createContainerAboveModule, + createModuleEntityAndChangeForm, +} from '../../../step-forms/actions/thunks' import { ConfirmDeleteStagingAreaModal } from '../../../organisms' import { getSlotInformation } from '../utils' import { ALL_ORDERED_CATEGORIES, FIXTURES, MOAM_MODELS } from './constants' @@ -67,6 +71,13 @@ import type { AddressableAreaName, ModuleModel } from '@opentrons/shared-data' import type { ThunkDispatch } from '../../../types' import type { Fixture } from './constants' +const mapModTypeToStepType: Record = { + heaterShakerModuleType: 'heaterShaker', + magneticModuleType: 'magnet', + temperatureModuleType: 'temperature', + thermocyclerModuleType: 'thermocycler', +} + interface DeckSetupToolsProps { onCloseClick: () => void setHoveredLabware: (defUri: string | null) => void @@ -91,6 +102,7 @@ export function DeckSetupTools(props: DeckSetupToolsProps): JSX.Element | null { const { makeSnackbar } = useKitchen() const selectedSlotInfo = useSelector(selectors.getZoomedInSlotInfo) const robotType = useSelector(getRobotType) + const savedSteps = useSelector(getSavedStepForms) const [showDeleteLabwareModal, setShowDeleteLabwareModal] = useState< ModuleModel | 'clear' | null >(null) @@ -272,7 +284,11 @@ export function DeckSetupTools(props: DeckSetupToolsProps): JSX.Element | null { if ( createdLabwareForSlot != null && (!keepExistingLabware || - createdLabwareForSlot.labwareDefURI !== selectedLabwareDefUri) + createdLabwareForSlot.labwareDefURI !== selectedLabwareDefUri || + // if nested labware changes but labware doesn't, still delete both + (createdLabwareForSlot.labwareDefURI === selectedLabwareDefUri && + createdNestedLabwareForSlot?.labwareDefURI !== + selectedNestedLabwareDefUri)) ) { dispatch(deleteContainer({ labwareId: createdLabwareForSlot.id })) } @@ -332,11 +348,32 @@ export function DeckSetupTools(props: DeckSetupToolsProps): JSX.Element | null { makeSnackbar(t('gripper_required_for_plate_reader') as string) return } + + const moduleSteps = Object.values(savedSteps).filter(step => { + return ( + step.stepType === mapModTypeToStepType[moduleType] && + // only update module steps that match the old moduleId + // to accommodate instances of MoaM + step.moduleId === createdModuleForSlot?.id + ) + }) + + const pauseSteps = Object.values(savedSteps).filter(step => { + return ( + step.stepType === 'pause' && + // only update pause steps that match the old moduleId + // to accommodate instances of MoaM + step.moduleId === createdModuleForSlot?.id + ) + }) + dispatch( - createModule({ + createModuleEntityAndChangeForm({ slot, type: moduleType, model: selectedModuleModel, + moduleSteps, + pauseSteps, }) ) } @@ -364,7 +401,11 @@ export function DeckSetupTools(props: DeckSetupToolsProps): JSX.Element | null { if ( selectedModuleModel != null && selectedLabwareDefUri != null && - createdLabwareForSlot?.labwareDefURI !== selectedLabwareDefUri + (createdLabwareForSlot?.labwareDefURI !== selectedLabwareDefUri || + // if nested labware changes but labware doesn't, still create both both + (createdLabwareForSlot.labwareDefURI === selectedLabwareDefUri && + createdNestedLabwareForSlot?.labwareDefURI !== + selectedNestedLabwareDefUri)) ) { // create adapter + labware on module dispatch( diff --git a/protocol-designer/src/pages/Designer/DeckSetup/LabwareTools.tsx b/protocol-designer/src/pages/Designer/DeckSetup/LabwareTools.tsx index 995b06219d6..fca8de157a9 100644 --- a/protocol-designer/src/pages/Designer/DeckSetup/LabwareTools.tsx +++ b/protocol-designer/src/pages/Designer/DeckSetup/LabwareTools.tsx @@ -438,10 +438,15 @@ export function LabwareTools(props: LabwareToolsProps): JSX.Element { ) } ) - : getLabwareCompatibleWithAdapter( - loadName - ).map(nestedDefUri => { - const nestedDef = defs[nestedDefUri] + : [ + ...getLabwareCompatibleWithAdapter( + loadName + ), + ...Object.keys(customLabwareDefs), + ].map(nestedDefUri => { + const nestedDef = + defs[nestedDefUri] ?? + customLabwareDefs[nestedDefUri] return ( { additionalEquipmentOnDeck: {}, pipettes: {}, }) + vi.mocked(getSavedStepForms).mockReturnValue({}) vi.mocked(getDismissedHints).mockReturnValue([]) vi.mocked(getAdditionalEquipment).mockReturnValue({}) vi.mocked(useKitchen).mockReturnValue({ diff --git a/protocol-designer/src/pages/Designer/ProtocolSteps/StepForm/PipetteFields/utils.ts b/protocol-designer/src/pages/Designer/ProtocolSteps/StepForm/PipetteFields/utils.ts index 9f5cbab9655..5f565eef321 100644 --- a/protocol-designer/src/pages/Designer/ProtocolSteps/StepForm/PipetteFields/utils.ts +++ b/protocol-designer/src/pages/Designer/ProtocolSteps/StepForm/PipetteFields/utils.ts @@ -135,14 +135,21 @@ export function getDisabledPathMap( airGapVolume, }) - if (!withinCapacityForMultiDispense) { + if ( + !withinCapacityForMultiDispense && + values.volume != null && + values.volume !== '' + ) { disabledPathMap = { ...disabledPathMap, multiDispense: t('step_edit_form.field.path.subtitle.volume_too_high'), } } - - if (!withinCapacityForMultiAspirate) { + if ( + !withinCapacityForMultiAspirate && + values.volume != null && + values.volume !== '' + ) { disabledPathMap = { ...disabledPathMap, multiAspirate: t('step_edit_form.field.path.subtitle.volume_too_high'), diff --git a/protocol-designer/src/pages/Designer/ProtocolSteps/StepSummary.tsx b/protocol-designer/src/pages/Designer/ProtocolSteps/StepSummary.tsx index f97d73e469f..a7d4349bad6 100644 --- a/protocol-designer/src/pages/Designer/ProtocolSteps/StepSummary.tsx +++ b/protocol-designer/src/pages/Designer/ProtocolSteps/StepSummary.tsx @@ -11,8 +11,12 @@ import { SPACING, StyledText, Tag, + WRAP, } from '@opentrons/components' -import { getModuleDisplayName } from '@opentrons/shared-data' +import { + WASTE_CHUTE_CUTOUT, + getModuleDisplayName, +} from '@opentrons/shared-data' import { getAdditionalEquipmentEntities, getLabwareEntities, @@ -20,6 +24,8 @@ import { } from '../../../step-forms/selectors' import { getLabwareNicknamesById } from '../../../ui/labware/selectors' import { LINE_CLAMP_TEXT_STYLE } from '../../../atoms' +import { formatTime } from '../utils' + import type { FormData } from '../../../form-types' interface StyledTransProps { @@ -35,10 +41,8 @@ function StyledTrans(props: StyledTransProps): JSX.Element { ) break - case 'magnet': + } + + case 'magnet': { const { moduleId: magneticModuleId, engageHeight, magnetAction, } = currentStep - const magneticModuleDisplayName = getModuleDisplayName( - modules[magneticModuleId].model - ) + const magneticModuleDisplayName = + getModuleDisplayName(modules[magneticModuleId]?.model) ?? unknownModule stepSummaryContent = magnetAction === 'engage' ? ( ) break - case 'thermocycler': + } + + case 'thermocycler': { const { lidIsActive, lidTargetTemp, @@ -215,7 +223,9 @@ export function StepSummary(props: StepSummaryProps): JSX.Element | null { ) break - case 'pause': + } + + case 'pause': { const { moduleId: pauseModuleId, pauseAction, @@ -231,9 +241,8 @@ export function StepSummary(props: StepSummaryProps): JSX.Element | null { ) break case 'untilTemperature': - const pauseModuleDisplayName = getModuleDisplayName( - modules[pauseModuleId].model - ) + const pauseModuleDisplayName = + getModuleDisplayName(modules[pauseModuleId]?.model) ?? unknownModule stepSummaryContent = ( ) break } break - case 'temperature': + } + + case 'temperature': { const { moduleId: tempModuleId, setTemperature, targetTemperature, } = currentStep const isDeactivating = setTemperature === 'false' - const tempModuleDisplayName = getModuleDisplayName( - modules[tempModuleId].model - ) + const tempModuleDisplayName = + getModuleDisplayName(modules[tempModuleId]?.model) ?? unknownModule stepSummaryContent = isDeactivating ? ( ) break - case 'moveLabware': + } + + case 'moveLabware': { const { labware, newLocation, useGripper } = currentStep const labwareName = labwareNicknamesById[labware] let newLocationName = newLocation @@ -285,6 +297,8 @@ export function StepSummary(props: StepSummaryProps): JSX.Element | null { newLocationName = labwareNicknamesById[newLocation] } else if (newLocation === 'offDeck') { newLocationName = t('off_deck') + } else if (newLocation === WASTE_CHUTE_CUTOUT) { + newLocationName = t('shared:wasteChute') } stepSummaryContent = ( ) break - case 'moveLiquid': + } + + case 'moveLiquid': { let moveLiquidType const { aspirate_labware, @@ -353,7 +369,9 @@ export function StepSummary(props: StepSummaryProps): JSX.Element | null { ) break - case 'heaterShaker': + } + + case 'heaterShaker': { const { latchOpen, heaterShakerTimer, @@ -361,9 +379,9 @@ export function StepSummary(props: StepSummaryProps): JSX.Element | null { targetHeaterShakerTemperature, targetSpeed, } = currentStep - const moduleDisplayName = getModuleDisplayName( - modules[heaterShakerModuleId].model - ) + const moduleDisplayName = + getModuleDisplayName(modules[heaterShakerModuleId]?.model) ?? + unknownModule stepSummaryContent = ( @@ -389,7 +407,7 @@ export function StepSummary(props: StepSummaryProps): JSX.Element | null { {heaterShakerTimer ? ( ) : null} ) break + } + default: stepSummaryContent = null } + return stepSummaryContent != null || stepDetails != null ? ( title.replace( /(^[\d\W]*)([a-zA-Z])|(-[a-zA-Z])/g, (match, prefix, firstLetter) => { - if (prefix) { + if (prefix != null) { return `${prefix}${firstLetter.toUpperCase()}` } else { return `${match.charAt(0)}${match.charAt(1).toUpperCase()}` diff --git a/protocol-designer/src/pages/Designer/__tests__/utils.test.ts b/protocol-designer/src/pages/Designer/__tests__/utils.test.ts index 6be91d71b2a..2e22a095b24 100644 --- a/protocol-designer/src/pages/Designer/__tests__/utils.test.ts +++ b/protocol-designer/src/pages/Designer/__tests__/utils.test.ts @@ -7,7 +7,7 @@ import { WASTE_CHUTE_CUTOUT, fixture96Plate, } from '@opentrons/shared-data' -import { getSlotInformation } from '../utils' +import { getSlotInformation, formatTime } from '../utils' import type { LabwareDefinition2 } from '@opentrons/shared-data' import type { AdditionalEquipmentName } from '@opentrons/step-generation' import type { AllTemporalPropertiesForTimelineFrame } from '../../../step-forms' @@ -194,3 +194,21 @@ describe('getSlotInformation', () => { }) }) }) + +describe('formatTime', () => { + it('input is 3:3:3 and output is 03:03:03', () => { + expect(formatTime('3:3:3')).toEqual('03:03:03') + }) + it('input is 3:3 and output is 03:03', () => { + expect(formatTime('3:3')).toEqual('03:03') + }) + it('input is 30:12 and output is 30:12', () => { + expect(formatTime('30:12')).toEqual('30:12') + }) + it('input is 12:23:34 and output is 12:23:34', () => { + expect(formatTime('12:23:34')).toEqual('12:23:34') + }) + it('input is 0:03 and output is 00:03', () => { + expect(formatTime('0:03')).toEqual('00:03') + }) +}) diff --git a/protocol-designer/src/pages/Designer/utils.ts b/protocol-designer/src/pages/Designer/utils.ts index 3110f9d519d..7a9e5008154 100644 --- a/protocol-designer/src/pages/Designer/utils.ts +++ b/protocol-designer/src/pages/Designer/utils.ts @@ -105,3 +105,21 @@ export const getSlotInformation = ( matchingLabwareFor4thColumn: matchingLabware, } } + +export const formatTime = (input: string): string => { + const timeParts = input.split(':') + if (timeParts.length === 3) { + const [hours, minutes, seconds] = timeParts + return [ + hours.toString().padStart(2, '0'), + minutes.toString().padStart(2, '0'), + seconds.toString().padStart(2, '0'), + ].join(':') + } else { + const [minutes, seconds] = timeParts + return [ + minutes.toString().padStart(2, '0'), + seconds.toString().padStart(2, '0'), + ].join(':') + } +} diff --git a/protocol-designer/src/pages/Landing/index.tsx b/protocol-designer/src/pages/Landing/index.tsx index 1e0424c5630..412800c5bc4 100644 --- a/protocol-designer/src/pages/Landing/index.tsx +++ b/protocol-designer/src/pages/Landing/index.tsx @@ -25,7 +25,11 @@ import { toggleNewProtocolModal } from '../../navigation/actions' import { useKitchen } from '../../organisms/Kitchen/hooks' import { getHasOptedIn } from '../../analytics/selectors' import { useAnnouncements } from '../../organisms/AnnouncementModal/announcements' -import { getLocalStorageItem, localStorageAnnouncementKey } from '../../persist' +import { + getLocalStorageItem, + localStorageAnnouncementKey, + setLocalStorageItem, +} from '../../persist' import welcomeImage from '../../assets/images/welcome_page.png' import type { ChangeEvent, ComponentProps } from 'react' @@ -39,7 +43,7 @@ export function Landing(): JSX.Element { const [showAnnouncementModal, setShowAnnouncementModal] = useState( false ) - const { hasOptedIn } = useSelector(getHasOptedIn) + const { hasOptedIn, appVersion } = useSelector(getHasOptedIn) const { bakeToast, eatToast } = useKitchen() const announcements = useAnnouncements() const lastAnnouncement = announcements[announcements.length - 1] @@ -52,7 +56,11 @@ export function Landing(): JSX.Element { hasOptedIn != null useEffect(() => { - if (userHasNotSeenAnnouncement) { + if ( + userHasNotSeenAnnouncement && + appVersion != null && + hasOptedIn != null + ) { const toastId = bakeToast( t('learn_more', { version: process.env.OT_PD_VERSION }) as string, INFO_TOAST, @@ -60,6 +68,9 @@ export function Landing(): JSX.Element { heading: t('updated_protocol_designer'), closeButton: true, linkText: t('view_release_notes'), + onClose: () => { + setLocalStorageItem(localStorageAnnouncementKey, announcementKey) + }, onLinkClick: () => { eatToast(toastId) setShowAnnouncementModal(true) @@ -69,7 +80,7 @@ export function Landing(): JSX.Element { } ) } - }, [userHasNotSeenAnnouncement]) + }, [userHasNotSeenAnnouncement, appVersion, hasOptedIn]) useEffect(() => { if (metadata?.created != null) { diff --git a/protocol-designer/src/pages/ProtocolOverview/InstrumentsInfo.tsx b/protocol-designer/src/pages/ProtocolOverview/InstrumentsInfo.tsx index ee40f77aef4..1ef1a76561f 100644 --- a/protocol-designer/src/pages/ProtocolOverview/InstrumentsInfo.tsx +++ b/protocol-designer/src/pages/ProtocolOverview/InstrumentsInfo.tsx @@ -1,6 +1,7 @@ import { useTranslation } from 'react-i18next' import { + ALIGN_CENTER, Btn, COLORS, DIRECTION_COLUMN, @@ -77,7 +78,7 @@ export function InstrumentsInfo({ return ( - + {t('instruments')} diff --git a/protocol-designer/src/pages/ProtocolOverview/ProtocolMetadata.tsx b/protocol-designer/src/pages/ProtocolOverview/ProtocolMetadata.tsx index 564c99d9f89..c5d85a6047e 100644 --- a/protocol-designer/src/pages/ProtocolOverview/ProtocolMetadata.tsx +++ b/protocol-designer/src/pages/ProtocolOverview/ProtocolMetadata.tsx @@ -1,5 +1,6 @@ import { useTranslation } from 'react-i18next' import { + ALIGN_CENTER, Btn, COLORS, DIRECTION_COLUMN, @@ -36,7 +37,7 @@ export function ProtocolMetadata({ return ( - + {t('protocol_metadata')} diff --git a/protocol-designer/src/step-forms/actions/thunks.ts b/protocol-designer/src/step-forms/actions/thunks.ts index 0a0f5f17227..65079b0fe2d 100644 --- a/protocol-designer/src/step-forms/actions/thunks.ts +++ b/protocol-designer/src/step-forms/actions/thunks.ts @@ -1,12 +1,21 @@ import { createContainer } from '../../labware-ingred/actions' import { getDeckSetupForActiveItem } from '../../top-selectors/labware-locations' +import { uuid } from '../../utils' +import { changeSavedStepForm } from '../../steplist/actions' -import type { DeckSlotId } from '@opentrons/shared-data' +import type { + DeckSlotId, + ModuleModel, + ModuleType, +} from '@opentrons/shared-data' import type { ThunkAction } from '../../types' import type { CreateContainerAction, RenameLabwareAction, } from '../../labware-ingred/actions' +import type { CreateModuleAction } from './modules' +import type { ChangeSavedStepFormAction } from '../../steplist/actions' +import type { FormData } from '../../form-types' export interface CreateContainerAboveModuleArgs { slot: DeckSlotId @@ -37,3 +46,47 @@ export const createContainerAboveModule: ( }) ) } + +interface ModuleAndChangeFormArgs { + slot: DeckSlotId + type: ModuleType + model: ModuleModel + moduleSteps: FormData[] + pauseSteps: FormData[] +} +export const createModuleEntityAndChangeForm: ( + args: ModuleAndChangeFormArgs +) => ThunkAction = args => ( + dispatch, + getState +) => { + const { slot, model, type, moduleSteps, pauseSteps } = args + const moduleId = `${uuid()}:${type}` + + dispatch({ + type: 'CREATE_MODULE', + payload: { slot, model, type, id: moduleId }, + }) + + // if steps are created with the module that has been regenerated, migrate them to use the correct moduleId + moduleSteps.forEach(step => { + dispatch( + changeSavedStepForm({ + stepId: step.id, + update: { + moduleId, + }, + }) + ) + }) + pauseSteps.forEach(step => { + dispatch( + changeSavedStepForm({ + stepId: step.id, + update: { + moduleId, + }, + }) + ) + }) +} diff --git a/protocol-designer/src/steplist/fieldLevel/errors.ts b/protocol-designer/src/steplist/fieldLevel/errors.ts index 7405f097643..892e7f0a11a 100644 --- a/protocol-designer/src/steplist/fieldLevel/errors.ts +++ b/protocol-designer/src/steplist/fieldLevel/errors.ts @@ -34,7 +34,7 @@ export type ErrorChecker = (value: unknown) => string | null export const requiredField: ErrorChecker = (value: unknown) => !value ? FIELD_ERRORS.REQUIRED : null export const isTimeFormat: ErrorChecker = (value: unknown): string | null => { - const timeRegex = new RegExp(/^\d{1,2}:\d{1,2}:\d{1,2}$/g) + const timeRegex = new RegExp(/^\d{1,2}:(?:[0-5]?\d):(?:[0-5]?\d)$/g) return (typeof value === 'string' && timeRegex.test(value)) || !value ? null : FIELD_ERRORS.BAD_TIME_HMS @@ -42,7 +42,7 @@ export const isTimeFormat: ErrorChecker = (value: unknown): string | null => { export const isTimeFormatMinutesSeconds: ErrorChecker = ( value: unknown ): string | null => { - const timeRegex = new RegExp(/^\d{1,2}:\d{1,2}$/g) + const timeRegex = new RegExp(/^\d+:[0-5]?\d$/g) return (typeof value === 'string' && timeRegex.test(value)) || !value ? null : FIELD_ERRORS.BAD_TIME_MS diff --git a/robot-server/robot_server/maintenance_runs/router/labware_router.py b/robot-server/robot_server/maintenance_runs/router/labware_router.py index 100fafe910a..53dce4ae6eb 100644 --- a/robot-server/robot_server/maintenance_runs/router/labware_router.py +++ b/robot-server/robot_server/maintenance_runs/router/labware_router.py @@ -3,10 +3,11 @@ import logging from fastapi import Depends, status + +from opentrons_shared_data.labware.labware_definition import LabwareDefinition from server_utils.fastapi_utils.light_router import LightRouter from opentrons.protocol_engine import LabwareOffsetCreate, LabwareOffset -from opentrons.protocols.models import LabwareDefinition from robot_server.errors.error_responses import ErrorBody from robot_server.service.json_api import RequestModel, SimpleBody, PydanticResponse diff --git a/robot-server/robot_server/persistence/tables/schema_2.py b/robot-server/robot_server/persistence/tables/schema_2.py index 607cb8062cb..ccf389332bd 100644 --- a/robot-server/robot_server/persistence/tables/schema_2.py +++ b/robot-server/robot_server/persistence/tables/schema_2.py @@ -62,7 +62,6 @@ sqlalchemy.Column( "completed_analysis", # Stores a pickled dict. See CompletedAnalysisStore. - # TODO(mm, 2023-08-30): Remove this. See https://opentrons.atlassian.net/browse/RSS-98. sqlalchemy.LargeBinary, nullable=False, ), diff --git a/robot-server/robot_server/protocols/analysis_models.py b/robot-server/robot_server/protocols/analysis_models.py index f4b5c54fec8..522c065c5ad 100644 --- a/robot-server/robot_server/protocols/analysis_models.py +++ b/robot-server/robot_server/protocols/analysis_models.py @@ -141,9 +141,9 @@ class CompletedAnalysis(BaseModel): # Fields that should match local analysis: robotType: Optional[RobotType] = Field( - # robotType is deliberately typed as a Literal instead of an Enum. - # It's a bad idea at the moment to store enums in robot-server's database. - # https://opentrons.atlassian.net/browse/RSS-98 + # robotType was typed as a Literal instead of an Enum because it was a bad idea + # at the time to store enums in robot-server's database + # (https://opentrons.atlassian.net/browse/RSS-98). default=None, # default=None to fit objects that were stored before this field existed. description=( "The type of robot that this protocol can run on." diff --git a/robot-server/robot_server/runs/router/labware_router.py b/robot-server/robot_server/runs/router/labware_router.py index 06c16f8b71a..f9264da51e6 100644 --- a/robot-server/robot_server/runs/router/labware_router.py +++ b/robot-server/robot_server/runs/router/labware_router.py @@ -5,14 +5,11 @@ from fastapi import Depends, status -from opentrons_shared_data.labware.labware_definition import ( - LabwareDefinition as SD_LabwareDefinition, -) +from opentrons_shared_data.labware.labware_definition import LabwareDefinition from server_utils.fastapi_utils.light_router import LightRouter from opentrons.protocol_engine import LabwareOffsetCreate, LabwareOffset -from opentrons.protocols.models import LabwareDefinition from robot_server.errors.error_responses import ErrorBody from robot_server.service.json_api import ( @@ -136,14 +133,14 @@ async def add_labware_definition( " Repeated definitions will be deduplicated." ), responses={ - status.HTTP_200_OK: {"model": SimpleBody[list[SD_LabwareDefinition]]}, + status.HTTP_200_OK: {"model": SimpleBody[list[LabwareDefinition]]}, status.HTTP_409_CONFLICT: {"model": ErrorBody[RunStopped]}, }, ) async def get_run_loaded_labware_definitions( runId: str, run_data_manager: Annotated[RunDataManager, Depends(get_run_data_manager)], -) -> PydanticResponse[SimpleBody[list[SD_LabwareDefinition]]]: +) -> PydanticResponse[SimpleBody[list[LabwareDefinition]]]: """Get a run's loaded labware definition by the run ID. Args: diff --git a/robot-server/tests/deck_configuration/test_validation.py b/robot-server/tests/deck_configuration/test_validation.py index 3f8de00a60b..9d86c26d622 100644 --- a/robot-server/tests/deck_configuration/test_validation.py +++ b/robot-server/tests/deck_configuration/test_validation.py @@ -228,6 +228,9 @@ def test_unrecognized_cutout_fixture() -> None: "magneticBlockV1", "absorbanceReaderV1", "stagingAreaSlotWithMagneticBlockV1", + "flexStackerV1", + "flexStackerV1WithWasteChuteRightAdapterCovered", + "flexStackerV1WithWasteChuteRightAdapterNoCover", ] ), ) diff --git a/robot-server/tests/maintenance_runs/router/test_labware_router.py b/robot-server/tests/maintenance_runs/router/test_labware_router.py index d23204aa2d2..2b03b13c9e8 100644 --- a/robot-server/tests/maintenance_runs/router/test_labware_router.py +++ b/robot-server/tests/maintenance_runs/router/test_labware_router.py @@ -4,10 +4,10 @@ from decoy import Decoy from opentrons_shared_data.labware.types import LabwareDefinition as LabwareDefDict +from opentrons_shared_data.labware.labware_definition import LabwareDefinition from opentrons.types import DeckSlotName from opentrons.protocol_engine import EngineStatus, types as pe_types -from opentrons.protocols.models import LabwareDefinition from robot_server.service.json_api import RequestModel, SimpleBody from robot_server.maintenance_runs.maintenance_run_models import ( diff --git a/robot-server/tests/runs/router/test_labware_router.py b/robot-server/tests/runs/router/test_labware_router.py index 25f80048df6..bf55021a6ad 100644 --- a/robot-server/tests/runs/router/test_labware_router.py +++ b/robot-server/tests/runs/router/test_labware_router.py @@ -5,10 +5,10 @@ from decoy import Decoy from opentrons_shared_data.labware.types import LabwareDefinition as LabwareDefDict +from opentrons_shared_data.labware.labware_definition import LabwareDefinition from opentrons.types import DeckSlotName from opentrons.protocol_engine import EngineStatus, types as pe_types -from opentrons.protocols.models import LabwareDefinition from robot_server.errors.error_responses import ApiError from robot_server.service.json_api import RequestModel, SimpleBody diff --git a/shared-data/deck/definitions/5/ot3_standard.json b/shared-data/deck/definitions/5/ot3_standard.json index fe47adc0a3c..38cb0104352 100644 --- a/shared-data/deck/definitions/5/ot3_standard.json +++ b/shared-data/deck/definitions/5/ot3_standard.json @@ -760,6 +760,50 @@ "zDimension": 0 }, "displayName": "Absorbance Reader Lid Dock in A4" + }, + { + "id": "flexStackerV1D4", + "areaType": "flexStacker", + "offsetFromCutoutFixture": [161.0, 0.0, 31.0], + "boundingBox": { + "xDimension": 128.0, + "yDimension": 86.0, + "zDimension": 0 + }, + "displayName": "Flex Stacker in D4" + }, + { + "id": "flexStackerV1C4", + "areaType": "flexStacker", + "offsetFromCutoutFixture": [161.0, 0.0, 31.0], + "boundingBox": { + "xDimension": 128.0, + "yDimension": 86.0, + "zDimension": 0 + }, + "displayName": "Flex Stacker in C4" + }, + { + "id": "flexStackerV1B4", + "areaType": "flexStacker", + "offsetFromCutoutFixture": [161.0, 0.0, 31.0], + "boundingBox": { + "xDimension": 128.0, + "yDimension": 86.0, + "zDimension": 0 + }, + "displayName": "Flex Stacker in B4" + }, + { + "id": "flexStackerV1A4", + "areaType": "flexStacker", + "offsetFromCutoutFixture": [161.0, 0.0, 31.0], + "boundingBox": { + "xDimension": 128.0, + "yDimension": 86.0, + "zDimension": 0 + }, + "displayName": "Flex Stacker in A4" } ], "cutouts": [ @@ -973,6 +1017,34 @@ "fixtureGroup": {}, "height": 124.5 }, + { + "id": "flexStackerV1WithWasteChuteRightAdapterCovered", + "expectOpentronsModuleSerialNumber": true, + "mayMountTo": ["cutoutD3"], + "displayName": "Flex Stacker With Waste Chute Adapter for 96 Channel Pipette or Gripper", + "providesAddressableAreas": { + "cutoutD3": ["1ChannelWasteChute", "8ChannelWasteChute", "D4"] + }, + "fixtureGroup": {}, + "height": 124.5 + }, + { + "id": "flexStackerV1WithWasteChuteRightAdapterNoCover", + "expectOpentronsModuleSerialNumber": true, + "mayMountTo": ["cutoutD3"], + "displayName": "Flex Stacker With Waste Chute Adapter", + "providesAddressableAreas": { + "cutoutD3": [ + "1ChannelWasteChute", + "8ChannelWasteChute", + "96ChannelWasteChute", + "gripperWasteChute", + "flexStackerV1D4" + ] + }, + "fixtureGroup": {}, + "height": 124.5 + }, { "id": "thermocyclerModuleV2Rear", "expectOpentronsModuleSerialNumber": true, @@ -1125,6 +1197,20 @@ }, "fixtureGroup": {}, "height": 10.65 + }, + { + "id": "flexStackerV1", + "expectOpentronsModuleSerialNumber": true, + "mayMountTo": ["cutoutD3", "cutoutC3", "cutoutB3", "cutoutA3"], + "displayName": "Slot With a Flex Stacker", + "providesAddressableAreas": { + "cutoutD3": ["flexStackerV1D4", "D3"], + "cutoutC3": ["flexStackerV1C4", "C3"], + "cutoutB3": ["flexStackerV1B4", "B3"], + "cutoutA3": ["flexStackerV1A4", "A3"] + }, + "fixtureGroup": {}, + "height": 10.65 } ], "gripperOffsets": { diff --git a/shared-data/deck/schemas/5.json b/shared-data/deck/schemas/5.json index 54e2f74b9bc..1db1a2de74f 100644 --- a/shared-data/deck/schemas/5.json +++ b/shared-data/deck/schemas/5.json @@ -142,7 +142,13 @@ "movableTrash", "fixedTrash", "wasteChute", - "lidDock" + "lidDock", + "heaterShaker", + "magneticBlock", + "temperatureModule", + "thermocycler", + "absorbanceReader", + "flexStacker" ] }, "offsetFromCutoutFixture": { diff --git a/shared-data/deck/types/schemaV5.ts b/shared-data/deck/types/schemaV5.ts index acd11fbb8be..7c69c650e80 100644 --- a/shared-data/deck/types/schemaV5.ts +++ b/shared-data/deck/types/schemaV5.ts @@ -64,6 +64,10 @@ export type FlexAddressableAreaName = | 'absorbanceReaderV1LidDockB4' | 'absorbanceReaderV1LidDockC4' | 'absorbanceReaderV1LidDockD4' + | 'flexStackerV1A4' + | 'flexStackerV1B4' + | 'flexStackerV1C4' + | 'flexStackerV1D4' export type OT2AddressableAreaName = | '1' @@ -126,6 +130,8 @@ export type WasteChuteCutoutFixtureId = | 'wasteChuteRightAdapterNoCover' | 'stagingAreaSlotWithWasteChuteRightAdapterCovered' | 'stagingAreaSlotWithWasteChuteRightAdapterNoCover' + | 'flexStackerV1WithWasteChuteRightAdapterCovered' + | 'flexStackerV1WithWasteChuteRightAdapterNoCover' export type FlexModuleCutoutFixtureId = | 'heaterShakerModuleV1' @@ -135,6 +141,7 @@ export type FlexModuleCutoutFixtureId = | 'thermocyclerModuleV2Rear' | 'thermocyclerModuleV2Front' | 'absorbanceReaderV1' + | 'flexStackerV1' export type OT2SingleStandardSlot = 'singleStandardSlot' diff --git a/shared-data/labware/definitions/3/agilent_1_reservoir_290ml/2.json b/shared-data/labware/definitions/3/agilent_1_reservoir_290ml/2.json index 4a06fc94f97..f9bf94127ab 100644 --- a/shared-data/labware/definitions/3/agilent_1_reservoir_290ml/2.json +++ b/shared-data/labware/definitions/3/agilent_1_reservoir_290ml/2.json @@ -57,22 +57,22 @@ "sections": [ { "shape": "cuboidal", - "topXDimension": 107.25, + "topXDimension": 106.79, "topYDimension": 8, "bottomXDimension": 101.25, "bottomYDimension": 1.66, "topHeight": 2, - "bottomHeight": 8, + "bottomHeight": 0, "yCount": 8 }, { "shape": "cuboidal", "topXDimension": 107.5, "topYDimension": 71.25, - "bottomXDimension": 107.25, + "bottomXDimension": 106.79, "bottomYDimension": 71.0, - "topHeight": 39.22, - "bottomHeight": 2 + "topHeight": 39.23, + "bottomHeight": 2.0 } ] } diff --git a/shared-data/labware/definitions/3/appliedbiosystemsmicroamp_384_wellplate_40ul/2.json b/shared-data/labware/definitions/3/appliedbiosystemsmicroamp_384_wellplate_40ul/2.json index a6954ac9d06..d47afca68c4 100644 --- a/shared-data/labware/definitions/3/appliedbiosystemsmicroamp_384_wellplate_40ul/2.json +++ b/shared-data/labware/definitions/3/appliedbiosystemsmicroamp_384_wellplate_40ul/2.json @@ -4712,8 +4712,8 @@ }, { "shape": "conical", - "bottomDiameter": 1.4, "topDiameter": 3.17, + "bottomDiameter": 1.4, "topHeight": 5.77, "bottomHeight": 0.34 }, diff --git a/shared-data/labware/definitions/3/biorad_96_wellplate_200ul_pcr/3.json b/shared-data/labware/definitions/3/biorad_96_wellplate_200ul_pcr/3.json index 61f780b9bfd..24f0656db6b 100644 --- a/shared-data/labware/definitions/3/biorad_96_wellplate_200ul_pcr/3.json +++ b/shared-data/labware/definitions/3/biorad_96_wellplate_200ul_pcr/3.json @@ -38,9 +38,9 @@ "gripHeightFromLabwareBottom": 10.14, "wells": { "H1": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 14.38, "y": 11.24, @@ -48,9 +48,9 @@ "geometryDefinitionId": "conicalWell" }, "G1": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 14.38, "y": 20.24, @@ -58,9 +58,9 @@ "geometryDefinitionId": "conicalWell" }, "F1": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 14.38, "y": 29.24, @@ -68,9 +68,9 @@ "geometryDefinitionId": "conicalWell" }, "E1": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 14.38, "y": 38.24, @@ -78,9 +78,9 @@ "geometryDefinitionId": "conicalWell" }, "D1": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 14.38, "y": 47.24, @@ -88,9 +88,9 @@ "geometryDefinitionId": "conicalWell" }, "C1": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 14.38, "y": 56.24, @@ -98,9 +98,9 @@ "geometryDefinitionId": "conicalWell" }, "B1": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 14.38, "y": 65.24, @@ -108,9 +108,9 @@ "geometryDefinitionId": "conicalWell" }, "A1": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 14.38, "y": 74.24, @@ -118,9 +118,9 @@ "geometryDefinitionId": "conicalWell" }, "H2": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 23.38, "y": 11.24, @@ -128,9 +128,9 @@ "geometryDefinitionId": "conicalWell" }, "G2": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 23.38, "y": 20.24, @@ -138,9 +138,9 @@ "geometryDefinitionId": "conicalWell" }, "F2": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 23.38, "y": 29.24, @@ -148,9 +148,9 @@ "geometryDefinitionId": "conicalWell" }, "E2": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 23.38, "y": 38.24, @@ -158,9 +158,9 @@ "geometryDefinitionId": "conicalWell" }, "D2": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 23.38, "y": 47.24, @@ -168,9 +168,9 @@ "geometryDefinitionId": "conicalWell" }, "C2": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 23.38, "y": 56.24, @@ -178,9 +178,9 @@ "geometryDefinitionId": "conicalWell" }, "B2": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 23.38, "y": 65.24, @@ -188,9 +188,9 @@ "geometryDefinitionId": "conicalWell" }, "A2": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 23.38, "y": 74.24, @@ -198,9 +198,9 @@ "geometryDefinitionId": "conicalWell" }, "H3": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 32.38, "y": 11.24, @@ -208,9 +208,9 @@ "geometryDefinitionId": "conicalWell" }, "G3": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 32.38, "y": 20.24, @@ -218,9 +218,9 @@ "geometryDefinitionId": "conicalWell" }, "F3": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 32.38, "y": 29.24, @@ -228,9 +228,9 @@ "geometryDefinitionId": "conicalWell" }, "E3": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 32.38, "y": 38.24, @@ -238,9 +238,9 @@ "geometryDefinitionId": "conicalWell" }, "D3": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 32.38, "y": 47.24, @@ -248,9 +248,9 @@ "geometryDefinitionId": "conicalWell" }, "C3": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 32.38, "y": 56.24, @@ -258,9 +258,9 @@ "geometryDefinitionId": "conicalWell" }, "B3": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 32.38, "y": 65.24, @@ -268,9 +268,9 @@ "geometryDefinitionId": "conicalWell" }, "A3": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 32.38, "y": 74.24, @@ -278,9 +278,9 @@ "geometryDefinitionId": "conicalWell" }, "H4": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 41.38, "y": 11.24, @@ -288,9 +288,9 @@ "geometryDefinitionId": "conicalWell" }, "G4": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 41.38, "y": 20.24, @@ -298,9 +298,9 @@ "geometryDefinitionId": "conicalWell" }, "F4": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 41.38, "y": 29.24, @@ -308,9 +308,9 @@ "geometryDefinitionId": "conicalWell" }, "E4": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 41.38, "y": 38.24, @@ -318,9 +318,9 @@ "geometryDefinitionId": "conicalWell" }, "D4": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 41.38, "y": 47.24, @@ -328,9 +328,9 @@ "geometryDefinitionId": "conicalWell" }, "C4": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 41.38, "y": 56.24, @@ -338,9 +338,9 @@ "geometryDefinitionId": "conicalWell" }, "B4": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 41.38, "y": 65.24, @@ -348,9 +348,9 @@ "geometryDefinitionId": "conicalWell" }, "A4": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 41.38, "y": 74.24, @@ -358,9 +358,9 @@ "geometryDefinitionId": "conicalWell" }, "H5": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 50.38, "y": 11.24, @@ -368,9 +368,9 @@ "geometryDefinitionId": "conicalWell" }, "G5": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 50.38, "y": 20.24, @@ -378,9 +378,9 @@ "geometryDefinitionId": "conicalWell" }, "F5": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 50.38, "y": 29.24, @@ -388,9 +388,9 @@ "geometryDefinitionId": "conicalWell" }, "E5": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 50.38, "y": 38.24, @@ -398,9 +398,9 @@ "geometryDefinitionId": "conicalWell" }, "D5": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 50.38, "y": 47.24, @@ -408,9 +408,9 @@ "geometryDefinitionId": "conicalWell" }, "C5": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 50.38, "y": 56.24, @@ -418,9 +418,9 @@ "geometryDefinitionId": "conicalWell" }, "B5": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 50.38, "y": 65.24, @@ -428,9 +428,9 @@ "geometryDefinitionId": "conicalWell" }, "A5": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 50.38, "y": 74.24, @@ -438,9 +438,9 @@ "geometryDefinitionId": "conicalWell" }, "H6": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 59.38, "y": 11.24, @@ -448,9 +448,9 @@ "geometryDefinitionId": "conicalWell" }, "G6": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 59.38, "y": 20.24, @@ -458,9 +458,9 @@ "geometryDefinitionId": "conicalWell" }, "F6": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 59.38, "y": 29.24, @@ -468,9 +468,9 @@ "geometryDefinitionId": "conicalWell" }, "E6": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 59.38, "y": 38.24, @@ -478,9 +478,9 @@ "geometryDefinitionId": "conicalWell" }, "D6": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 59.38, "y": 47.24, @@ -488,9 +488,9 @@ "geometryDefinitionId": "conicalWell" }, "C6": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 59.38, "y": 56.24, @@ -498,9 +498,9 @@ "geometryDefinitionId": "conicalWell" }, "B6": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 59.38, "y": 65.24, @@ -508,9 +508,9 @@ "geometryDefinitionId": "conicalWell" }, "A6": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 59.38, "y": 74.24, @@ -518,9 +518,9 @@ "geometryDefinitionId": "conicalWell" }, "H7": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 68.38, "y": 11.24, @@ -528,9 +528,9 @@ "geometryDefinitionId": "conicalWell" }, "G7": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 68.38, "y": 20.24, @@ -538,9 +538,9 @@ "geometryDefinitionId": "conicalWell" }, "F7": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 68.38, "y": 29.24, @@ -548,9 +548,9 @@ "geometryDefinitionId": "conicalWell" }, "E7": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 68.38, "y": 38.24, @@ -558,9 +558,9 @@ "geometryDefinitionId": "conicalWell" }, "D7": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 68.38, "y": 47.24, @@ -568,9 +568,9 @@ "geometryDefinitionId": "conicalWell" }, "C7": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 68.38, "y": 56.24, @@ -578,9 +578,9 @@ "geometryDefinitionId": "conicalWell" }, "B7": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 68.38, "y": 65.24, @@ -588,9 +588,9 @@ "geometryDefinitionId": "conicalWell" }, "A7": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 68.38, "y": 74.24, @@ -598,9 +598,9 @@ "geometryDefinitionId": "conicalWell" }, "H8": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 77.38, "y": 11.24, @@ -608,9 +608,9 @@ "geometryDefinitionId": "conicalWell" }, "G8": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 77.38, "y": 20.24, @@ -618,9 +618,9 @@ "geometryDefinitionId": "conicalWell" }, "F8": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 77.38, "y": 29.24, @@ -628,9 +628,9 @@ "geometryDefinitionId": "conicalWell" }, "E8": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 77.38, "y": 38.24, @@ -638,9 +638,9 @@ "geometryDefinitionId": "conicalWell" }, "D8": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 77.38, "y": 47.24, @@ -648,9 +648,9 @@ "geometryDefinitionId": "conicalWell" }, "C8": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 77.38, "y": 56.24, @@ -658,9 +658,9 @@ "geometryDefinitionId": "conicalWell" }, "B8": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 77.38, "y": 65.24, @@ -668,9 +668,9 @@ "geometryDefinitionId": "conicalWell" }, "A8": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 77.38, "y": 74.24, @@ -678,9 +678,9 @@ "geometryDefinitionId": "conicalWell" }, "H9": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 86.38, "y": 11.24, @@ -688,9 +688,9 @@ "geometryDefinitionId": "conicalWell" }, "G9": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 86.38, "y": 20.24, @@ -698,9 +698,9 @@ "geometryDefinitionId": "conicalWell" }, "F9": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 86.38, "y": 29.24, @@ -708,9 +708,9 @@ "geometryDefinitionId": "conicalWell" }, "E9": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 86.38, "y": 38.24, @@ -718,9 +718,9 @@ "geometryDefinitionId": "conicalWell" }, "D9": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 86.38, "y": 47.24, @@ -728,9 +728,9 @@ "geometryDefinitionId": "conicalWell" }, "C9": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 86.38, "y": 56.24, @@ -738,9 +738,9 @@ "geometryDefinitionId": "conicalWell" }, "B9": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 86.38, "y": 65.24, @@ -748,9 +748,9 @@ "geometryDefinitionId": "conicalWell" }, "A9": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 86.38, "y": 74.24, @@ -758,9 +758,9 @@ "geometryDefinitionId": "conicalWell" }, "H10": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 95.38, "y": 11.24, @@ -768,9 +768,9 @@ "geometryDefinitionId": "conicalWell" }, "G10": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 95.38, "y": 20.24, @@ -778,9 +778,9 @@ "geometryDefinitionId": "conicalWell" }, "F10": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 95.38, "y": 29.24, @@ -788,9 +788,9 @@ "geometryDefinitionId": "conicalWell" }, "E10": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 95.38, "y": 38.24, @@ -798,9 +798,9 @@ "geometryDefinitionId": "conicalWell" }, "D10": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 95.38, "y": 47.24, @@ -808,9 +808,9 @@ "geometryDefinitionId": "conicalWell" }, "C10": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 95.38, "y": 56.24, @@ -818,9 +818,9 @@ "geometryDefinitionId": "conicalWell" }, "B10": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 95.38, "y": 65.24, @@ -828,9 +828,9 @@ "geometryDefinitionId": "conicalWell" }, "A10": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 95.38, "y": 74.24, @@ -838,9 +838,9 @@ "geometryDefinitionId": "conicalWell" }, "H11": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 104.38, "y": 11.24, @@ -848,9 +848,9 @@ "geometryDefinitionId": "conicalWell" }, "G11": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 104.38, "y": 20.24, @@ -858,9 +858,9 @@ "geometryDefinitionId": "conicalWell" }, "F11": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 104.38, "y": 29.24, @@ -868,9 +868,9 @@ "geometryDefinitionId": "conicalWell" }, "E11": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 104.38, "y": 38.24, @@ -878,9 +878,9 @@ "geometryDefinitionId": "conicalWell" }, "D11": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 104.38, "y": 47.24, @@ -888,9 +888,9 @@ "geometryDefinitionId": "conicalWell" }, "C11": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 104.38, "y": 56.24, @@ -898,9 +898,9 @@ "geometryDefinitionId": "conicalWell" }, "B11": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 104.38, "y": 65.24, @@ -908,9 +908,9 @@ "geometryDefinitionId": "conicalWell" }, "A11": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 104.38, "y": 74.24, @@ -918,9 +918,9 @@ "geometryDefinitionId": "conicalWell" }, "H12": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 113.38, "y": 11.24, @@ -928,9 +928,9 @@ "geometryDefinitionId": "conicalWell" }, "G12": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 113.38, "y": 20.24, @@ -938,9 +938,9 @@ "geometryDefinitionId": "conicalWell" }, "F12": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 113.38, "y": 29.24, @@ -948,9 +948,9 @@ "geometryDefinitionId": "conicalWell" }, "E12": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 113.38, "y": 38.24, @@ -958,9 +958,9 @@ "geometryDefinitionId": "conicalWell" }, "D12": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 113.38, "y": 47.24, @@ -968,9 +968,9 @@ "geometryDefinitionId": "conicalWell" }, "C12": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 113.38, "y": 56.24, @@ -978,9 +978,9 @@ "geometryDefinitionId": "conicalWell" }, "B12": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 113.38, "y": 65.24, @@ -988,9 +988,9 @@ "geometryDefinitionId": "conicalWell" }, "A12": { - "depth": 14.81, + "depth": 14.57, "shape": "circular", - "diameter": 5.46, + "diameter": 5.44, "totalLiquidVolume": 200, "x": 113.38, "y": 74.24, @@ -1150,22 +1150,22 @@ }, { "shape": "conical", + "topDiameter": 3.0, "bottomDiameter": 2.81, - "topDiameter": 3, "topHeight": 1.87, "bottomHeight": 1.21 }, { "shape": "conical", - "bottomDiameter": 3, "topDiameter": 4.98, + "bottomDiameter": 3, "topHeight": 8.58, "bottomHeight": 1.87 }, { "shape": "conical", - "bottomDiameter": 3, "topDiameter": 5.44, + "bottomDiameter": 4.98, "topHeight": 10.14, "bottomHeight": 8.58 }, diff --git a/shared-data/labware/definitions/3/corning_12_wellplate_6.9ml_flat/3.json b/shared-data/labware/definitions/3/corning_12_wellplate_6.9ml_flat/3.json index f51bce0859c..3a0001ef016 100644 --- a/shared-data/labware/definitions/3/corning_12_wellplate_6.9ml_flat/3.json +++ b/shared-data/labware/definitions/3/corning_12_wellplate_6.9ml_flat/3.json @@ -31,7 +31,7 @@ "wells": { "C1": { "shape": "circular", - "depth": 17.53, + "depth": 17.399, "diameter": 22.73, "totalLiquidVolume": 6900, "x": 24.94, @@ -41,7 +41,7 @@ }, "B1": { "shape": "circular", - "depth": 17.53, + "depth": 17.399, "diameter": 22.73, "totalLiquidVolume": 6900, "x": 24.94, @@ -51,7 +51,7 @@ }, "A1": { "shape": "circular", - "depth": 17.53, + "depth": 17.399, "diameter": 22.73, "totalLiquidVolume": 6900, "x": 24.94, @@ -61,7 +61,7 @@ }, "C2": { "shape": "circular", - "depth": 17.53, + "depth": 17.399, "diameter": 22.73, "totalLiquidVolume": 6900, "x": 50.95, @@ -71,7 +71,7 @@ }, "B2": { "shape": "circular", - "depth": 17.53, + "depth": 17.399, "diameter": 22.73, "totalLiquidVolume": 6900, "x": 50.95, @@ -81,7 +81,7 @@ }, "A2": { "shape": "circular", - "depth": 17.53, + "depth": 17.399, "diameter": 22.73, "totalLiquidVolume": 6900, "x": 50.95, @@ -91,7 +91,7 @@ }, "C3": { "shape": "circular", - "depth": 17.53, + "depth": 17.399, "diameter": 22.73, "totalLiquidVolume": 6900, "x": 76.96, @@ -101,7 +101,7 @@ }, "B3": { "shape": "circular", - "depth": 17.53, + "depth": 17.399, "diameter": 22.73, "totalLiquidVolume": 6900, "x": 76.96, @@ -111,7 +111,7 @@ }, "A3": { "shape": "circular", - "depth": 17.53, + "depth": 17.399, "diameter": 22.73, "totalLiquidVolume": 6900, "x": 76.96, @@ -121,7 +121,7 @@ }, "C4": { "shape": "circular", - "depth": 17.53, + "depth": 17.399, "diameter": 22.73, "totalLiquidVolume": 6900, "x": 102.97, @@ -131,7 +131,7 @@ }, "B4": { "shape": "circular", - "depth": 17.53, + "depth": 17.399, "diameter": 22.73, "totalLiquidVolume": 6900, "x": 102.97, @@ -141,7 +141,7 @@ }, "A4": { "shape": "circular", - "depth": 17.53, + "depth": 17.399, "diameter": 22.73, "totalLiquidVolume": 6900, "x": 102.97, diff --git a/shared-data/labware/definitions/3/corning_384_wellplate_112ul_flat/3.json b/shared-data/labware/definitions/3/corning_384_wellplate_112ul_flat/3.json index ca3758f2339..69a3b324063 100644 --- a/shared-data/labware/definitions/3/corning_384_wellplate_112ul_flat/3.json +++ b/shared-data/labware/definitions/3/corning_384_wellplate_112ul_flat/3.json @@ -457,7 +457,7 @@ "gripHeightFromLabwareBottom": 12.4, "wells": { "P1": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -465,10 +465,10 @@ "x": 12.12, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O1": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -476,10 +476,10 @@ "x": 12.12, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N1": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -487,10 +487,10 @@ "x": 12.12, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M1": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -498,10 +498,10 @@ "x": 12.12, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L1": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -509,10 +509,10 @@ "x": 12.12, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K1": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -520,10 +520,10 @@ "x": 12.12, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J1": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -531,10 +531,10 @@ "x": 12.12, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I1": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -542,10 +542,10 @@ "x": 12.12, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H1": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -553,10 +553,10 @@ "x": 12.12, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G1": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -564,10 +564,10 @@ "x": 12.12, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F1": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -575,10 +575,10 @@ "x": 12.12, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E1": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -586,10 +586,10 @@ "x": 12.12, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D1": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -597,10 +597,10 @@ "x": 12.12, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C1": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -608,10 +608,10 @@ "x": 12.12, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B1": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -619,10 +619,10 @@ "x": 12.12, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A1": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -630,10 +630,10 @@ "x": 12.12, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P2": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -641,10 +641,10 @@ "x": 16.62, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O2": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -652,10 +652,10 @@ "x": 16.62, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N2": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -663,10 +663,10 @@ "x": 16.62, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M2": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -674,10 +674,10 @@ "x": 16.62, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L2": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -685,10 +685,10 @@ "x": 16.62, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K2": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -696,10 +696,10 @@ "x": 16.62, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J2": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -707,10 +707,10 @@ "x": 16.62, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I2": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -718,10 +718,10 @@ "x": 16.62, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H2": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -729,10 +729,10 @@ "x": 16.62, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G2": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -740,10 +740,10 @@ "x": 16.62, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F2": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -751,10 +751,10 @@ "x": 16.62, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E2": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -762,10 +762,10 @@ "x": 16.62, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D2": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -773,10 +773,10 @@ "x": 16.62, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C2": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -784,10 +784,10 @@ "x": 16.62, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B2": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -795,10 +795,10 @@ "x": 16.62, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A2": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -806,10 +806,10 @@ "x": 16.62, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P3": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -817,10 +817,10 @@ "x": 21.12, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O3": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -828,10 +828,10 @@ "x": 21.12, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N3": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -839,10 +839,10 @@ "x": 21.12, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M3": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -850,10 +850,10 @@ "x": 21.12, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L3": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -861,10 +861,10 @@ "x": 21.12, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K3": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -872,10 +872,10 @@ "x": 21.12, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J3": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -883,10 +883,10 @@ "x": 21.12, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I3": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -894,10 +894,10 @@ "x": 21.12, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H3": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -905,10 +905,10 @@ "x": 21.12, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G3": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -916,10 +916,10 @@ "x": 21.12, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F3": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -927,10 +927,10 @@ "x": 21.12, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E3": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -938,10 +938,10 @@ "x": 21.12, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D3": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -949,10 +949,10 @@ "x": 21.12, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C3": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -960,10 +960,10 @@ "x": 21.12, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B3": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -971,10 +971,10 @@ "x": 21.12, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A3": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -982,10 +982,10 @@ "x": 21.12, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P4": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -993,10 +993,10 @@ "x": 25.62, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O4": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1004,10 +1004,10 @@ "x": 25.62, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N4": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1015,10 +1015,10 @@ "x": 25.62, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M4": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1026,10 +1026,10 @@ "x": 25.62, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L4": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1037,10 +1037,10 @@ "x": 25.62, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K4": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1048,10 +1048,10 @@ "x": 25.62, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J4": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1059,10 +1059,10 @@ "x": 25.62, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I4": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1070,10 +1070,10 @@ "x": 25.62, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H4": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1081,10 +1081,10 @@ "x": 25.62, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G4": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1092,10 +1092,10 @@ "x": 25.62, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F4": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1103,10 +1103,10 @@ "x": 25.62, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E4": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1114,10 +1114,10 @@ "x": 25.62, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D4": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1125,10 +1125,10 @@ "x": 25.62, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C4": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1136,10 +1136,10 @@ "x": 25.62, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B4": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1147,10 +1147,10 @@ "x": 25.62, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A4": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1158,10 +1158,10 @@ "x": 25.62, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P5": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1169,10 +1169,10 @@ "x": 30.12, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O5": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1180,10 +1180,10 @@ "x": 30.12, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N5": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1191,10 +1191,10 @@ "x": 30.12, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M5": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1202,10 +1202,10 @@ "x": 30.12, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L5": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1213,10 +1213,10 @@ "x": 30.12, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K5": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1224,10 +1224,10 @@ "x": 30.12, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J5": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1235,10 +1235,10 @@ "x": 30.12, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I5": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1246,10 +1246,10 @@ "x": 30.12, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H5": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1257,10 +1257,10 @@ "x": 30.12, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G5": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1268,10 +1268,10 @@ "x": 30.12, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F5": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1279,10 +1279,10 @@ "x": 30.12, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E5": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1290,10 +1290,10 @@ "x": 30.12, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D5": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1301,10 +1301,10 @@ "x": 30.12, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C5": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1312,10 +1312,10 @@ "x": 30.12, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B5": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1323,10 +1323,10 @@ "x": 30.12, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A5": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1334,10 +1334,10 @@ "x": 30.12, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P6": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1345,10 +1345,10 @@ "x": 34.62, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O6": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1356,10 +1356,10 @@ "x": 34.62, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N6": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1367,10 +1367,10 @@ "x": 34.62, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M6": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1378,10 +1378,10 @@ "x": 34.62, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L6": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1389,10 +1389,10 @@ "x": 34.62, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K6": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1400,10 +1400,10 @@ "x": 34.62, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J6": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1411,10 +1411,10 @@ "x": 34.62, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I6": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1422,10 +1422,10 @@ "x": 34.62, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H6": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1433,10 +1433,10 @@ "x": 34.62, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G6": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1444,10 +1444,10 @@ "x": 34.62, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F6": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1455,10 +1455,10 @@ "x": 34.62, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E6": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1466,10 +1466,10 @@ "x": 34.62, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D6": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1477,10 +1477,10 @@ "x": 34.62, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C6": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1488,10 +1488,10 @@ "x": 34.62, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B6": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1499,10 +1499,10 @@ "x": 34.62, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A6": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1510,10 +1510,10 @@ "x": 34.62, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P7": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1521,10 +1521,10 @@ "x": 39.12, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O7": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1532,10 +1532,10 @@ "x": 39.12, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N7": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1543,10 +1543,10 @@ "x": 39.12, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M7": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1554,10 +1554,10 @@ "x": 39.12, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L7": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1565,10 +1565,10 @@ "x": 39.12, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K7": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1576,10 +1576,10 @@ "x": 39.12, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J7": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1587,10 +1587,10 @@ "x": 39.12, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I7": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1598,10 +1598,10 @@ "x": 39.12, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H7": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1609,10 +1609,10 @@ "x": 39.12, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G7": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1620,10 +1620,10 @@ "x": 39.12, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F7": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1631,10 +1631,10 @@ "x": 39.12, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E7": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1642,10 +1642,10 @@ "x": 39.12, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D7": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1653,10 +1653,10 @@ "x": 39.12, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C7": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1664,10 +1664,10 @@ "x": 39.12, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B7": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1675,10 +1675,10 @@ "x": 39.12, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A7": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1686,10 +1686,10 @@ "x": 39.12, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P8": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1697,10 +1697,10 @@ "x": 43.62, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O8": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1708,10 +1708,10 @@ "x": 43.62, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N8": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1719,10 +1719,10 @@ "x": 43.62, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M8": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1730,10 +1730,10 @@ "x": 43.62, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L8": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1741,10 +1741,10 @@ "x": 43.62, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K8": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1752,10 +1752,10 @@ "x": 43.62, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J8": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1763,10 +1763,10 @@ "x": 43.62, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I8": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1774,10 +1774,10 @@ "x": 43.62, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H8": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1785,10 +1785,10 @@ "x": 43.62, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G8": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1796,10 +1796,10 @@ "x": 43.62, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F8": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1807,10 +1807,10 @@ "x": 43.62, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E8": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1818,10 +1818,10 @@ "x": 43.62, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D8": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1829,10 +1829,10 @@ "x": 43.62, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C8": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1840,10 +1840,10 @@ "x": 43.62, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B8": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1851,10 +1851,10 @@ "x": 43.62, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A8": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1862,10 +1862,10 @@ "x": 43.62, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P9": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1873,10 +1873,10 @@ "x": 48.12, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O9": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1884,10 +1884,10 @@ "x": 48.12, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N9": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1895,10 +1895,10 @@ "x": 48.12, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M9": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1906,10 +1906,10 @@ "x": 48.12, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L9": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1917,10 +1917,10 @@ "x": 48.12, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K9": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1928,10 +1928,10 @@ "x": 48.12, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J9": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1939,10 +1939,10 @@ "x": 48.12, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I9": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1950,10 +1950,10 @@ "x": 48.12, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H9": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1961,10 +1961,10 @@ "x": 48.12, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G9": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1972,10 +1972,10 @@ "x": 48.12, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F9": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1983,10 +1983,10 @@ "x": 48.12, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E9": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -1994,10 +1994,10 @@ "x": 48.12, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D9": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2005,10 +2005,10 @@ "x": 48.12, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C9": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2016,10 +2016,10 @@ "x": 48.12, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B9": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2027,10 +2027,10 @@ "x": 48.12, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A9": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2038,10 +2038,10 @@ "x": 48.12, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P10": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2049,10 +2049,10 @@ "x": 52.62, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O10": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2060,10 +2060,10 @@ "x": 52.62, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N10": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2071,10 +2071,10 @@ "x": 52.62, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M10": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2082,10 +2082,10 @@ "x": 52.62, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L10": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2093,10 +2093,10 @@ "x": 52.62, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K10": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2104,10 +2104,10 @@ "x": 52.62, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J10": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2115,10 +2115,10 @@ "x": 52.62, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I10": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2126,10 +2126,10 @@ "x": 52.62, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H10": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2137,10 +2137,10 @@ "x": 52.62, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G10": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2148,10 +2148,10 @@ "x": 52.62, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F10": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2159,10 +2159,10 @@ "x": 52.62, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E10": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2170,10 +2170,10 @@ "x": 52.62, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D10": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2181,10 +2181,10 @@ "x": 52.62, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C10": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2192,10 +2192,10 @@ "x": 52.62, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B10": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2203,10 +2203,10 @@ "x": 52.62, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A10": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2214,10 +2214,10 @@ "x": 52.62, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P11": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2225,10 +2225,10 @@ "x": 57.12, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O11": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2236,10 +2236,10 @@ "x": 57.12, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N11": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2247,10 +2247,10 @@ "x": 57.12, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M11": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2258,10 +2258,10 @@ "x": 57.12, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L11": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2269,10 +2269,10 @@ "x": 57.12, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K11": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2280,10 +2280,10 @@ "x": 57.12, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J11": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2291,10 +2291,10 @@ "x": 57.12, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I11": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2302,10 +2302,10 @@ "x": 57.12, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H11": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2313,10 +2313,10 @@ "x": 57.12, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G11": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2324,10 +2324,10 @@ "x": 57.12, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F11": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2335,10 +2335,10 @@ "x": 57.12, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E11": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2346,10 +2346,10 @@ "x": 57.12, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D11": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2357,10 +2357,10 @@ "x": 57.12, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C11": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2368,10 +2368,10 @@ "x": 57.12, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B11": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2379,10 +2379,10 @@ "x": 57.12, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A11": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2390,10 +2390,10 @@ "x": 57.12, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P12": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2401,10 +2401,10 @@ "x": 61.62, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O12": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2412,10 +2412,10 @@ "x": 61.62, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N12": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2423,10 +2423,10 @@ "x": 61.62, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M12": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2434,10 +2434,10 @@ "x": 61.62, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L12": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2445,10 +2445,10 @@ "x": 61.62, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K12": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2456,10 +2456,10 @@ "x": 61.62, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J12": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2467,10 +2467,10 @@ "x": 61.62, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I12": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2478,10 +2478,10 @@ "x": 61.62, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H12": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2489,10 +2489,10 @@ "x": 61.62, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G12": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2500,10 +2500,10 @@ "x": 61.62, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F12": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2511,10 +2511,10 @@ "x": 61.62, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E12": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2522,10 +2522,10 @@ "x": 61.62, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D12": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2533,10 +2533,10 @@ "x": 61.62, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C12": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2544,10 +2544,10 @@ "x": 61.62, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B12": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2555,10 +2555,10 @@ "x": 61.62, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A12": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2566,10 +2566,10 @@ "x": 61.62, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P13": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2577,10 +2577,10 @@ "x": 66.12, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O13": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2588,10 +2588,10 @@ "x": 66.12, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N13": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2599,10 +2599,10 @@ "x": 66.12, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M13": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2610,10 +2610,10 @@ "x": 66.12, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L13": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2621,10 +2621,10 @@ "x": 66.12, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K13": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2632,10 +2632,10 @@ "x": 66.12, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J13": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2643,10 +2643,10 @@ "x": 66.12, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I13": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2654,10 +2654,10 @@ "x": 66.12, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H13": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2665,10 +2665,10 @@ "x": 66.12, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G13": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2676,10 +2676,10 @@ "x": 66.12, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F13": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2687,10 +2687,10 @@ "x": 66.12, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E13": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2698,10 +2698,10 @@ "x": 66.12, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D13": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2709,10 +2709,10 @@ "x": 66.12, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C13": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2720,10 +2720,10 @@ "x": 66.12, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B13": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2731,10 +2731,10 @@ "x": 66.12, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A13": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2742,10 +2742,10 @@ "x": 66.12, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P14": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2753,10 +2753,10 @@ "x": 70.62, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O14": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2764,10 +2764,10 @@ "x": 70.62, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N14": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2775,10 +2775,10 @@ "x": 70.62, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M14": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2786,10 +2786,10 @@ "x": 70.62, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L14": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2797,10 +2797,10 @@ "x": 70.62, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K14": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2808,10 +2808,10 @@ "x": 70.62, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J14": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2819,10 +2819,10 @@ "x": 70.62, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I14": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2830,10 +2830,10 @@ "x": 70.62, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H14": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2841,10 +2841,10 @@ "x": 70.62, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G14": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2852,10 +2852,10 @@ "x": 70.62, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F14": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2863,10 +2863,10 @@ "x": 70.62, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E14": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2874,10 +2874,10 @@ "x": 70.62, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D14": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2885,10 +2885,10 @@ "x": 70.62, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C14": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2896,10 +2896,10 @@ "x": 70.62, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B14": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2907,10 +2907,10 @@ "x": 70.62, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A14": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2918,10 +2918,10 @@ "x": 70.62, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P15": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2929,10 +2929,10 @@ "x": 75.12, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O15": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2940,10 +2940,10 @@ "x": 75.12, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N15": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2951,10 +2951,10 @@ "x": 75.12, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M15": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2962,10 +2962,10 @@ "x": 75.12, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L15": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2973,10 +2973,10 @@ "x": 75.12, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K15": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2984,10 +2984,10 @@ "x": 75.12, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J15": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -2995,10 +2995,10 @@ "x": 75.12, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I15": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3006,10 +3006,10 @@ "x": 75.12, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H15": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3017,10 +3017,10 @@ "x": 75.12, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G15": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3028,10 +3028,10 @@ "x": 75.12, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F15": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3039,10 +3039,10 @@ "x": 75.12, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E15": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3050,10 +3050,10 @@ "x": 75.12, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D15": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3061,10 +3061,10 @@ "x": 75.12, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C15": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3072,10 +3072,10 @@ "x": 75.12, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B15": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3083,10 +3083,10 @@ "x": 75.12, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A15": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3094,10 +3094,10 @@ "x": 75.12, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P16": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3105,10 +3105,10 @@ "x": 79.62, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O16": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3116,10 +3116,10 @@ "x": 79.62, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N16": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3127,10 +3127,10 @@ "x": 79.62, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M16": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3138,10 +3138,10 @@ "x": 79.62, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L16": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3149,10 +3149,10 @@ "x": 79.62, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K16": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3160,10 +3160,10 @@ "x": 79.62, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J16": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3171,10 +3171,10 @@ "x": 79.62, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I16": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3182,10 +3182,10 @@ "x": 79.62, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H16": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3193,10 +3193,10 @@ "x": 79.62, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G16": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3204,10 +3204,10 @@ "x": 79.62, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F16": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3215,10 +3215,10 @@ "x": 79.62, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E16": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3226,10 +3226,10 @@ "x": 79.62, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D16": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3237,10 +3237,10 @@ "x": 79.62, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C16": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3248,10 +3248,10 @@ "x": 79.62, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B16": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3259,10 +3259,10 @@ "x": 79.62, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A16": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3270,10 +3270,10 @@ "x": 79.62, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P17": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3281,10 +3281,10 @@ "x": 84.12, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O17": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3292,10 +3292,10 @@ "x": 84.12, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N17": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3303,10 +3303,10 @@ "x": 84.12, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M17": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3314,10 +3314,10 @@ "x": 84.12, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L17": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3325,10 +3325,10 @@ "x": 84.12, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K17": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3336,10 +3336,10 @@ "x": 84.12, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J17": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3347,10 +3347,10 @@ "x": 84.12, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I17": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3358,10 +3358,10 @@ "x": 84.12, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H17": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3369,10 +3369,10 @@ "x": 84.12, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G17": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3380,10 +3380,10 @@ "x": 84.12, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F17": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3391,10 +3391,10 @@ "x": 84.12, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E17": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3402,10 +3402,10 @@ "x": 84.12, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D17": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3413,10 +3413,10 @@ "x": 84.12, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C17": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3424,10 +3424,10 @@ "x": 84.12, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B17": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3435,10 +3435,10 @@ "x": 84.12, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A17": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3446,10 +3446,10 @@ "x": 84.12, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P18": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3457,10 +3457,10 @@ "x": 88.62, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O18": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3468,10 +3468,10 @@ "x": 88.62, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N18": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3479,10 +3479,10 @@ "x": 88.62, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M18": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3490,10 +3490,10 @@ "x": 88.62, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L18": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3501,10 +3501,10 @@ "x": 88.62, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K18": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3512,10 +3512,10 @@ "x": 88.62, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J18": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3523,10 +3523,10 @@ "x": 88.62, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I18": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3534,10 +3534,10 @@ "x": 88.62, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H18": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3545,10 +3545,10 @@ "x": 88.62, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G18": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3556,10 +3556,10 @@ "x": 88.62, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F18": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3567,10 +3567,10 @@ "x": 88.62, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E18": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3578,10 +3578,10 @@ "x": 88.62, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D18": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3589,10 +3589,10 @@ "x": 88.62, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C18": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3600,10 +3600,10 @@ "x": 88.62, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B18": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3611,10 +3611,10 @@ "x": 88.62, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A18": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3622,10 +3622,10 @@ "x": 88.62, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P19": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3633,10 +3633,10 @@ "x": 93.12, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O19": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3644,10 +3644,10 @@ "x": 93.12, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N19": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3655,10 +3655,10 @@ "x": 93.12, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M19": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3666,10 +3666,10 @@ "x": 93.12, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L19": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3677,10 +3677,10 @@ "x": 93.12, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K19": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3688,10 +3688,10 @@ "x": 93.12, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J19": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3699,10 +3699,10 @@ "x": 93.12, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I19": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3710,10 +3710,10 @@ "x": 93.12, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H19": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3721,10 +3721,10 @@ "x": 93.12, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G19": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3732,10 +3732,10 @@ "x": 93.12, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F19": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3743,10 +3743,10 @@ "x": 93.12, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E19": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3754,10 +3754,10 @@ "x": 93.12, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D19": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3765,10 +3765,10 @@ "x": 93.12, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C19": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3776,10 +3776,10 @@ "x": 93.12, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B19": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3787,10 +3787,10 @@ "x": 93.12, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A19": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3798,10 +3798,10 @@ "x": 93.12, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P20": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3809,10 +3809,10 @@ "x": 97.62, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O20": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3820,10 +3820,10 @@ "x": 97.62, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N20": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3831,10 +3831,10 @@ "x": 97.62, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M20": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3842,10 +3842,10 @@ "x": 97.62, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L20": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3853,10 +3853,10 @@ "x": 97.62, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K20": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3864,10 +3864,10 @@ "x": 97.62, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J20": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3875,10 +3875,10 @@ "x": 97.62, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I20": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3886,10 +3886,10 @@ "x": 97.62, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H20": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3897,10 +3897,10 @@ "x": 97.62, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G20": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3908,10 +3908,10 @@ "x": 97.62, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F20": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3919,10 +3919,10 @@ "x": 97.62, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E20": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3930,10 +3930,10 @@ "x": 97.62, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D20": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3941,10 +3941,10 @@ "x": 97.62, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C20": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3952,10 +3952,10 @@ "x": 97.62, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B20": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3963,10 +3963,10 @@ "x": 97.62, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A20": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3974,10 +3974,10 @@ "x": 97.62, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P21": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3985,10 +3985,10 @@ "x": 102.12, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O21": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -3996,10 +3996,10 @@ "x": 102.12, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N21": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4007,10 +4007,10 @@ "x": 102.12, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M21": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4018,10 +4018,10 @@ "x": 102.12, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L21": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4029,10 +4029,10 @@ "x": 102.12, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K21": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4040,10 +4040,10 @@ "x": 102.12, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J21": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4051,10 +4051,10 @@ "x": 102.12, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I21": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4062,10 +4062,10 @@ "x": 102.12, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H21": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4073,10 +4073,10 @@ "x": 102.12, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G21": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4084,10 +4084,10 @@ "x": 102.12, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F21": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4095,10 +4095,10 @@ "x": 102.12, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E21": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4106,10 +4106,10 @@ "x": 102.12, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D21": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4117,10 +4117,10 @@ "x": 102.12, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C21": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4128,10 +4128,10 @@ "x": 102.12, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B21": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4139,10 +4139,10 @@ "x": 102.12, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A21": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4150,10 +4150,10 @@ "x": 102.12, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P22": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4161,10 +4161,10 @@ "x": 106.62, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O22": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4172,10 +4172,10 @@ "x": 106.62, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N22": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4183,10 +4183,10 @@ "x": 106.62, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M22": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4194,10 +4194,10 @@ "x": 106.62, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L22": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4205,10 +4205,10 @@ "x": 106.62, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K22": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4216,10 +4216,10 @@ "x": 106.62, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J22": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4227,10 +4227,10 @@ "x": 106.62, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I22": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4238,10 +4238,10 @@ "x": 106.62, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H22": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4249,10 +4249,10 @@ "x": 106.62, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G22": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4260,10 +4260,10 @@ "x": 106.62, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F22": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4271,10 +4271,10 @@ "x": 106.62, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E22": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4282,10 +4282,10 @@ "x": 106.62, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D22": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4293,10 +4293,10 @@ "x": 106.62, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C22": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4304,10 +4304,10 @@ "x": 106.62, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B22": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4315,10 +4315,10 @@ "x": 106.62, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A22": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4326,10 +4326,10 @@ "x": 106.62, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P23": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4337,10 +4337,10 @@ "x": 111.12, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O23": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4348,10 +4348,10 @@ "x": 111.12, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N23": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4359,10 +4359,10 @@ "x": 111.12, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M23": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4370,10 +4370,10 @@ "x": 111.12, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L23": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4381,10 +4381,10 @@ "x": 111.12, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K23": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4392,10 +4392,10 @@ "x": 111.12, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J23": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4403,10 +4403,10 @@ "x": 111.12, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I23": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4414,10 +4414,10 @@ "x": 111.12, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H23": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4425,10 +4425,10 @@ "x": 111.12, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G23": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4436,10 +4436,10 @@ "x": 111.12, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F23": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4447,10 +4447,10 @@ "x": 111.12, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E23": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4458,10 +4458,10 @@ "x": 111.12, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D23": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4469,10 +4469,10 @@ "x": 111.12, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C23": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4480,10 +4480,10 @@ "x": 111.12, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B23": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4491,10 +4491,10 @@ "x": 111.12, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A23": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4502,10 +4502,10 @@ "x": 111.12, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "P24": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4513,10 +4513,10 @@ "x": 115.62, "y": 8.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "O24": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4524,10 +4524,10 @@ "x": 115.62, "y": 13.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "N24": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4535,10 +4535,10 @@ "x": 115.62, "y": 17.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "M24": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4546,10 +4546,10 @@ "x": 115.62, "y": 22.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "L24": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4557,10 +4557,10 @@ "x": 115.62, "y": 26.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "K24": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4568,10 +4568,10 @@ "x": 115.62, "y": 31.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "J24": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4579,10 +4579,10 @@ "x": 115.62, "y": 35.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "I24": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4590,10 +4590,10 @@ "x": 115.62, "y": 40.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "H24": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4601,10 +4601,10 @@ "x": 115.62, "y": 44.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "G24": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4612,10 +4612,10 @@ "x": 115.62, "y": 49.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "F24": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4623,10 +4623,10 @@ "x": 115.62, "y": 53.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "E24": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4634,10 +4634,10 @@ "x": 115.62, "y": 58.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "D24": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4645,10 +4645,10 @@ "x": 115.62, "y": 62.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "C24": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4656,10 +4656,10 @@ "x": 115.62, "y": 67.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "B24": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4667,10 +4667,10 @@ "x": 115.62, "y": 71.99, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" }, "A24": { - "shape": "rectangular", + "shape": "circular", "depth": 11.43, "xDimension": 3.63, "yDimension": 3.63, @@ -4678,7 +4678,7 @@ "x": 115.62, "y": 76.49, "z": 2.79, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "flatWell" } }, "brand": { @@ -5099,13 +5099,15 @@ } }, "innerLabwareGeometry": { - "conicalWell": { + "flatWell": { "sections": [ { - "shape": "conical", - "bottomDiameter": 3.64, - "topDiameter": 2.74, - "topHeight": 11.65, + "shape": "cuboidal", + "topXDimension": 3.6322, + "topYDimension": 3.6322, + "bottomXDimension": 2.667, + "bottomYDimension": 2.667, + "topHeight": 11.43, "bottomHeight": 0.0 } ] diff --git a/shared-data/labware/definitions/3/corning_48_wellplate_1.6ml_flat/3.json b/shared-data/labware/definitions/3/corning_48_wellplate_1.6ml_flat/3.json index 9caad9af4b0..ad4bf3005ac 100644 --- a/shared-data/labware/definitions/3/corning_48_wellplate_1.6ml_flat/3.json +++ b/shared-data/labware/definitions/3/corning_48_wellplate_1.6ml_flat/3.json @@ -35,7 +35,7 @@ "F1": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 18.16, "y": 10.08, @@ -45,7 +45,7 @@ "E1": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 18.16, "y": 23.16, @@ -55,7 +55,7 @@ "D1": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 18.16, "y": 36.24, @@ -65,7 +65,7 @@ "C1": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 18.16, "y": 49.32, @@ -75,7 +75,7 @@ "B1": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 18.16, "y": 62.4, @@ -85,7 +85,7 @@ "A1": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 18.16, "y": 75.48, @@ -95,7 +95,7 @@ "F2": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 31.24, "y": 10.08, @@ -105,7 +105,7 @@ "E2": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 31.24, "y": 23.16, @@ -115,7 +115,7 @@ "D2": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 31.24, "y": 36.24, @@ -125,7 +125,7 @@ "C2": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 31.24, "y": 49.32, @@ -135,7 +135,7 @@ "B2": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 31.24, "y": 62.4, @@ -145,7 +145,7 @@ "A2": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 31.24, "y": 75.48, @@ -155,7 +155,7 @@ "F3": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 44.32, "y": 10.08, @@ -165,7 +165,7 @@ "E3": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 44.32, "y": 23.16, @@ -175,7 +175,7 @@ "D3": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 44.32, "y": 36.24, @@ -185,7 +185,7 @@ "C3": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 44.32, "y": 49.32, @@ -195,7 +195,7 @@ "B3": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 44.32, "y": 62.4, @@ -205,7 +205,7 @@ "A3": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 44.32, "y": 75.48, @@ -215,7 +215,7 @@ "F4": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 57.4, "y": 10.08, @@ -225,7 +225,7 @@ "E4": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 57.4, "y": 23.16, @@ -235,7 +235,7 @@ "D4": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 57.4, "y": 36.24, @@ -245,7 +245,7 @@ "C4": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 57.4, "y": 49.32, @@ -255,7 +255,7 @@ "B4": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 57.4, "y": 62.4, @@ -265,7 +265,7 @@ "A4": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 57.4, "y": 75.48, @@ -275,7 +275,7 @@ "F5": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 70.48, "y": 10.08, @@ -285,7 +285,7 @@ "E5": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 70.48, "y": 23.16, @@ -295,7 +295,7 @@ "D5": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 70.48, "y": 36.24, @@ -305,7 +305,7 @@ "C5": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 70.48, "y": 49.32, @@ -315,7 +315,7 @@ "B5": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 70.48, "y": 62.4, @@ -325,7 +325,7 @@ "A5": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 70.48, "y": 75.48, @@ -335,7 +335,7 @@ "F6": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 83.56, "y": 10.08, @@ -345,7 +345,7 @@ "E6": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 83.56, "y": 23.16, @@ -355,7 +355,7 @@ "D6": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 83.56, "y": 36.24, @@ -365,7 +365,7 @@ "C6": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 83.56, "y": 49.32, @@ -375,7 +375,7 @@ "B6": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 83.56, "y": 62.4, @@ -385,7 +385,7 @@ "A6": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 83.56, "y": 75.48, @@ -395,7 +395,7 @@ "F7": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 96.64, "y": 10.08, @@ -405,7 +405,7 @@ "E7": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 96.64, "y": 23.16, @@ -415,7 +415,7 @@ "D7": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 96.64, "y": 36.24, @@ -425,7 +425,7 @@ "C7": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 96.64, "y": 49.32, @@ -435,7 +435,7 @@ "B7": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 96.64, "y": 62.4, @@ -445,7 +445,7 @@ "A7": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 96.64, "y": 75.48, @@ -455,7 +455,7 @@ "F8": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 109.72, "y": 10.08, @@ -465,7 +465,7 @@ "E8": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 109.72, "y": 23.16, @@ -475,7 +475,7 @@ "D8": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 109.72, "y": 36.24, @@ -485,7 +485,7 @@ "C8": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 109.72, "y": 49.32, @@ -495,7 +495,7 @@ "B8": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 109.72, "y": 62.4, @@ -505,7 +505,7 @@ "A8": { "shape": "circular", "depth": 17.4, - "diameter": 11.56, + "diameter": 11.1, "totalLiquidVolume": 1600, "x": 109.72, "y": 75.48, @@ -594,9 +594,9 @@ "sections": [ { "shape": "conical", - "bottomDiameter": 11.0998, - "topDiameter": 10.6426, - "topHeight": 17.399, + "bottomDiameter": 10.6426, + "topDiameter": 11.0998, + "topHeight": 17.4, "bottomHeight": 0.0 } ] diff --git a/shared-data/labware/definitions/3/nest_1_reservoir_195ml/3.json b/shared-data/labware/definitions/3/nest_1_reservoir_195ml/3.json index 842b916fb8c..a5fb287ad8c 100644 --- a/shared-data/labware/definitions/3/nest_1_reservoir_195ml/3.json +++ b/shared-data/labware/definitions/3/nest_1_reservoir_195ml/3.json @@ -20,7 +20,7 @@ "gripHeightFromLabwareBottom": 16.8, "wells": { "A1": { - "depth": 25, + "depth": 26.85, "shape": "rectangular", "xDimension": 106.8, "yDimension": 71.2, @@ -71,11 +71,11 @@ { "shape": "cuboidal", "topXDimension": 71.3, - "topYDimension": 70.6, - "bottomXDimension": 107.3, + "topYDimension": 107.3, + "bottomXDimension": 70.6, "bottomYDimension": 106.8, "topHeight": 26.85, - "bottomHeight": 2 + "bottomHeight": 2.0 } ] } diff --git a/shared-data/labware/definitions/3/nest_1_reservoir_290ml/2.json b/shared-data/labware/definitions/3/nest_1_reservoir_290ml/2.json index 13e9cd8f40c..46c5a494533 100644 --- a/shared-data/labware/definitions/3/nest_1_reservoir_290ml/2.json +++ b/shared-data/labware/definitions/3/nest_1_reservoir_290ml/2.json @@ -57,12 +57,22 @@ "sections": [ { "shape": "cuboidal", - "topXDimension": 70.6, - "topYDimension": 106.8, - "bottomXDimension": 71.3, - "bottomYDimension": 107.3, - "topHeight": 2.05, - "bottomHeight": 0.0 + "topXDimension": 7.75, + "topYDimension": 70.75, + "bottomXDimension": 3.127, + "bottomYDimension": 66.85, + "topHeight": 2.0, + "bottomHeight": 0.0, + "xCount": 12 + }, + { + "shape": "cuboidal", + "topXDimension": 107.76, + "topYDimension": 71.0, + "bottomXDimension": 106.75, + "bottomYDimension": 70.75, + "topHeight": 39.55, + "bottomHeight": 2.0 } ] } diff --git a/shared-data/labware/definitions/3/nest_96_wellplate_100ul_pcr_full_skirt/3.json b/shared-data/labware/definitions/3/nest_96_wellplate_100ul_pcr_full_skirt/3.json index 3e55fa4ed84..44114349497 100644 --- a/shared-data/labware/definitions/3/nest_96_wellplate_100ul_pcr_full_skirt/3.json +++ b/shared-data/labware/definitions/3/nest_96_wellplate_100ul_pcr_full_skirt/3.json @@ -33,7 +33,7 @@ "gripHeightFromLabwareBottom": 10.65, "wells": { "A1": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -43,7 +43,7 @@ "geometryDefinitionId": "conicalWell" }, "B1": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -53,7 +53,7 @@ "geometryDefinitionId": "conicalWell" }, "C1": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -63,7 +63,7 @@ "geometryDefinitionId": "conicalWell" }, "D1": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -73,7 +73,7 @@ "geometryDefinitionId": "conicalWell" }, "E1": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -83,7 +83,7 @@ "geometryDefinitionId": "conicalWell" }, "F1": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -93,7 +93,7 @@ "geometryDefinitionId": "conicalWell" }, "G1": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -103,7 +103,7 @@ "geometryDefinitionId": "conicalWell" }, "H1": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -113,7 +113,7 @@ "geometryDefinitionId": "conicalWell" }, "A2": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -123,7 +123,7 @@ "geometryDefinitionId": "conicalWell" }, "B2": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -133,7 +133,7 @@ "geometryDefinitionId": "conicalWell" }, "C2": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -143,7 +143,7 @@ "geometryDefinitionId": "conicalWell" }, "D2": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -153,7 +153,7 @@ "geometryDefinitionId": "conicalWell" }, "E2": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -163,7 +163,7 @@ "geometryDefinitionId": "conicalWell" }, "F2": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -173,7 +173,7 @@ "geometryDefinitionId": "conicalWell" }, "G2": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -183,7 +183,7 @@ "geometryDefinitionId": "conicalWell" }, "H2": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -193,7 +193,7 @@ "geometryDefinitionId": "conicalWell" }, "A3": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -203,7 +203,7 @@ "geometryDefinitionId": "conicalWell" }, "B3": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -213,7 +213,7 @@ "geometryDefinitionId": "conicalWell" }, "C3": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -223,7 +223,7 @@ "geometryDefinitionId": "conicalWell" }, "D3": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -233,7 +233,7 @@ "geometryDefinitionId": "conicalWell" }, "E3": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -243,7 +243,7 @@ "geometryDefinitionId": "conicalWell" }, "F3": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -253,7 +253,7 @@ "geometryDefinitionId": "conicalWell" }, "G3": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -263,7 +263,7 @@ "geometryDefinitionId": "conicalWell" }, "H3": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -273,7 +273,7 @@ "geometryDefinitionId": "conicalWell" }, "A4": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -283,7 +283,7 @@ "geometryDefinitionId": "conicalWell" }, "B4": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -293,7 +293,7 @@ "geometryDefinitionId": "conicalWell" }, "C4": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -303,7 +303,7 @@ "geometryDefinitionId": "conicalWell" }, "D4": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -313,7 +313,7 @@ "geometryDefinitionId": "conicalWell" }, "E4": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -323,7 +323,7 @@ "geometryDefinitionId": "conicalWell" }, "F4": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -333,7 +333,7 @@ "geometryDefinitionId": "conicalWell" }, "G4": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -343,7 +343,7 @@ "geometryDefinitionId": "conicalWell" }, "H4": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -353,7 +353,7 @@ "geometryDefinitionId": "conicalWell" }, "A5": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -363,7 +363,7 @@ "geometryDefinitionId": "conicalWell" }, "B5": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -373,7 +373,7 @@ "geometryDefinitionId": "conicalWell" }, "C5": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -383,7 +383,7 @@ "geometryDefinitionId": "conicalWell" }, "D5": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -393,7 +393,7 @@ "geometryDefinitionId": "conicalWell" }, "E5": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -403,7 +403,7 @@ "geometryDefinitionId": "conicalWell" }, "F5": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -413,7 +413,7 @@ "geometryDefinitionId": "conicalWell" }, "G5": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -423,7 +423,7 @@ "geometryDefinitionId": "conicalWell" }, "H5": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -433,7 +433,7 @@ "geometryDefinitionId": "conicalWell" }, "A6": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -443,7 +443,7 @@ "geometryDefinitionId": "conicalWell" }, "B6": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -453,7 +453,7 @@ "geometryDefinitionId": "conicalWell" }, "C6": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -463,7 +463,7 @@ "geometryDefinitionId": "conicalWell" }, "D6": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -473,7 +473,7 @@ "geometryDefinitionId": "conicalWell" }, "E6": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -483,7 +483,7 @@ "geometryDefinitionId": "conicalWell" }, "F6": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -493,7 +493,7 @@ "geometryDefinitionId": "conicalWell" }, "G6": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -503,7 +503,7 @@ "geometryDefinitionId": "conicalWell" }, "H6": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -513,7 +513,7 @@ "geometryDefinitionId": "conicalWell" }, "A7": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -523,7 +523,7 @@ "geometryDefinitionId": "conicalWell" }, "B7": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -533,7 +533,7 @@ "geometryDefinitionId": "conicalWell" }, "C7": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -543,7 +543,7 @@ "geometryDefinitionId": "conicalWell" }, "D7": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -553,7 +553,7 @@ "geometryDefinitionId": "conicalWell" }, "E7": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -563,7 +563,7 @@ "geometryDefinitionId": "conicalWell" }, "F7": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -573,7 +573,7 @@ "geometryDefinitionId": "conicalWell" }, "G7": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -583,7 +583,7 @@ "geometryDefinitionId": "conicalWell" }, "H7": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -593,7 +593,7 @@ "geometryDefinitionId": "conicalWell" }, "A8": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -603,7 +603,7 @@ "geometryDefinitionId": "conicalWell" }, "B8": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -613,7 +613,7 @@ "geometryDefinitionId": "conicalWell" }, "C8": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -623,7 +623,7 @@ "geometryDefinitionId": "conicalWell" }, "D8": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -633,7 +633,7 @@ "geometryDefinitionId": "conicalWell" }, "E8": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -643,7 +643,7 @@ "geometryDefinitionId": "conicalWell" }, "F8": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -653,7 +653,7 @@ "geometryDefinitionId": "conicalWell" }, "G8": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -663,7 +663,7 @@ "geometryDefinitionId": "conicalWell" }, "H8": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -673,7 +673,7 @@ "geometryDefinitionId": "conicalWell" }, "A9": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -683,7 +683,7 @@ "geometryDefinitionId": "conicalWell" }, "B9": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -693,7 +693,7 @@ "geometryDefinitionId": "conicalWell" }, "C9": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -703,7 +703,7 @@ "geometryDefinitionId": "conicalWell" }, "D9": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -713,7 +713,7 @@ "geometryDefinitionId": "conicalWell" }, "E9": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -723,7 +723,7 @@ "geometryDefinitionId": "conicalWell" }, "F9": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -733,7 +733,7 @@ "geometryDefinitionId": "conicalWell" }, "G9": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -743,7 +743,7 @@ "geometryDefinitionId": "conicalWell" }, "H9": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -753,7 +753,7 @@ "geometryDefinitionId": "conicalWell" }, "A10": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -763,7 +763,7 @@ "geometryDefinitionId": "conicalWell" }, "B10": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -773,7 +773,7 @@ "geometryDefinitionId": "conicalWell" }, "C10": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -783,7 +783,7 @@ "geometryDefinitionId": "conicalWell" }, "D10": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -793,7 +793,7 @@ "geometryDefinitionId": "conicalWell" }, "E10": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -803,7 +803,7 @@ "geometryDefinitionId": "conicalWell" }, "F10": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -813,7 +813,7 @@ "geometryDefinitionId": "conicalWell" }, "G10": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -823,7 +823,7 @@ "geometryDefinitionId": "conicalWell" }, "H10": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -833,7 +833,7 @@ "geometryDefinitionId": "conicalWell" }, "A11": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -843,7 +843,7 @@ "geometryDefinitionId": "conicalWell" }, "B11": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -853,7 +853,7 @@ "geometryDefinitionId": "conicalWell" }, "C11": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -863,7 +863,7 @@ "geometryDefinitionId": "conicalWell" }, "D11": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -873,7 +873,7 @@ "geometryDefinitionId": "conicalWell" }, "E11": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -883,7 +883,7 @@ "geometryDefinitionId": "conicalWell" }, "F11": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -893,7 +893,7 @@ "geometryDefinitionId": "conicalWell" }, "G11": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -903,7 +903,7 @@ "geometryDefinitionId": "conicalWell" }, "H11": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -913,7 +913,7 @@ "geometryDefinitionId": "conicalWell" }, "A12": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -923,7 +923,7 @@ "geometryDefinitionId": "conicalWell" }, "B12": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -933,7 +933,7 @@ "geometryDefinitionId": "conicalWell" }, "C12": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -943,7 +943,7 @@ "geometryDefinitionId": "conicalWell" }, "D12": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -953,7 +953,7 @@ "geometryDefinitionId": "conicalWell" }, "E12": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -963,7 +963,7 @@ "geometryDefinitionId": "conicalWell" }, "F12": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -973,7 +973,7 @@ "geometryDefinitionId": "conicalWell" }, "G12": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, @@ -983,7 +983,7 @@ "geometryDefinitionId": "conicalWell" }, "H12": { - "depth": 14.78, + "depth": 14.7, "shape": "circular", "diameter": 5.34, "totalLiquidVolume": 100, diff --git a/shared-data/labware/definitions/3/opentrons_10_tuberack_falcon_4x50ml_6x15ml_conical/2.json b/shared-data/labware/definitions/3/opentrons_10_tuberack_falcon_4x50ml_6x15ml_conical/2.json index 7827cbb5916..788e56ee3ba 100644 --- a/shared-data/labware/definitions/3/opentrons_10_tuberack_falcon_4x50ml_6x15ml_conical/2.json +++ b/shared-data/labware/definitions/3/opentrons_10_tuberack_falcon_4x50ml_6x15ml_conical/2.json @@ -90,7 +90,7 @@ "totalLiquidVolume": 50000, "diameter": 27.81, "shape": "circular", - "depth": 113, + "depth": 112.85, "x": 71.38, "y": 60.25, "z": 7.3, @@ -100,7 +100,7 @@ "totalLiquidVolume": 50000, "diameter": 27.81, "shape": "circular", - "depth": 113, + "depth": 112.85, "x": 71.38, "y": 25.25, "z": 7.3, @@ -110,7 +110,7 @@ "totalLiquidVolume": 50000, "diameter": 27.81, "shape": "circular", - "depth": 113, + "depth": 112.85, "x": 106.38, "y": 60.25, "z": 7.3, @@ -120,7 +120,7 @@ "totalLiquidVolume": 50000, "diameter": 27.81, "shape": "circular", - "depth": 113, + "depth": 112.85, "x": 106.38, "y": 25.25, "z": 7.3, diff --git a/shared-data/labware/definitions/3/opentrons_10_tuberack_nest_4x50ml_6x15ml_conical/2.json b/shared-data/labware/definitions/3/opentrons_10_tuberack_nest_4x50ml_6x15ml_conical/2.json index 417e3e893de..209aeac29e6 100644 --- a/shared-data/labware/definitions/3/opentrons_10_tuberack_nest_4x50ml_6x15ml_conical/2.json +++ b/shared-data/labware/definitions/3/opentrons_10_tuberack_nest_4x50ml_6x15ml_conical/2.json @@ -8,7 +8,7 @@ "x": 13.88, "y": 67.75, "z": 6.85, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "conicalWell15mL" }, "B1": { "totalLiquidVolume": 15000, @@ -18,7 +18,7 @@ "x": 13.88, "y": 42.75, "z": 6.85, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "conicalWell15mL" }, "C1": { "totalLiquidVolume": 15000, @@ -28,7 +28,7 @@ "x": 13.88, "y": 17.75, "z": 6.85, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "conicalWell15mL" }, "A2": { "totalLiquidVolume": 15000, @@ -38,7 +38,7 @@ "x": 38.88, "y": 67.75, "z": 6.85, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "conicalWell15mL" }, "B2": { "totalLiquidVolume": 15000, @@ -48,7 +48,7 @@ "x": 38.88, "y": 42.75, "z": 6.85, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "conicalWell15mL" }, "C2": { "totalLiquidVolume": 15000, @@ -58,47 +58,47 @@ "x": 38.88, "y": 17.75, "z": 6.85, - "geometryDefinitionId": "conicalWell" + "geometryDefinitionId": "conicalWell15mL" }, "A3": { "totalLiquidVolume": 50000, - "diameter": 27.95, + "diameter": 28.18, "shape": "circular", - "depth": 113.05, + "depth": 113.1, "x": 71.38, "y": 60.25, "z": 7.3, - "geometryDefinitionId": "b" + "geometryDefinitionId": "conicalWell50mL" }, "B3": { "totalLiquidVolume": 50000, - "diameter": 27.95, + "diameter": 28.18, "shape": "circular", - "depth": 113.05, + "depth": 113.1, "x": 71.38, "y": 25.25, "z": 7.3, - "geometryDefinitionId": "b" + "geometryDefinitionId": "conicalWell50mL" }, "A4": { "totalLiquidVolume": 50000, - "diameter": 27.95, + "diameter": 28.18, "shape": "circular", - "depth": 113.05, + "depth": 113.1, "x": 106.38, "y": 60.25, "z": 7.3, - "geometryDefinitionId": "b" + "geometryDefinitionId": "conicalWell50mL" }, "B4": { "totalLiquidVolume": 50000, - "diameter": 27.95, + "diameter": 28.18, "shape": "circular", - "depth": 113.05, + "depth": 113.1, "x": 106.38, "y": 25.25, "z": 7.3, - "geometryDefinitionId": "b" + "geometryDefinitionId": "conicalWell50mL" } }, "groups": [ @@ -168,53 +168,66 @@ "z": 0 }, "innerLabwareGeometry": { - "conicalWell": { + "conicalWell15mL": { "sections": [ + { + "shape": "spherical", + "radiusOfCurvature": 1.235, + "topHeight": 0.92, + "bottomHeight": 0.0 + }, { "shape": "conical", "topDiameter": 13.8, - "bottomDiameter": 2.5, + "bottomDiameter": 2.38, "topHeight": 22.55, - "bottomHeight": 0.0 + "bottomHeight": 0.92 }, { "shape": "conical", - "topDiameter": 14.78, + "topDiameter": 14.56, "bottomDiameter": 13.8, - "topHeight": 109.03, + "topHeight": 113.8, "bottomHeight": 22.55 }, { "shape": "conical", "topDiameter": 15.5, - "bottomDiameter": 14.78, + "bottomDiameter": 14.56, "topHeight": 117.8, - "bottomHeight": 109.03 + "bottomHeight": 113.8 } ] }, - "b": { + "conicalWell50mL": { "sections": [ { "shape": "conical", "topDiameter": 26.0, - "bottomDiameter": 6.0, - "topHeight": 14.28, + "bottomDiameter": 4.5, + "topHeight": 14.35, "bottomHeight": 0.0 }, { "shape": "conical", - "topDiameter": 27.0, + "topDiameter": 27.69, "bottomDiameter": 26.0, - "topHeight": 109.0, - "bottomHeight": 14.28 + "topHeight": 108.8, + "bottomHeight": 14.35 + }, + { + "shape": "conical", + "topDiameter": 27.95, + "bottomDiameter": 27.69, + "topHeight": 109.1, + "bottomHeight": 108.8 }, { "shape": "conical", - "topDiameter": 27.45, - "bottomDiameter": 27.0, - "topHeight": 113.3, - "bottomHeight": 109.0 + "topDiameter": 28.18, + "bottomDiameter": 27.95, + "topHeight": 113.1, + "bottomHeight": 109.1 } ] } diff --git a/shared-data/labware/definitions/3/opentrons_24_tuberack_eppendorf_2ml_safelock_snapcap/2.json b/shared-data/labware/definitions/3/opentrons_24_tuberack_eppendorf_2ml_safelock_snapcap/2.json index 1a0cc9ea508..97726f203f7 100644 --- a/shared-data/labware/definitions/3/opentrons_24_tuberack_eppendorf_2ml_safelock_snapcap/2.json +++ b/shared-data/labware/definitions/3/opentrons_24_tuberack_eppendorf_2ml_safelock_snapcap/2.json @@ -334,7 +334,140 @@ }, "innerLabwareGeometry": { "conicalWell": { - "sections": [] + "sections": [ + { + "shape": "spherical", + "radiusOfCurvature": 2.88, + "topHeight": 1.45, + "bottomHeight": 0.0 + }, + { + "shape": "conical", + "topDiameter": 6.0, + "bottomDiameter": 5.0, + "topHeight": 2.2, + "bottomHeight": 1.45 + }, + { + "shape": "conical", + "topDiameter": 6.4, + "bottomDiameter": 6.0, + "topHeight": 2.45, + "bottomHeight": 2.2 + }, + { + "shape": "conical", + "topDiameter": 6.8, + "bottomDiameter": 6.4, + "topHeight": 2.75, + "bottomHeight": 2.45 + }, + { + "shape": "conical", + "topDiameter": 7.2, + "bottomDiameter": 6.8, + "topHeight": 3.14, + "bottomHeight": 2.75 + }, + { + "shape": "conical", + "topDiameter": 7.6, + "bottomDiameter": 7.2, + "topHeight": 3.67, + "bottomHeight": 3.14 + }, + { + "shape": "conical", + "topDiameter": 7.7, + "bottomDiameter": 7.6, + "topHeight": 3.93, + "bottomHeight": 3.67 + }, + { + "shape": "conical", + "topDiameter": 8.0, + "bottomDiameter": 7.7, + "topHeight": 4.29, + "bottomHeight": 3.93 + }, + { + "shape": "conical", + "topDiameter": 8.2, + "bottomDiameter": 8.0, + "topHeight": 4.53, + "bottomHeight": 4.29 + }, + { + "shape": "conical", + "topDiameter": 8.4, + "bottomDiameter": 8.2, + "topHeight": 5.03, + "bottomHeight": 4.53 + }, + { + "shape": "conical", + "topDiameter": 8.5, + "bottomDiameter": 8.4, + "topHeight": 5.15, + "bottomHeight": 5.03 + }, + { + "shape": "conical", + "topDiameter": 8.6, + "bottomDiameter": 8.5, + "topHeight": 5.43, + "bottomHeight": 5.15 + }, + { + "shape": "conical", + "topDiameter": 8.78, + "bottomDiameter": 8.6, + "topHeight": 6.97, + "bottomHeight": 5.43 + }, + { + "shape": "conical", + "topDiameter": 8.9, + "bottomDiameter": 8.78, + "topHeight": 10.17, + "bottomHeight": 6.97 + }, + { + "shape": "conical", + "topDiameter": 9.0, + "bottomDiameter": 8.9, + "topHeight": 13.32, + "bottomHeight": 10.17 + }, + { + "shape": "conical", + "topDiameter": 9.1, + "bottomDiameter": 9.0, + "topHeight": 25.26, + "bottomHeight": 13.32 + }, + { + "shape": "conical", + "topDiameter": 9.2, + "bottomDiameter": 9.1, + "topHeight": 32.5, + "bottomHeight": 25.26 + }, + { + "shape": "conical", + "topDiameter": 9.6, + "bottomDiameter": 9.2, + "topHeight": 33.96, + "bottomHeight": 32.5 + }, + { + "shape": "conical", + "topDiameter": 10.0, + "bottomDiameter": 9.6, + "topHeight": 39.02, + "bottomHeight": 33.96 + } + ] } } } diff --git a/shared-data/labware/definitions/3/opentrons_24_tuberack_generic_2ml_screwcap/2.json b/shared-data/labware/definitions/3/opentrons_24_tuberack_generic_2ml_screwcap/2.json index 660331eedfd..0914789708c 100644 --- a/shared-data/labware/definitions/3/opentrons_24_tuberack_generic_2ml_screwcap/2.json +++ b/shared-data/labware/definitions/3/opentrons_24_tuberack_generic_2ml_screwcap/2.json @@ -323,7 +323,29 @@ }, "innerLabwareGeometry": { "conicalWell": { - "sections": [] + "sections": [ + { + "shape": "conical", + "topDiameter": 6.5, + "bottomDiameter": 1.21, + "topHeight": 2.08, + "bottomHeight": 0.0 + }, + { + "shape": "conical", + "topDiameter": 8.14, + "bottomDiameter": 6.5, + "topHeight": 3.04, + "bottomHeight": 2.08 + }, + { + "shape": "conical", + "topDiameter": 8.5, + "bottomDiameter": 8.14, + "topHeight": 42.0, + "bottomHeight": 3.04 + } + ] } } } diff --git a/shared-data/labware/definitions/3/opentrons_24_tuberack_nest_1.5ml_screwcap/2.json b/shared-data/labware/definitions/3/opentrons_24_tuberack_nest_1.5ml_screwcap/2.json index 7d7a193d55d..9544e5cc9c2 100644 --- a/shared-data/labware/definitions/3/opentrons_24_tuberack_nest_1.5ml_screwcap/2.json +++ b/shared-data/labware/definitions/3/opentrons_24_tuberack_nest_1.5ml_screwcap/2.json @@ -27,9 +27,9 @@ }, "wells": { "A1": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 18.21, "y": 75.43, @@ -37,9 +37,9 @@ "geometryDefinitionId": "conicalWell" }, "B1": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 18.21, "y": 56.15, @@ -47,9 +47,9 @@ "geometryDefinitionId": "conicalWell" }, "C1": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 18.21, "y": 36.87, @@ -57,9 +57,9 @@ "geometryDefinitionId": "conicalWell" }, "D1": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 18.21, "y": 17.59, @@ -67,9 +67,9 @@ "geometryDefinitionId": "conicalWell" }, "A2": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 38.1, "y": 75.43, @@ -77,9 +77,9 @@ "geometryDefinitionId": "conicalWell" }, "B2": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 38.1, "y": 56.15, @@ -87,9 +87,9 @@ "geometryDefinitionId": "conicalWell" }, "C2": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 38.1, "y": 36.87, @@ -97,9 +97,9 @@ "geometryDefinitionId": "conicalWell" }, "D2": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 38.1, "y": 17.59, @@ -107,9 +107,9 @@ "geometryDefinitionId": "conicalWell" }, "A3": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 57.99, "y": 75.43, @@ -117,9 +117,9 @@ "geometryDefinitionId": "conicalWell" }, "B3": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 57.99, "y": 56.15, @@ -127,9 +127,9 @@ "geometryDefinitionId": "conicalWell" }, "C3": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 57.99, "y": 36.87, @@ -137,9 +137,9 @@ "geometryDefinitionId": "conicalWell" }, "D3": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 57.99, "y": 17.59, @@ -147,9 +147,9 @@ "geometryDefinitionId": "conicalWell" }, "A4": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 77.88, "y": 75.43, @@ -157,9 +157,9 @@ "geometryDefinitionId": "conicalWell" }, "B4": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 77.88, "y": 56.15, @@ -167,9 +167,9 @@ "geometryDefinitionId": "conicalWell" }, "C4": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 77.88, "y": 36.87, @@ -177,9 +177,9 @@ "geometryDefinitionId": "conicalWell" }, "D4": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 77.88, "y": 17.59, @@ -187,9 +187,9 @@ "geometryDefinitionId": "conicalWell" }, "A5": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 97.77, "y": 75.43, @@ -197,9 +197,9 @@ "geometryDefinitionId": "conicalWell" }, "B5": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 97.77, "y": 56.15, @@ -207,9 +207,9 @@ "geometryDefinitionId": "conicalWell" }, "C5": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 97.77, "y": 36.87, @@ -217,9 +217,9 @@ "geometryDefinitionId": "conicalWell" }, "D5": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 97.77, "y": 17.59, @@ -227,9 +227,9 @@ "geometryDefinitionId": "conicalWell" }, "A6": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 117.66, "y": 75.43, @@ -237,9 +237,9 @@ "geometryDefinitionId": "conicalWell" }, "B6": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 117.66, "y": 56.15, @@ -247,9 +247,9 @@ "geometryDefinitionId": "conicalWell" }, "C6": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 117.66, "y": 36.87, @@ -257,9 +257,9 @@ "geometryDefinitionId": "conicalWell" }, "D6": { - "depth": 43.9, + "depth": 42.6, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 1500, "x": 117.66, "y": 17.59, diff --git a/shared-data/labware/definitions/3/opentrons_24_tuberack_nest_1.5ml_snapcap/2.json b/shared-data/labware/definitions/3/opentrons_24_tuberack_nest_1.5ml_snapcap/2.json index c1025a18ad1..af1f609a7f4 100644 --- a/shared-data/labware/definitions/3/opentrons_24_tuberack_nest_1.5ml_snapcap/2.json +++ b/shared-data/labware/definitions/3/opentrons_24_tuberack_nest_1.5ml_snapcap/2.json @@ -29,7 +29,7 @@ "A1": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 18.21, "y": 75.43, @@ -39,7 +39,7 @@ "B1": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 18.21, "y": 56.15, @@ -49,7 +49,7 @@ "C1": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 18.21, "y": 36.87, @@ -59,7 +59,7 @@ "D1": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 18.21, "y": 17.59, @@ -69,7 +69,7 @@ "A2": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 38.1, "y": 75.43, @@ -79,7 +79,7 @@ "B2": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 38.1, "y": 56.15, @@ -89,7 +89,7 @@ "C2": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 38.1, "y": 36.87, @@ -99,7 +99,7 @@ "D2": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 38.1, "y": 17.59, @@ -109,7 +109,7 @@ "A3": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 57.99, "y": 75.43, @@ -119,7 +119,7 @@ "B3": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 57.99, "y": 56.15, @@ -129,7 +129,7 @@ "C3": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 57.99, "y": 36.87, @@ -139,7 +139,7 @@ "D3": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 57.99, "y": 17.59, @@ -149,7 +149,7 @@ "A4": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 77.88, "y": 75.43, @@ -159,7 +159,7 @@ "B4": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 77.88, "y": 56.15, @@ -169,7 +169,7 @@ "C4": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 77.88, "y": 36.87, @@ -179,7 +179,7 @@ "D4": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 77.88, "y": 17.59, @@ -189,7 +189,7 @@ "A5": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 97.77, "y": 75.43, @@ -199,7 +199,7 @@ "B5": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 97.77, "y": 56.15, @@ -209,7 +209,7 @@ "C5": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 97.77, "y": 36.87, @@ -219,7 +219,7 @@ "D5": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 97.77, "y": 17.59, @@ -229,7 +229,7 @@ "A6": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 117.66, "y": 75.43, @@ -239,7 +239,7 @@ "B6": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 117.66, "y": 56.15, @@ -249,7 +249,7 @@ "C6": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 117.66, "y": 36.87, @@ -259,7 +259,7 @@ "D6": { "depth": 37.9, "shape": "circular", - "diameter": 10.2, + "diameter": 9.9, "totalLiquidVolume": 1500, "x": 117.66, "y": 17.59, @@ -328,23 +328,30 @@ "sections": [ { "shape": "spherical", - "radiusOfCurvature": 2.72, - "topHeight": 1.57, + "radiusOfCurvature": 1.87, + "topHeight": 1.56, "bottomHeight": 0.0 }, { "shape": "conical", - "topDiameter": 8.9, + "topDiameter": 8.98, "bottomDiameter": 3.69, - "topHeight": 17.7, - "bottomHeight": 1.57 + "topHeight": 17.4, + "bottomHeight": 1.56 }, { "shape": "conical", "topDiameter": 9.28, - "bottomDiameter": 8.9, + "bottomDiameter": 8.98, + "topHeight": 35.4, + "bottomHeight": 17.4 + }, + { + "shape": "conical", + "topDiameter": 9.9, + "bottomDiameter": 9.28, "topHeight": 37.9, - "bottomHeight": 17.7 + "bottomHeight": 35.4 } ] } diff --git a/shared-data/labware/definitions/3/opentrons_24_tuberack_nest_2ml_screwcap/2.json b/shared-data/labware/definitions/3/opentrons_24_tuberack_nest_2ml_screwcap/2.json index 7b1ab858fe6..a66604fbb00 100644 --- a/shared-data/labware/definitions/3/opentrons_24_tuberack_nest_2ml_screwcap/2.json +++ b/shared-data/labware/definitions/3/opentrons_24_tuberack_nest_2ml_screwcap/2.json @@ -27,9 +27,9 @@ }, "wells": { "A1": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 18.21, "y": 75.43, @@ -37,9 +37,9 @@ "geometryDefinitionId": "conicalWell" }, "B1": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 18.21, "y": 56.15, @@ -47,9 +47,9 @@ "geometryDefinitionId": "conicalWell" }, "C1": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 18.21, "y": 36.87, @@ -57,9 +57,9 @@ "geometryDefinitionId": "conicalWell" }, "D1": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 18.21, "y": 17.59, @@ -67,9 +67,9 @@ "geometryDefinitionId": "conicalWell" }, "A2": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 38.1, "y": 75.43, @@ -77,9 +77,9 @@ "geometryDefinitionId": "conicalWell" }, "B2": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 38.1, "y": 56.15, @@ -87,9 +87,9 @@ "geometryDefinitionId": "conicalWell" }, "C2": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 38.1, "y": 36.87, @@ -97,9 +97,9 @@ "geometryDefinitionId": "conicalWell" }, "D2": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 38.1, "y": 17.59, @@ -107,9 +107,9 @@ "geometryDefinitionId": "conicalWell" }, "A3": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 57.99, "y": 75.43, @@ -117,9 +117,9 @@ "geometryDefinitionId": "conicalWell" }, "B3": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 57.99, "y": 56.15, @@ -127,9 +127,9 @@ "geometryDefinitionId": "conicalWell" }, "C3": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 57.99, "y": 36.87, @@ -137,9 +137,9 @@ "geometryDefinitionId": "conicalWell" }, "D3": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 57.99, "y": 17.59, @@ -147,9 +147,9 @@ "geometryDefinitionId": "conicalWell" }, "A4": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 77.88, "y": 75.43, @@ -157,9 +157,9 @@ "geometryDefinitionId": "conicalWell" }, "B4": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 77.88, "y": 56.15, @@ -167,9 +167,9 @@ "geometryDefinitionId": "conicalWell" }, "C4": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 77.88, "y": 36.87, @@ -177,9 +177,9 @@ "geometryDefinitionId": "conicalWell" }, "D4": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 77.88, "y": 17.59, @@ -187,9 +187,9 @@ "geometryDefinitionId": "conicalWell" }, "A5": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 97.77, "y": 75.43, @@ -197,9 +197,9 @@ "geometryDefinitionId": "conicalWell" }, "B5": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 97.77, "y": 56.15, @@ -207,9 +207,9 @@ "geometryDefinitionId": "conicalWell" }, "C5": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 97.77, "y": 36.87, @@ -217,9 +217,9 @@ "geometryDefinitionId": "conicalWell" }, "D5": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 97.77, "y": 17.59, @@ -227,9 +227,9 @@ "geometryDefinitionId": "conicalWell" }, "A6": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 117.66, "y": 75.43, @@ -237,9 +237,9 @@ "geometryDefinitionId": "conicalWell" }, "B6": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 117.66, "y": 56.15, @@ -247,9 +247,9 @@ "geometryDefinitionId": "conicalWell" }, "C6": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 117.66, "y": 36.87, @@ -257,9 +257,9 @@ "geometryDefinitionId": "conicalWell" }, "D6": { - "depth": 44.05, + "depth": 43.4, "shape": "circular", - "diameter": 8.69, + "diameter": 8.55, "totalLiquidVolume": 2000, "x": 117.66, "y": 17.59, diff --git a/shared-data/labware/definitions/3/opentrons_24_tuberack_nest_2ml_snapcap/2.json b/shared-data/labware/definitions/3/opentrons_24_tuberack_nest_2ml_snapcap/2.json index 7ae81c69e0c..3918d0c0c42 100644 --- a/shared-data/labware/definitions/3/opentrons_24_tuberack_nest_2ml_snapcap/2.json +++ b/shared-data/labware/definitions/3/opentrons_24_tuberack_nest_2ml_snapcap/2.json @@ -29,7 +29,7 @@ "A1": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 18.21, "y": 75.43, @@ -39,7 +39,7 @@ "B1": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 18.21, "y": 56.15, @@ -49,7 +49,7 @@ "C1": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 18.21, "y": 36.87, @@ -59,7 +59,7 @@ "D1": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 18.21, "y": 17.59, @@ -69,7 +69,7 @@ "A2": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 38.1, "y": 75.43, @@ -79,7 +79,7 @@ "B2": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 38.1, "y": 56.15, @@ -89,7 +89,7 @@ "C2": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 38.1, "y": 36.87, @@ -99,7 +99,7 @@ "D2": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 38.1, "y": 17.59, @@ -109,7 +109,7 @@ "A3": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 57.99, "y": 75.43, @@ -119,7 +119,7 @@ "B3": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 57.99, "y": 56.15, @@ -129,7 +129,7 @@ "C3": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 57.99, "y": 36.87, @@ -139,7 +139,7 @@ "D3": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 57.99, "y": 17.59, @@ -149,7 +149,7 @@ "A4": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 77.88, "y": 75.43, @@ -159,7 +159,7 @@ "B4": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 77.88, "y": 56.15, @@ -169,7 +169,7 @@ "C4": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 77.88, "y": 36.87, @@ -179,7 +179,7 @@ "D4": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 77.88, "y": 17.59, @@ -189,7 +189,7 @@ "A5": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 97.77, "y": 75.43, @@ -199,7 +199,7 @@ "B5": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 97.77, "y": 56.15, @@ -209,7 +209,7 @@ "C5": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 97.77, "y": 36.87, @@ -219,7 +219,7 @@ "D5": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 97.77, "y": 17.59, @@ -229,7 +229,7 @@ "A6": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 117.66, "y": 75.43, @@ -239,7 +239,7 @@ "B6": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 117.66, "y": 56.15, @@ -249,7 +249,7 @@ "C6": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 117.66, "y": 36.87, @@ -259,7 +259,7 @@ "D6": { "depth": 39.28, "shape": "circular", - "diameter": 10.18, + "diameter": 9.28, "totalLiquidVolume": 2000, "x": 117.66, "y": 17.59, @@ -362,11 +362,18 @@ }, { "shape": "conical", - "topDiameter": 8.9, + "topDiameter": 8.74, "bottomDiameter": 8.0, - "topHeight": 15.04, + "topHeight": 6.26, "bottomHeight": 3.98 }, + { + "shape": "conical", + "topDiameter": 8.9, + "bottomDiameter": 8.74, + "topHeight": 15.04, + "bottomHeight": 6.26 + }, { "shape": "conical", "topDiameter": 9.28, diff --git a/shared-data/labware/definitions/3/usascientific_12_reservoir_22ml/2.json b/shared-data/labware/definitions/3/usascientific_12_reservoir_22ml/2.json index d17d27c041a..bbc013e5d09 100644 --- a/shared-data/labware/definitions/3/usascientific_12_reservoir_22ml/2.json +++ b/shared-data/labware/definitions/3/usascientific_12_reservoir_22ml/2.json @@ -37,7 +37,7 @@ "wells": { "A1": { "shape": "rectangular", - "depth": 42.16, + "depth": 41.75, "xDimension": 8.33, "yDimension": 71.88, "totalLiquidVolume": 22000, @@ -48,7 +48,7 @@ }, "A2": { "shape": "rectangular", - "depth": 42.16, + "depth": 41.75, "xDimension": 8.33, "yDimension": 71.88, "totalLiquidVolume": 22000, @@ -59,7 +59,7 @@ }, "A3": { "shape": "rectangular", - "depth": 42.16, + "depth": 41.75, "xDimension": 8.33, "yDimension": 71.88, "totalLiquidVolume": 22000, @@ -70,7 +70,7 @@ }, "A4": { "shape": "rectangular", - "depth": 42.16, + "depth": 41.75, "xDimension": 8.33, "yDimension": 71.88, "totalLiquidVolume": 22000, @@ -81,7 +81,7 @@ }, "A5": { "shape": "rectangular", - "depth": 42.16, + "depth": 41.75, "xDimension": 8.33, "yDimension": 71.88, "totalLiquidVolume": 22000, @@ -92,7 +92,7 @@ }, "A6": { "shape": "rectangular", - "depth": 42.16, + "depth": 41.75, "xDimension": 8.33, "yDimension": 71.88, "totalLiquidVolume": 22000, @@ -103,7 +103,7 @@ }, "A7": { "shape": "rectangular", - "depth": 42.16, + "depth": 41.75, "xDimension": 8.33, "yDimension": 71.88, "totalLiquidVolume": 22000, @@ -114,7 +114,7 @@ }, "A8": { "shape": "rectangular", - "depth": 42.16, + "depth": 41.75, "xDimension": 8.33, "yDimension": 71.88, "totalLiquidVolume": 22000, @@ -125,7 +125,7 @@ }, "A9": { "shape": "rectangular", - "depth": 42.16, + "depth": 41.75, "xDimension": 8.33, "yDimension": 71.88, "totalLiquidVolume": 22000, @@ -136,7 +136,7 @@ }, "A10": { "shape": "rectangular", - "depth": 42.16, + "depth": 41.75, "xDimension": 8.33, "yDimension": 71.88, "totalLiquidVolume": 22000, @@ -147,7 +147,7 @@ }, "A11": { "shape": "rectangular", - "depth": 42.16, + "depth": 41.75, "xDimension": 8.33, "yDimension": 71.88, "totalLiquidVolume": 22000, @@ -158,7 +158,7 @@ }, "A12": { "shape": "rectangular", - "depth": 42.16, + "depth": 41.75, "xDimension": 8.33, "yDimension": 71.88, "totalLiquidVolume": 22000, @@ -204,24 +204,32 @@ "innerLabwareGeometry": { "cuboidalWell": { "sections": [ + { + "shape": "spherical", + "radiusOfCurvature": 1.5362, + "topHeight": 0.25, + "bottomHeight": 0.0, + "yCount": 8 + }, { "shape": "squaredcone", "bottomCrossSection": "circular", - "circleDiameter": 2.5, - "rectangleXDimension": 7.98, - "rectangleYDimension": 70.98, - "topHeight": 4.05, - "bottomHeight": 0.0, + "circleDiameter": 1.68, + "rectangleXDimension": 7.9, + "rectangleYDimension": 7.9, + "topHeight": 4.0, + "bottomHeight": 0.25, + "xCount": 1, "yCount": 8 }, { "shape": "cuboidal", "topXDimension": 8.34, "topYDimension": 71.85, - "bottomXDimension": 7.98, - "bottomYDimension": 70.98, + "bottomXDimension": 7.9, + "bottomYDimension": 71.75, "topHeight": 41.75, - "bottomHeight": 4.05 + "bottomHeight": 4.0 } ] } diff --git a/shared-data/labware/definitions/3/usascientific_96_wellplate_2.4ml_deep/2.json b/shared-data/labware/definitions/3/usascientific_96_wellplate_2.4ml_deep/2.json index d9741e18c57..d7011a4920e 100644 --- a/shared-data/labware/definitions/3/usascientific_96_wellplate_2.4ml_deep/2.json +++ b/shared-data/labware/definitions/3/usascientific_96_wellplate_2.4ml_deep/2.json @@ -1211,7 +1211,26 @@ }, "innerLabwareGeometry": { "cuboidalWell": { - "sections": [] + "sections": [ + { + "shape": "cuboidal", + "topXDimension": 7.52, + "topYDimension": 7.52, + "bottomXDimension": 0.25, + "bottomYDimension": 0.25, + "topHeight": 2.63, + "bottomHeight": 0.0 + }, + { + "shape": "cuboidal", + "topXDimension": 8.2, + "topYDimension": 8.2, + "bottomXDimension": 7.52, + "bottomYDimension": 7.52, + "topHeight": 41.3, + "bottomHeight": 2.63 + } + ] } } } diff --git a/shared-data/python/opentrons_shared_data/labware/labware_definition.py b/shared-data/python/opentrons_shared_data/labware/labware_definition.py index c25f37962c1..57f86016de5 100644 --- a/shared-data/python/opentrons_shared_data/labware/labware_definition.py +++ b/shared-data/python/opentrons_shared_data/labware/labware_definition.py @@ -299,6 +299,30 @@ class ConicalFrustum(BaseModel): description="Number of instances of this shape in the stackup, used for wells that have multiple sub-wells", ) + @cached_property + def height_to_volume_table(self) -> Dict[float, float]: + """Return a lookup table of heights to volumes.""" + # the accuracy of this method is approximately +- 10*dx so for dx of 0.001 we have a +- 0.01 ul + dx = 0.005 + total_height = self.topHeight - self.bottomHeight + y = 0.0 + table: Dict[float, float] = {} + # fill in the table + a = self.topDiameter / 2 + b = self.bottomDiameter / 2 + while y < total_height: + r_y = (y / total_height) * (a - b) + b + table[y] = (pi * y / 3) * (b**2 + b * r_y + r_y**2) + y = y + dx + + # we always want to include the volume at the max height + table[total_height] = (pi * total_height / 3) * (b**2 + a * b + a**2) + return table + + @cached_property + def volume_to_height_table(self) -> Dict[float, float]: + return dict((v, k) for k, v in self.height_to_volume_table.items()) + @cached_property def count(self) -> int: return self.xCount * self.yCount diff --git a/step-generation/src/commandCreators/compound/distribute.ts b/step-generation/src/commandCreators/compound/distribute.ts index 9c4c2cc865e..ceba8f3e89b 100644 --- a/step-generation/src/commandCreators/compound/distribute.ts +++ b/step-generation/src/commandCreators/compound/distribute.ts @@ -483,14 +483,20 @@ export const distribute: CommandCreator = ( }), ] : [] - + const aspirateDisposalVolumeOnce = chunkIndex === 0 ? disposalVolume : 0 return [ ...tipCommands, ...configureForVolumeCommand, ...mixBeforeAspirateCommands, curryCommandCreator(aspirate, { pipette, - volume: args.volume * destWellChunk.length + disposalVolume, + volume: + args.volume * destWellChunk.length + + // only add disposal volume if its the 1st chunk and changing tip once + // and not blowing out after dispenses + (args.changeTip === 'once' && blowoutLocation == null + ? aspirateDisposalVolumeOnce + : disposalVolume), labware: args.sourceLabware, well: args.sourceWell, flowRate: aspirateFlowRateUlSec, diff --git a/step-generation/src/commandCreators/compound/transfer.ts b/step-generation/src/commandCreators/compound/transfer.ts index e892dc94b3d..18f99b7e036 100644 --- a/step-generation/src/commandCreators/compound/transfer.ts +++ b/step-generation/src/commandCreators/compound/transfer.ts @@ -263,7 +263,7 @@ export const transfer: CommandCreator = ( ? [ curryCommandCreator(configureForVolume, { pipetteId: args.pipette, - volume: chunksPerSubTransfer, + volume: subTransferVol, }), ] : [] diff --git a/yarn.lock b/yarn.lock index d58c1ef61ac..a651fe1c429 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4127,81 +4127,176 @@ resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.16.2.tgz#29b7b3c70ddf532fe6dcf859cbfc3e4714c34842" integrity sha512-VGodkwtEuZ+ENPz/CpDSl091koMv8ao5jHVMbG1vNK+sbx/48/wVzP84M5xSfDAC69mAKKoEkSo+ym9bXYRK9w== +"@rollup/rollup-android-arm-eabi@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.28.1.tgz#7f4c4d8cd5ccab6e95d6750dbe00321c1f30791e" + integrity sha512-2aZp8AES04KI2dy3Ss6/MDjXbwBzj+i0GqKtWXgw2/Ma6E4jJvujryO6gJAghIRVz7Vwr9Gtl/8na3nDUKpraQ== + "@rollup/rollup-android-arm64@4.16.2": version "4.16.2" resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.16.2.tgz#f50f65d0c3b8b30d070d8616b2dfc0978dd588bd" integrity sha512-5/W1xyIdc7jw6c/f1KEtg1vYDBWnWCsLiipK41NiaWGLG93eH2edgE6EgQJ3AGiPERhiOLUqlDSfjRK08C9xFg== +"@rollup/rollup-android-arm64@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.28.1.tgz#17ea71695fb1518c2c324badbe431a0bd1879f2d" + integrity sha512-EbkK285O+1YMrg57xVA+Dp0tDBRB93/BZKph9XhMjezf6F4TpYjaUSuPt5J0fZXlSag0LmZAsTmdGGqPp4pQFA== + "@rollup/rollup-darwin-arm64@4.16.2": version "4.16.2" resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.16.2.tgz#be3d9fffbf6fc5b9d5f0642f1f0250e0ecab8d3e" integrity sha512-vOAKMqZSTbPfyPVu1jBiy+YniIQd3MG7LUnqV0dA6Q5tyhdqYtxacTHP1+S/ksKl6qCtMG1qQ0grcIgk/19JEA== +"@rollup/rollup-darwin-arm64@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.28.1.tgz#dac0f0d0cfa73e7d5225ae6d303c13c8979e7999" + integrity sha512-prduvrMKU6NzMq6nxzQw445zXgaDBbMQvmKSJaxpaZ5R1QDM8w+eGxo6Y/jhT/cLoCvnZI42oEqf9KQNYz1fqQ== + "@rollup/rollup-darwin-x64@4.16.2": version "4.16.2" resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.16.2.tgz#fe45a772526b2c03d545e20f97a1e5cd60a46e52" integrity sha512-aIJVRUS3Dnj6MqocBMrcXlatKm64O3ITeQAdAxVSE9swyhNyV1dwnRgw7IGKIkDQofatd8UqMSyUxuFEa42EcA== +"@rollup/rollup-darwin-x64@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.28.1.tgz#8f63baa1d31784904a380d2e293fa1ddf53dd4a2" + integrity sha512-WsvbOunsUk0wccO/TV4o7IKgloJ942hVFK1CLatwv6TJspcCZb9umQkPdvB7FihmdxgaKR5JyxDjWpCOp4uZlQ== + +"@rollup/rollup-freebsd-arm64@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.28.1.tgz#30ed247e0df6e8858cdc6ae4090e12dbeb8ce946" + integrity sha512-HTDPdY1caUcU4qK23FeeGxCdJF64cKkqajU0iBnTVxS8F7H/7BewvYoG+va1KPSL63kQ1PGNyiwKOfReavzvNA== + +"@rollup/rollup-freebsd-x64@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.28.1.tgz#57846f382fddbb508412ae07855b8a04c8f56282" + integrity sha512-m/uYasxkUevcFTeRSM9TeLyPe2QDuqtjkeoTpP9SW0XxUWfcYrGDMkO/m2tTw+4NMAF9P2fU3Mw4ahNvo7QmsQ== + "@rollup/rollup-linux-arm-gnueabihf@4.16.2": version "4.16.2" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.16.2.tgz#450ecf66f30a51514413aafa79d28561db73151c" integrity sha512-/bjfUiXwy3P5vYr6/ezv//Yle2Y0ak3a+Av/BKoi76nFryjWCkki8AuVoPR7ZU/ckcvAWFo77OnFK14B9B5JsA== +"@rollup/rollup-linux-arm-gnueabihf@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.28.1.tgz#378ca666c9dae5e6f94d1d351e7497c176e9b6df" + integrity sha512-QAg11ZIt6mcmzpNE6JZBpKfJaKkqTm1A9+y9O+frdZJEuhQxiugM05gnCWiANHj4RmbgeVJpTdmKRmH/a+0QbA== + "@rollup/rollup-linux-arm-musleabihf@4.16.2": version "4.16.2" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.16.2.tgz#1e8807d220047084579cd01499c5476a325e0700" integrity sha512-S24b+tJHwpq2TNRz9T+r71FjMvyBBApY8EkYxz8Cwi/rhH6h+lu/iDUxyc9PuHf9UvyeBFYkWWcrDahai/NCGw== +"@rollup/rollup-linux-arm-musleabihf@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.28.1.tgz#a692eff3bab330d5c33a5d5813a090c15374cddb" + integrity sha512-dRP9PEBfolq1dmMcFqbEPSd9VlRuVWEGSmbxVEfiq2cs2jlZAl0YNxFzAQS2OrQmsLBLAATDMb3Z6MFv5vOcXg== + "@rollup/rollup-linux-arm64-gnu@4.16.2": version "4.16.2" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.16.2.tgz#128adb9dbf0057b989127d2e7fd73931a6729410" integrity sha512-UN7VAXLyeyGbCQWiOtQN7BqmjTDw1ON2Oos4lfk0YR7yNhFEJWZiwGtvj9Ay4lsT/ueT04sh80Sg2MlWVVZ+Ug== +"@rollup/rollup-linux-arm64-gnu@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.28.1.tgz#6b1719b76088da5ac1ae1feccf48c5926b9e3db9" + integrity sha512-uGr8khxO+CKT4XU8ZUH1TTEUtlktK6Kgtv0+6bIFSeiSlnGJHG1tSFSjm41uQ9sAO/5ULx9mWOz70jYLyv1QkA== + "@rollup/rollup-linux-arm64-musl@4.16.2": version "4.16.2" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.16.2.tgz#fddc7730045301a7fb0132532890e5edcb23d2bc" integrity sha512-ZBKvz3+rIhQjusKMccuJiPsStCrPOtejCHxTe+yWp3tNnuPWtyCh9QLGPKz6bFNFbwbw28E2T6zDgzJZ05F1JQ== +"@rollup/rollup-linux-arm64-musl@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.28.1.tgz#865baf5b6f5ff67acb32e5a359508828e8dc5788" + integrity sha512-QF54q8MYGAqMLrX2t7tNpi01nvq5RI59UBNx+3+37zoKX5KViPo/gk2QLhsuqok05sSCRluj0D00LzCwBikb0A== + +"@rollup/rollup-linux-loongarch64-gnu@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.28.1.tgz#23c6609ba0f7fa7a7f2038b6b6a08555a5055a87" + integrity sha512-vPul4uodvWvLhRco2w0GcyZcdyBfpfDRgNKU+p35AWEbJ/HPs1tOUrkSueVbBS0RQHAf/A+nNtDpvw95PeVKOA== + "@rollup/rollup-linux-powerpc64le-gnu@4.16.2": version "4.16.2" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.16.2.tgz#7154fe9ffc6405b2a6555ca931c42c0aa5198c2a" integrity sha512-LjMMFiVBRL3wOe095vHAekL4b7nQqf4KZEpdMWd3/W+nIy5o9q/8tlVKiqMbfieDypNXLsxM9fexOxd9Qcklyg== +"@rollup/rollup-linux-powerpc64le-gnu@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.28.1.tgz#652ef0d9334a9f25b9daf85731242801cb0fc41c" + integrity sha512-pTnTdBuC2+pt1Rmm2SV7JWRqzhYpEILML4PKODqLz+C7Ou2apEV52h19CR7es+u04KlqplggmN9sqZlekg3R1A== + "@rollup/rollup-linux-riscv64-gnu@4.16.2": version "4.16.2" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.16.2.tgz#7a7d091a94fa7c50ebf72d5578475093e01c739e" integrity sha512-ohkPt0lKoCU0s4B6twro2aft+QROPdUiWwOjPNTzwTsBK5w+2+iT9kySdtOdq0gzWJAdiqsV4NFtXOwGZmIsHA== +"@rollup/rollup-linux-riscv64-gnu@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.28.1.tgz#1eb6651839ee6ebca64d6cc64febbd299e95e6bd" + integrity sha512-vWXy1Nfg7TPBSuAncfInmAI/WZDd5vOklyLJDdIRKABcZWojNDY0NJwruY2AcnCLnRJKSaBgf/GiJfauu8cQZA== + "@rollup/rollup-linux-s390x-gnu@4.16.2": version "4.16.2" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.16.2.tgz#39b87bd355dfafbc062ca856d3d6bc5aa1905d89" integrity sha512-jm2lvLc+/gqXfndlpDw05jKvsl/HKYxUEAt1h5UXcMFVpO4vGpoWmJVUfKDtTqSaHcCNw1his1XjkgR9aort3w== +"@rollup/rollup-linux-s390x-gnu@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.28.1.tgz#015c52293afb3ff2a293cf0936b1d43975c1e9cd" + integrity sha512-/yqC2Y53oZjb0yz8PVuGOQQNOTwxcizudunl/tFs1aLvObTclTwZ0JhXF2XcPT/zuaymemCDSuuUPXJJyqeDOg== + "@rollup/rollup-linux-x64-gnu@4.16.2": version "4.16.2" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.16.2.tgz#30b88169db18dec202ab9662d5148523d59da553" integrity sha512-oc5/SlITI/Vj/qL4UM+lXN7MERpiy1HEOnrE+SegXwzf7WP9bzmZd6+MDljCEZTdSY84CpvUv9Rq7bCaftn1+g== +"@rollup/rollup-linux-x64-gnu@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.28.1.tgz#b83001b5abed2bcb5e2dbeec6a7e69b194235c1e" + integrity sha512-fzgeABz7rrAlKYB0y2kSEiURrI0691CSL0+KXwKwhxvj92VULEDQLpBYLHpF49MSiPG4sq5CK3qHMnb9tlCjBw== + "@rollup/rollup-linux-x64-musl@4.16.2": version "4.16.2" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.16.2.tgz#d4fd52a28d5ce4aaed436311d89a9a1eaff87c2d" integrity sha512-/2VWEBG6mKbS2itm7hzPwhIPaxfZh/KLWrYg20pCRLHhNFtF+epLgcBtwy3m07bl/k86Q3PFRAf2cX+VbZbwzQ== +"@rollup/rollup-linux-x64-musl@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.28.1.tgz#6cc7c84cd4563737f8593e66f33b57d8e228805b" + integrity sha512-xQTDVzSGiMlSshpJCtudbWyRfLaNiVPXt1WgdWTwWz9n0U12cI2ZVtWe/Jgwyv/6wjL7b66uu61Vg0POWVfz4g== + "@rollup/rollup-win32-arm64-msvc@4.16.2": version "4.16.2" resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.16.2.tgz#edd352302e3fa6a2d612447590b0a0887cdbf762" integrity sha512-Wg7ANh7+hSilF0lG3e/0Oy8GtfTIfEk1327Bw8juZOMOoKmJLs3R+a4JDa/4cHJp2Gs7QfCDTepXXcyFD0ubBg== +"@rollup/rollup-win32-arm64-msvc@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.28.1.tgz#631ffeee094d71279fcd1fe8072bdcf25311bc11" + integrity sha512-wSXmDRVupJstFP7elGMgv+2HqXelQhuNf+IS4V+nUpNVi/GUiBgDmfwD0UGN3pcAnWsgKG3I52wMOBnk1VHr/A== + "@rollup/rollup-win32-ia32-msvc@4.16.2": version "4.16.2" resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.16.2.tgz#f17cc1db108f364bf6ef427f98844b5f742d31f0" integrity sha512-J/jCDKVMWp0Y2ELnTjpQFYUCUWv1Jr+LdFrJVZtdqGyjDo0PHPa7pCamjHvJel6zBFM3doFFqAr7cmXYWBAbfw== +"@rollup/rollup-win32-ia32-msvc@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.28.1.tgz#06d1d60d5b9f718e8a6c4a43f82e3f9e3254587f" + integrity sha512-ZkyTJ/9vkgrE/Rk9vhMXhf8l9D+eAhbAVbsGsXKy2ohmJaWg0LPQLnIxRdRp/bKyr8tXuPlXhIoGlEB5XpJnGA== + "@rollup/rollup-win32-x64-msvc@4.16.2": version "4.16.2" resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.16.2.tgz#98fb87589960075d39c44784e3a99f67138602f4" integrity sha512-3nIf+SJMs2ZzrCh+SKNqgLVV9hS/UY0UjT1YU8XQYFGLiUfmHYJ/5trOU1XSvmHjV5gTF/K3DjrWxtyzKKcAHA== +"@rollup/rollup-win32-x64-msvc@4.28.1": + version "4.28.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.28.1.tgz#4dff5c4259ebe6c5b4a8f2c5bc3829b7a8447ff0" + integrity sha512-ZvK2jBafvttJjoIdKm/Q/Bh7IJ1Ose9IBOwpOXcOvW3ikGTQGmKDgxTC6oCAzW6PynbkKP8+um1du81XJHZ0JA== + "@serialport/binding-mock@10.2.2": version "10.2.2" resolved "https://registry.yarnpkg.com/@serialport/binding-mock/-/binding-mock-10.2.2.tgz#d322a8116a97806addda13c62f50e73d16125874" @@ -4765,7 +4860,7 @@ "@smithy/types" "^3.0.0" tslib "^2.6.2" -"@storybook/addon-actions@7.6.17", "@storybook/addon-actions@^7.6.16": +"@storybook/addon-actions@7.6.17": version "7.6.17" resolved "https://registry.yarnpkg.com/@storybook/addon-actions/-/addon-actions-7.6.17.tgz#b1be5ab28b22b4a50c6aa0cd0a3671ca5b6f5f71" integrity sha512-TBphs4v6LRfyTpFo/WINF0TkMaE3rrNog7wW5mbz6n0j8o53kDN4o9ZEcygSL5zQX43CAaghQTeDCss7ueG7ZQ== @@ -4820,7 +4915,7 @@ remark-slug "^6.0.0" ts-dedent "^2.0.0" -"@storybook/addon-essentials@^7.6.16": +"@storybook/addon-essentials@7.6.17": version "7.6.17" resolved "https://registry.yarnpkg.com/@storybook/addon-essentials/-/addon-essentials-7.6.17.tgz#d49d9a77edc999518c6871b66032a647787c39f4" integrity sha512-qlSpamxuYfT2taF953nC9QijGF2pSbg1ewMNpdwLTj16PTZvR/d8NCDMTJujI1bDwM2m18u8Yc43ibh5LEmxCw== @@ -4847,7 +4942,7 @@ dependencies: "@storybook/global" "^5.0.0" -"@storybook/addon-links@^7.6.16": +"@storybook/addon-links@7.6.17": version "7.6.17" resolved "https://registry.yarnpkg.com/@storybook/addon-links/-/addon-links-7.6.17.tgz#5a678ff09c1b5056b67cb345c115cfcd343ffe86" integrity sha512-iFUwKObRn0EKI0zMETsil2p9a/81rCuSMEWECsi+khkCAs1FUnD2cT6Ag5ydcNcBXsdtdfDJdtXQrkw+TSoStQ== @@ -5292,7 +5387,7 @@ resolved "https://registry.yarnpkg.com/@storybook/react-dom-shim/-/react-dom-shim-7.6.17.tgz#5875915316f687bf658cc6686ea49f2928eae4b2" integrity sha512-32Sa/G+WnvaPiQ1Wvjjw5UM9rr2c4GDohwCcWVv3/LJuiFPqNS6zglAtmnsrlIBnUwRBMLMh/ekCTdqMiUmfDw== -"@storybook/react-vite@^7.6.16": +"@storybook/react-vite@7.6.17": version "7.6.17" resolved "https://registry.yarnpkg.com/@storybook/react-vite/-/react-vite-7.6.17.tgz#29ea46ef27595d10ad115b33833ed5b167f02960" integrity sha512-4dIm3CuRl44X1TLzN3WoZh/bChzJF7Ud28li9atj9C8db0bb/y0zl8cahrsRFoR7/LyfqdOVLqaztrnA5SsWfg== @@ -5305,7 +5400,7 @@ magic-string "^0.30.0" react-docgen "^7.0.0" -"@storybook/react@7.6.17", "@storybook/react@^7.6.16": +"@storybook/react@7.6.17": version "7.6.17" resolved "https://registry.yarnpkg.com/@storybook/react/-/react-7.6.17.tgz#3e585b37f4a45d01b60543e1952a46ae3da70e81" integrity sha512-lVqzQSU03rRJWYW+gK2gq6mSo3/qtnVICY8B8oP7gc36jVu4ksDIu45bTfukM618ODkUZy0vZe6T4engK3azjA== @@ -5605,6 +5700,11 @@ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f" integrity sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw== +"@types/estree@1.0.6": + version "1.0.6" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.6.tgz#628effeeae2064a1b4e79f78e81d87b7e5fc7b50" + integrity sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw== + "@types/estree@^0.0.51": version "0.0.51" resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.51.tgz#cfd70924a25a3fd32b218e5e420e6897e1ac4f40" @@ -13605,11 +13705,6 @@ immer@5.1.0: resolved "https://registry.yarnpkg.com/immer/-/immer-5.1.0.tgz#38d9eba40dbb0389b7ae7b8b99e4661df0cf89e3" integrity sha512-t6gyFtTcokCuI0tX9KQZJQAkIjSqo/nTeJnwojfty69EzrorZbywwhZ8qNNlF+faajHeRnhOvM2F40KHLFCghQ== -immer@9.0.6: - version "9.0.6" - resolved "https://registry.yarnpkg.com/immer/-/immer-9.0.6.tgz#7a96bf2674d06c8143e327cbf73539388ddf1a73" - integrity sha512-G95ivKpy+EvVAnAab4fVa4YGYn24J1SpEktnJX7JJ45Bd7xqME/SCplFzYFmTbrkwZbQ4xJK1xMTUYBkN6pWsQ== - "immutable@^3.8.1 || ^4.0.0": version "4.3.5" resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.3.5.tgz#f8b436e66d59f99760dc577f5c99a4fd2a5cc5a0" @@ -17463,7 +17558,7 @@ picocolors@^1.0.0: resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== -picocolors@^1.1.0: +picocolors@^1.1.0, picocolors@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== @@ -18325,6 +18420,15 @@ postcss@^8.1.7, postcss@^8.4, postcss@^8.4.38: picocolors "^1.0.0" source-map-js "^1.2.0" +postcss@^8.4.43: + version "8.4.49" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.49.tgz#4ea479048ab059ab3ae61d082190fabfd994fe19" + integrity sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA== + dependencies: + nanoid "^3.3.7" + picocolors "^1.1.1" + source-map-js "^1.2.1" + preact@^10.25.1: version "10.25.1" resolved "https://registry.yarnpkg.com/preact/-/preact-10.25.1.tgz#1c4b84253c42dee874bfbf6a92bdce45e3662665" @@ -19889,6 +19993,34 @@ rollup@^4.13.0: "@rollup/rollup-win32-x64-msvc" "4.16.2" fsevents "~2.3.2" +rollup@^4.20.0: + version "4.28.1" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.28.1.tgz#7718ba34d62b449dfc49adbfd2f312b4fe0df4de" + integrity sha512-61fXYl/qNVinKmGSTHAZ6Yy8I3YIJC/r2m9feHo6SwVAVcLT5MPwOUFe7EuURA/4m0NR8lXG4BBXuo/IZEsjMg== + dependencies: + "@types/estree" "1.0.6" + optionalDependencies: + "@rollup/rollup-android-arm-eabi" "4.28.1" + "@rollup/rollup-android-arm64" "4.28.1" + "@rollup/rollup-darwin-arm64" "4.28.1" + "@rollup/rollup-darwin-x64" "4.28.1" + "@rollup/rollup-freebsd-arm64" "4.28.1" + "@rollup/rollup-freebsd-x64" "4.28.1" + "@rollup/rollup-linux-arm-gnueabihf" "4.28.1" + "@rollup/rollup-linux-arm-musleabihf" "4.28.1" + "@rollup/rollup-linux-arm64-gnu" "4.28.1" + "@rollup/rollup-linux-arm64-musl" "4.28.1" + "@rollup/rollup-linux-loongarch64-gnu" "4.28.1" + "@rollup/rollup-linux-powerpc64le-gnu" "4.28.1" + "@rollup/rollup-linux-riscv64-gnu" "4.28.1" + "@rollup/rollup-linux-s390x-gnu" "4.28.1" + "@rollup/rollup-linux-x64-gnu" "4.28.1" + "@rollup/rollup-linux-x64-musl" "4.28.1" + "@rollup/rollup-win32-arm64-msvc" "4.28.1" + "@rollup/rollup-win32-ia32-msvc" "4.28.1" + "@rollup/rollup-win32-x64-msvc" "4.28.1" + fsevents "~2.3.2" + run-parallel@^1.1.9: version "1.2.0" resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" @@ -20533,6 +20665,11 @@ source-map-js@^1.2.0: resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.0.tgz#16b809c162517b5b8c3e7dcd315a2a5c2612b2af" integrity sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg== +source-map-js@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46" + integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA== + source-map-resolve@^0.5.0: version "0.5.3" resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" @@ -20805,7 +20942,7 @@ storybook-addon-pseudo-states@2.0.0: resolved "https://registry.yarnpkg.com/storybook-addon-pseudo-states/-/storybook-addon-pseudo-states-2.0.0.tgz#4fa251aaea04ebc6d17b7e57e5f09ea240f14583" integrity sha512-tLuuwB1k+xFsX8C1fn4G/vJm5wX33jvSLeqTsJgWwI3/AKJUf6Thbg/kg14I2AwN8nqffjun2PzE05Iea23n0w== -storybook@^7.6.16: +storybook@7.6.17: version "7.6.17" resolved "https://registry.yarnpkg.com/storybook/-/storybook-7.6.17.tgz#d7fdbbf57d61d386b3ccc6721285bc914f54269b" integrity sha512-8+EIo91bwmeFWPg1eysrxXlhIYv3OsXrznTr4+4Eq0NikqAoq6oBhtlN5K2RGS2lBVF537eN+9jTCNbR+WrzDA== @@ -22710,14 +22847,14 @@ vite-node@2.1.8: pathe "^1.1.2" vite "^5.0.0" -vite@5.3.2: - version "5.3.2" - resolved "https://registry.yarnpkg.com/vite/-/vite-5.3.2.tgz#2f0a8531c71060467ed3e0a205a203f269b6d9c8" - integrity sha512-6lA7OBHBlXUxiJxbO5aAY2fsHHzDr1q7DvXYnyZycRs2Dz+dXBWuhpWHvmljTRTpQC2uvGmUFFkSHF2vGo90MA== +vite@5.4.11: + version "5.4.11" + resolved "https://registry.yarnpkg.com/vite/-/vite-5.4.11.tgz#3b415cd4aed781a356c1de5a9ebafb837715f6e5" + integrity sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q== dependencies: esbuild "^0.21.3" - postcss "^8.4.38" - rollup "^4.13.0" + postcss "^8.4.43" + rollup "^4.20.0" optionalDependencies: fsevents "~2.3.3"