opentrons 8.3.1a1__py2.py3-none-any.whl → 8.4.0a0__py2.py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of opentrons might be problematic. Click here for more details.

Files changed (191) hide show
  1. opentrons/calibration_storage/ot2/mark_bad_calibration.py +2 -0
  2. opentrons/calibration_storage/ot2/tip_length.py +6 -6
  3. opentrons/config/advanced_settings.py +9 -11
  4. opentrons/config/feature_flags.py +0 -4
  5. opentrons/config/reset.py +7 -2
  6. opentrons/drivers/asyncio/communication/__init__.py +2 -0
  7. opentrons/drivers/asyncio/communication/async_serial.py +4 -0
  8. opentrons/drivers/asyncio/communication/errors.py +41 -8
  9. opentrons/drivers/asyncio/communication/serial_connection.py +36 -10
  10. opentrons/drivers/flex_stacker/__init__.py +9 -3
  11. opentrons/drivers/flex_stacker/abstract.py +140 -15
  12. opentrons/drivers/flex_stacker/driver.py +593 -47
  13. opentrons/drivers/flex_stacker/errors.py +64 -0
  14. opentrons/drivers/flex_stacker/simulator.py +222 -24
  15. opentrons/drivers/flex_stacker/types.py +211 -15
  16. opentrons/drivers/flex_stacker/utils.py +19 -0
  17. opentrons/execute.py +4 -2
  18. opentrons/hardware_control/api.py +5 -0
  19. opentrons/hardware_control/backends/flex_protocol.py +4 -0
  20. opentrons/hardware_control/backends/ot3controller.py +12 -1
  21. opentrons/hardware_control/backends/ot3simulator.py +3 -0
  22. opentrons/hardware_control/backends/subsystem_manager.py +7 -2
  23. opentrons/hardware_control/instruments/ot2/instrument_calibration.py +10 -6
  24. opentrons/hardware_control/instruments/ot3/pipette_handler.py +59 -6
  25. opentrons/hardware_control/modules/__init__.py +12 -1
  26. opentrons/hardware_control/modules/absorbance_reader.py +11 -9
  27. opentrons/hardware_control/modules/flex_stacker.py +498 -0
  28. opentrons/hardware_control/modules/heater_shaker.py +12 -10
  29. opentrons/hardware_control/modules/magdeck.py +5 -1
  30. opentrons/hardware_control/modules/tempdeck.py +5 -1
  31. opentrons/hardware_control/modules/thermocycler.py +15 -14
  32. opentrons/hardware_control/modules/types.py +191 -1
  33. opentrons/hardware_control/modules/utils.py +3 -0
  34. opentrons/hardware_control/motion_utilities.py +20 -0
  35. opentrons/hardware_control/ot3api.py +145 -15
  36. opentrons/hardware_control/protocols/liquid_handler.py +47 -1
  37. opentrons/hardware_control/types.py +6 -0
  38. opentrons/legacy_commands/commands.py +19 -3
  39. opentrons/legacy_commands/helpers.py +15 -0
  40. opentrons/legacy_commands/types.py +3 -2
  41. opentrons/protocol_api/__init__.py +2 -0
  42. opentrons/protocol_api/_liquid.py +39 -8
  43. opentrons/protocol_api/_liquid_properties.py +20 -19
  44. opentrons/protocol_api/_transfer_liquid_validation.py +91 -0
  45. opentrons/protocol_api/core/common.py +3 -1
  46. opentrons/protocol_api/core/engine/deck_conflict.py +11 -1
  47. opentrons/protocol_api/core/engine/instrument.py +1233 -65
  48. opentrons/protocol_api/core/engine/labware.py +8 -4
  49. opentrons/protocol_api/core/engine/load_labware_params.py +68 -10
  50. opentrons/protocol_api/core/engine/module_core.py +118 -2
  51. opentrons/protocol_api/core/engine/protocol.py +253 -11
  52. opentrons/protocol_api/core/engine/stringify.py +19 -8
  53. opentrons/protocol_api/core/engine/transfer_components_executor.py +853 -0
  54. opentrons/protocol_api/core/engine/well.py +60 -5
  55. opentrons/protocol_api/core/instrument.py +65 -19
  56. opentrons/protocol_api/core/labware.py +6 -2
  57. opentrons/protocol_api/core/legacy/labware_offset_provider.py +7 -3
  58. opentrons/protocol_api/core/legacy/legacy_instrument_core.py +69 -21
  59. opentrons/protocol_api/core/legacy/legacy_labware_core.py +8 -4
  60. opentrons/protocol_api/core/legacy/legacy_protocol_core.py +36 -0
  61. opentrons/protocol_api/core/legacy/legacy_well_core.py +25 -1
  62. opentrons/protocol_api/core/legacy/load_info.py +4 -12
  63. opentrons/protocol_api/core/legacy/module_geometry.py +6 -1
  64. opentrons/protocol_api/core/legacy/well_geometry.py +3 -3
  65. opentrons/protocol_api/core/legacy_simulator/legacy_instrument_core.py +67 -21
  66. opentrons/protocol_api/core/module.py +43 -0
  67. opentrons/protocol_api/core/protocol.py +33 -0
  68. opentrons/protocol_api/core/well.py +21 -1
  69. opentrons/protocol_api/instrument_context.py +245 -123
  70. opentrons/protocol_api/labware.py +75 -11
  71. opentrons/protocol_api/module_contexts.py +140 -0
  72. opentrons/protocol_api/protocol_context.py +156 -16
  73. opentrons/protocol_api/validation.py +51 -41
  74. opentrons/protocol_engine/__init__.py +21 -2
  75. opentrons/protocol_engine/actions/actions.py +5 -5
  76. opentrons/protocol_engine/clients/sync_client.py +6 -0
  77. opentrons/protocol_engine/commands/__init__.py +30 -0
  78. opentrons/protocol_engine/commands/absorbance_reader/__init__.py +0 -1
  79. opentrons/protocol_engine/commands/air_gap_in_place.py +3 -2
  80. opentrons/protocol_engine/commands/aspirate.py +6 -2
  81. opentrons/protocol_engine/commands/aspirate_in_place.py +3 -1
  82. opentrons/protocol_engine/commands/aspirate_while_tracking.py +237 -0
  83. opentrons/protocol_engine/commands/blow_out.py +2 -0
  84. opentrons/protocol_engine/commands/blow_out_in_place.py +4 -1
  85. opentrons/protocol_engine/commands/command_unions.py +69 -0
  86. opentrons/protocol_engine/commands/configure_for_volume.py +3 -0
  87. opentrons/protocol_engine/commands/dispense.py +3 -1
  88. opentrons/protocol_engine/commands/dispense_in_place.py +3 -0
  89. opentrons/protocol_engine/commands/dispense_while_tracking.py +240 -0
  90. opentrons/protocol_engine/commands/drop_tip.py +23 -1
  91. opentrons/protocol_engine/commands/evotip_dispense.py +6 -7
  92. opentrons/protocol_engine/commands/evotip_seal_pipette.py +2 -9
  93. opentrons/protocol_engine/commands/evotip_unseal_pipette.py +1 -7
  94. opentrons/protocol_engine/commands/flex_stacker/__init__.py +106 -0
  95. opentrons/protocol_engine/commands/flex_stacker/close_latch.py +72 -0
  96. opentrons/protocol_engine/commands/flex_stacker/common.py +15 -0
  97. opentrons/protocol_engine/commands/flex_stacker/empty.py +161 -0
  98. opentrons/protocol_engine/commands/flex_stacker/fill.py +164 -0
  99. opentrons/protocol_engine/commands/flex_stacker/open_latch.py +70 -0
  100. opentrons/protocol_engine/commands/flex_stacker/prepare_shuttle.py +112 -0
  101. opentrons/protocol_engine/commands/flex_stacker/retrieve.py +394 -0
  102. opentrons/protocol_engine/commands/flex_stacker/set_stored_labware.py +190 -0
  103. opentrons/protocol_engine/commands/flex_stacker/store.py +288 -0
  104. opentrons/protocol_engine/commands/generate_command_schema.py +31 -2
  105. opentrons/protocol_engine/commands/labware_handling_common.py +24 -0
  106. opentrons/protocol_engine/commands/liquid_probe.py +21 -12
  107. opentrons/protocol_engine/commands/load_labware.py +42 -39
  108. opentrons/protocol_engine/commands/load_lid.py +21 -13
  109. opentrons/protocol_engine/commands/load_lid_stack.py +130 -47
  110. opentrons/protocol_engine/commands/load_module.py +18 -17
  111. opentrons/protocol_engine/commands/load_pipette.py +3 -0
  112. opentrons/protocol_engine/commands/move_labware.py +139 -20
  113. opentrons/protocol_engine/commands/pick_up_tip.py +5 -2
  114. opentrons/protocol_engine/commands/pipetting_common.py +154 -7
  115. opentrons/protocol_engine/commands/prepare_to_aspirate.py +3 -1
  116. opentrons/protocol_engine/commands/reload_labware.py +6 -19
  117. opentrons/protocol_engine/commands/unsafe/unsafe_blow_out_in_place.py +3 -1
  118. opentrons/protocol_engine/errors/__init__.py +8 -0
  119. opentrons/protocol_engine/errors/exceptions.py +50 -0
  120. opentrons/protocol_engine/execution/equipment.py +123 -106
  121. opentrons/protocol_engine/execution/labware_movement.py +8 -6
  122. opentrons/protocol_engine/execution/pipetting.py +233 -26
  123. opentrons/protocol_engine/execution/tip_handler.py +14 -5
  124. opentrons/protocol_engine/labware_offset_standardization.py +173 -0
  125. opentrons/protocol_engine/protocol_engine.py +22 -13
  126. opentrons/protocol_engine/resources/deck_configuration_provider.py +94 -2
  127. opentrons/protocol_engine/resources/deck_data_provider.py +1 -1
  128. opentrons/protocol_engine/resources/labware_data_provider.py +32 -12
  129. opentrons/protocol_engine/resources/labware_validation.py +7 -5
  130. opentrons/protocol_engine/slot_standardization.py +11 -23
  131. opentrons/protocol_engine/state/addressable_areas.py +84 -46
  132. opentrons/protocol_engine/state/frustum_helpers.py +26 -10
  133. opentrons/protocol_engine/state/geometry.py +683 -100
  134. opentrons/protocol_engine/state/labware.py +252 -55
  135. opentrons/protocol_engine/state/module_substates/__init__.py +4 -0
  136. opentrons/protocol_engine/state/module_substates/flex_stacker_substate.py +68 -0
  137. opentrons/protocol_engine/state/module_substates/heater_shaker_module_substate.py +22 -0
  138. opentrons/protocol_engine/state/module_substates/temperature_module_substate.py +13 -0
  139. opentrons/protocol_engine/state/module_substates/thermocycler_module_substate.py +20 -0
  140. opentrons/protocol_engine/state/modules.py +178 -52
  141. opentrons/protocol_engine/state/pipettes.py +54 -0
  142. opentrons/protocol_engine/state/state.py +1 -1
  143. opentrons/protocol_engine/state/tips.py +14 -0
  144. opentrons/protocol_engine/state/update_types.py +180 -25
  145. opentrons/protocol_engine/state/wells.py +54 -8
  146. opentrons/protocol_engine/types/__init__.py +292 -0
  147. opentrons/protocol_engine/types/automatic_tip_selection.py +39 -0
  148. opentrons/protocol_engine/types/command_annotations.py +53 -0
  149. opentrons/protocol_engine/types/deck_configuration.py +72 -0
  150. opentrons/protocol_engine/types/execution.py +96 -0
  151. opentrons/protocol_engine/types/hardware_passthrough.py +25 -0
  152. opentrons/protocol_engine/types/instrument.py +47 -0
  153. opentrons/protocol_engine/types/instrument_sensors.py +47 -0
  154. opentrons/protocol_engine/types/labware.py +110 -0
  155. opentrons/protocol_engine/types/labware_movement.py +22 -0
  156. opentrons/protocol_engine/types/labware_offset_location.py +108 -0
  157. opentrons/protocol_engine/types/labware_offset_vector.py +33 -0
  158. opentrons/protocol_engine/types/liquid.py +40 -0
  159. opentrons/protocol_engine/types/liquid_class.py +59 -0
  160. opentrons/protocol_engine/types/liquid_handling.py +13 -0
  161. opentrons/protocol_engine/types/liquid_level_detection.py +137 -0
  162. opentrons/protocol_engine/types/location.py +193 -0
  163. opentrons/protocol_engine/types/module.py +269 -0
  164. opentrons/protocol_engine/types/partial_tip_configuration.py +76 -0
  165. opentrons/protocol_engine/types/run_time_parameters.py +133 -0
  166. opentrons/protocol_engine/types/tip.py +18 -0
  167. opentrons/protocol_engine/types/util.py +21 -0
  168. opentrons/protocol_engine/types/well_position.py +107 -0
  169. opentrons/protocol_reader/extract_labware_definitions.py +7 -3
  170. opentrons/protocol_reader/file_format_validator.py +5 -3
  171. opentrons/protocol_runner/json_translator.py +4 -2
  172. opentrons/protocol_runner/legacy_command_mapper.py +6 -2
  173. opentrons/protocol_runner/run_orchestrator.py +4 -1
  174. opentrons/protocols/advanced_control/transfers/common.py +48 -1
  175. opentrons/protocols/advanced_control/transfers/transfer_liquid_utils.py +204 -0
  176. opentrons/protocols/api_support/definitions.py +1 -1
  177. opentrons/protocols/api_support/instrument.py +16 -3
  178. opentrons/protocols/labware.py +5 -6
  179. opentrons/protocols/models/__init__.py +0 -21
  180. opentrons/simulate.py +4 -2
  181. opentrons/types.py +15 -6
  182. {opentrons-8.3.1a1.dist-info → opentrons-8.4.0a0.dist-info}/METADATA +4 -4
  183. {opentrons-8.3.1a1.dist-info → opentrons-8.4.0a0.dist-info}/RECORD +187 -147
  184. opentrons/calibration_storage/ot2/models/defaults.py +0 -0
  185. opentrons/calibration_storage/ot3/models/defaults.py +0 -0
  186. opentrons/protocol_api/core/legacy/legacy_robot_core.py +0 -0
  187. opentrons/protocol_engine/types.py +0 -1311
  188. {opentrons-8.3.1a1.dist-info → opentrons-8.4.0a0.dist-info}/LICENSE +0 -0
  189. {opentrons-8.3.1a1.dist-info → opentrons-8.4.0a0.dist-info}/WHEEL +0 -0
  190. {opentrons-8.3.1a1.dist-info → opentrons-8.4.0a0.dist-info}/entry_points.txt +0 -0
  191. {opentrons-8.3.1a1.dist-info → opentrons-8.4.0a0.dist-info}/top_level.txt +0 -0
@@ -1,11 +1,11 @@
1
1
  opentrons/__init__.py,sha256=TQ_Ca_zzAM3iLzAysWKkFkQHG8-imihxDPQbLCYrf-E,4533
2
2
  opentrons/_version.py,sha256=Yw-LZEawGFzHmJ2O2_os3jzZH_k2mGyrjaMT5YVqH3U,461
3
- opentrons/execute.py,sha256=6I7sup3U6-NMu51Vf-EXRWiZc5TQmruW7mRuIQTTMvQ,29244
3
+ opentrons/execute.py,sha256=Y88qICDiHWQjU0L4Ou7DI5OXXu7zZcdkUvNUYmZqIfc,29282
4
4
  opentrons/legacy_broker.py,sha256=XnuEBBlrHCThc31RFW2UR0tGqctqWZ-CZ9vSC4L9whU,1553
5
5
  opentrons/ordered_set.py,sha256=g-SB3qA14yxHu9zjGyc2wC7d2TUCBE6fKZlHAtbPzI8,4082
6
6
  opentrons/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
- opentrons/simulate.py,sha256=eWHly9HRrU9rcglfhZISUzzv1G3dYwCuccfeCa7riEU,42187
8
- opentrons/types.py,sha256=2zF5TwbqnNK0ZNYzv0QxaAJeAJM627I2jN1vk_a1DYc,18038
7
+ opentrons/simulate.py,sha256=de_hZ3GGMxFB2U0nlvISSWpvzPClNsOI-cQ39Aj39RU,42225
8
+ opentrons/types.py,sha256=6g1AwV0jhQ5q9RNru6hQDTHCNlZN_TFFX0kRUskP3CE,18219
9
9
  opentrons/calibration_storage/__init__.py,sha256=Zmc89u8dQh1uc8CzV5hKaSX4DeS2-P0r4PDCAXfS3z4,1608
10
10
  opentrons/calibration_storage/deck_configuration.py,sha256=Zmqw8Vu8jmPYLlqC5ivIBGluAjYbWrg6LMZ7s_qgnUw,2178
11
11
  opentrons/calibration_storage/encoder_decoder.py,sha256=xzXWz-T7snGV56nx6uGmnMpNqZbYFlzIq7gup29-Ds8,938
@@ -14,11 +14,10 @@ opentrons/calibration_storage/helpers.py,sha256=K0nZ70PDUuRqF6UJKlzeRn4MydC7nLW8
14
14
  opentrons/calibration_storage/types.py,sha256=FFuaVpx7cF0uA6wZweoAtj-0rmIvQwRg0s6lzVCYt2Q,924
15
15
  opentrons/calibration_storage/ot2/__init__.py,sha256=E9kkRyUS79Q4EgADwkLTRg6bS4_EY_0IXBI6epAue6E,828
16
16
  opentrons/calibration_storage/ot2/deck_attitude.py,sha256=4P08wkSrOxKmRvGldoOKEFtrLbRBAI4JvWvoeZOXNEc,2602
17
- opentrons/calibration_storage/ot2/mark_bad_calibration.py,sha256=miVcgaQ2BH0fq1iAP2NwM9lXWmlUy-Lu38uGzV4uep0,535
17
+ opentrons/calibration_storage/ot2/mark_bad_calibration.py,sha256=ZXG-vsqYcfPsg2aoQe7oyxt7BtF3NfRGwkQhxlE7Aqw,588
18
18
  opentrons/calibration_storage/ot2/pipette_offset.py,sha256=i7H7hJW0ptl-IfbkxDVdYiKQc-KCHWF8VCg3a1fdzeQ,4086
19
- opentrons/calibration_storage/ot2/tip_length.py,sha256=QHOl10fPdS51FlMjX1VEHhuDMoHeF0LkGyxngPf1p7s,9792
19
+ opentrons/calibration_storage/ot2/tip_length.py,sha256=4byZ3WvCLRe2lEgg1-xPA2Fb8vSe-GuG-zp11afjutg,9798
20
20
  opentrons/calibration_storage/ot2/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
21
- opentrons/calibration_storage/ot2/models/defaults.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
22
21
  opentrons/calibration_storage/ot2/models/v1.py,sha256=2jXEYlZmSO7-CnZGNDwnbSxtmVIOlYnJ98mG0miXnKM,5888
23
22
  opentrons/calibration_storage/ot3/__init__.py,sha256=ZN6Z_X8c7ZIlA31iu4U3vvlGfllxyGLgy0aVwg-7RIQ,750
24
23
  opentrons/calibration_storage/ot3/deck_attitude.py,sha256=d0MmVFYVYMLgQ0KjQ0wcqGHfnmMB7fvgA_FW02eOyFU,2300
@@ -26,18 +25,17 @@ opentrons/calibration_storage/ot3/gripper_offset.py,sha256=wKKrughKvOt_w2LZZpo7A
26
25
  opentrons/calibration_storage/ot3/module_offset.py,sha256=H2J1sB3JOFeyyur_TpzyQpGOey805HPOnt7VgvrWxQk,4245
27
26
  opentrons/calibration_storage/ot3/pipette_offset.py,sha256=6I1i11SWi-Ef9hecMui3wXjOmEWpi1ZFO4WPvXppVxo,2768
28
27
  opentrons/calibration_storage/ot3/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
29
- opentrons/calibration_storage/ot3/models/defaults.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
30
28
  opentrons/calibration_storage/ot3/models/v1.py,sha256=p1Yj8RcVyQWql0HqDuOFYIApRgQtWtg7Qrd9L3Er0Xk,3826
31
29
  opentrons/cli/__init__.py,sha256=zP_n-SnZnZc_yzb0JnnwvUvIBiIpupGOQrqPZrSmnRs,430
32
30
  opentrons/cli/__main__.py,sha256=Jvtl3eMKDT1eX00BGULAw6WqenKe911TMTg4b97y5dA,73
33
31
  opentrons/cli/analyze.py,sha256=70ZR9bTZCedmvaYcrklRZXozgINf_gZseYgb1oSZVJ8,14837
34
32
  opentrons/config/__init__.py,sha256=B4kGZSsy6ESki_-K33sd0mRNrN_h2_bcZL8zEDOxHEg,21251
35
- opentrons/config/advanced_settings.py,sha256=TAnzrGuZhSCokYii2efgW6SeJuAST2xyxO7hNlFxVUk,26560
33
+ opentrons/config/advanced_settings.py,sha256=pixIHtmbbAoIrQyvy98TtZoZ1uo3BpETQMPx7Wgfaio,26447
36
34
  opentrons/config/defaults_ot2.py,sha256=_l63QNW0aWTh0HGZcgF592ETJg8-W4M0XrQbbzkAPjA,6031
37
35
  opentrons/config/defaults_ot3.py,sha256=T2NlloDzdwbZBM4Mev2cj7BWcJQbbYOb2OPonvi2gfc,14750
38
- opentrons/config/feature_flags.py,sha256=aDWEOEQn9qQ0JcPpIgKq7IHLegbt2d7bMKSkt_5DbKo,2511
36
+ opentrons/config/feature_flags.py,sha256=qiuHQ8Rna-iyhcOmCk-r91iOE6-dXWSC5fhOagHXoDA,2368
39
37
  opentrons/config/gripper_config.py,sha256=ch3PtyP96KOCQi6otf4U6Okt04JrEYhqpQM0SkmP_cA,1721
40
- opentrons/config/reset.py,sha256=5NNCfdUfV9_9CVLuXS8Ita1hrCbHbaSwZ7VnmyjBOEQ,6407
38
+ opentrons/config/reset.py,sha256=qwq6UVhfra8tEglG35iS_uy-Tq5HXjqunE0fR7tmxdM,6740
41
39
  opentrons/config/robot_configs.py,sha256=kwLdafVqaBiFE_JvgqGFhLRcmTMLyKAb4DvBsMD_qs4,6094
42
40
  opentrons/config/types.py,sha256=RgGgNS9PA49DpRBt2KiHr0ao0HZ0bM31Zk_Ki1wOUR0,4681
43
41
  opentrons/drivers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -52,15 +50,17 @@ opentrons/drivers/absorbance_reader/driver.py,sha256=V8hLjNRVzlRPtVW04XEWrXytn06
52
50
  opentrons/drivers/absorbance_reader/hid_protocol.py,sha256=OM6Ogkl1Lw3d501rfHcRI3lPZITAVKdxCR6JkHdKMCQ,3836
53
51
  opentrons/drivers/absorbance_reader/simulator.py,sha256=MiFQgnVNq2R35T3u59idcKlrj6SEFllt8tdupfH5jKQ,2419
54
52
  opentrons/drivers/asyncio/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
55
- opentrons/drivers/asyncio/communication/__init__.py,sha256=tZRFNRlnYMNCN1x-erkWVlTX8VDzB18dESIakjqPdPQ,475
56
- opentrons/drivers/asyncio/communication/async_serial.py,sha256=fYQ-RzU5KpNMFfVB_lJYXs5DzNCHNf8U5wKOjW-mY6c,5186
57
- opentrons/drivers/asyncio/communication/errors.py,sha256=iL4hk-FXz12pq9Asf4x7Tc4QVCbxNERDiG3JBJaFSUE,1092
58
- opentrons/drivers/asyncio/communication/serial_connection.py,sha256=SXpMiEJsLodVGzH4NJCUkykdWhswi76HjuF5jfIyS9M,16088
59
- opentrons/drivers/flex_stacker/__init__.py,sha256=LUL0NAwHyyjczsVHpN8OcA--GlXmmzaZuDzX3yqi86U,215
60
- opentrons/drivers/flex_stacker/abstract.py,sha256=YOG9e4Mt2YqqZzt14iDT9F8-q5egvZ8HbovwOXELZfg,2302
61
- opentrons/drivers/flex_stacker/driver.py,sha256=oaXptmST-eA79nv58lYB5_envMKpo33oiuJ9hJliaFw,9680
62
- opentrons/drivers/flex_stacker/simulator.py,sha256=xBGmmWvSfJ_spdn77oTqhLFHawFkET9bk0LaT_PQgQE,3180
63
- opentrons/drivers/flex_stacker/types.py,sha256=ndb_AmRrGfUtZPxokF8-0kDTNDmtHpdi7OkhP4F0wXg,3046
53
+ opentrons/drivers/asyncio/communication/__init__.py,sha256=b-rd_I0ecbexGm6b9T91JLfFUrCyui9V1N1j-fzy0SQ,523
54
+ opentrons/drivers/asyncio/communication/async_serial.py,sha256=oL92Uh3IGP3IEcP2814YaT4_uHbwjLPRVZtkoID0LmQ,5311
55
+ opentrons/drivers/asyncio/communication/errors.py,sha256=Kq_BvYEnnKsZ2J4R7p122QZhjoBY8SJisb6EkSch3Gs,2358
56
+ opentrons/drivers/asyncio/communication/serial_connection.py,sha256=doA1v65dzZkR0UDX8jJa61UTDWIKroUcniLi014VUPs,17180
57
+ opentrons/drivers/flex_stacker/__init__.py,sha256=tyOSSk27z6yhRv81cGvcE52D8hHVPdpkLnsyrYJJAZ8,447
58
+ opentrons/drivers/flex_stacker/abstract.py,sha256=KENicHxITHHqfb0LhdNUYW573uFt0RjJ4DSNhGgQLYg,6676
59
+ opentrons/drivers/flex_stacker/driver.py,sha256=Uy7b2zVgUUFwkfYdxYlIw1GJ-Ifoi9GAOURYmkGX-8U,32054
60
+ opentrons/drivers/flex_stacker/errors.py,sha256=MrHl71uWAOLPX6lUB86-aX7wjP1KumFQWaMsAVg8L88,2041
61
+ opentrons/drivers/flex_stacker/simulator.py,sha256=6yFJGoB8ojOYLl3LBQDTaMMXM-BGoCl23oWQSfipXX8,10866
62
+ opentrons/drivers/flex_stacker/types.py,sha256=A4ffwoPiBhxDT0TAfVZv-qS3lZrvuPcuH3SWEILeK_A,7219
63
+ opentrons/drivers/flex_stacker/utils.py,sha256=sV04CYFLsFdwHb71qWk0MrHLR1FyLjiJ0mShb8wwUHs,623
64
64
  opentrons/drivers/heater_shaker/__init__.py,sha256=Dj7oE_oEQxdADDR39Pv6F4FAB8s53nweU8Us8IbpGxQ,212
65
65
  opentrons/drivers/heater_shaker/abstract.py,sha256=YtCHyNsissBquwLTZn4tPHjl0fu6J0OeW1ilLxSQq5Y,1940
66
66
  opentrons/drivers/heater_shaker/driver.py,sha256=SQ9aXxTvqqcQNa_22FPDTMei-iF2fD6E6mwW8wai4JQ,6973
@@ -96,35 +96,35 @@ opentrons/drivers/thermocycler/simulator.py,sha256=2yVZVar5z1o6K5nRE-IQS9KFXJ3dg
96
96
  opentrons/hardware_control/__init__.py,sha256=5t_YhGQ1uw4iB6QYtNz7qV8AcwLjaWtjmMP5B4YekEE,2353
97
97
  opentrons/hardware_control/__main__.py,sha256=DnlYdphZKLHiLCeXmnMDer6CclhberfTk_wCAbiy9Gc,2585
98
98
  opentrons/hardware_control/adapters.py,sha256=mm-gumoaF7CFrP0ad6W4xafbJRq6RaOD0GffSibWR-Q,3888
99
- opentrons/hardware_control/api.py,sha256=btjNm4GmPT2JYc-xasJ7-GFe6UFsxd0SLvSVz6xfhd8,50897
99
+ opentrons/hardware_control/api.py,sha256=6XneTPsQnmsyxS-aQJisI856Elm0KvQFWZ2XO2NhaL0,51093
100
100
  opentrons/hardware_control/constants.py,sha256=Ku-XABo7AN9JQ0tef8oPk-JlUuhQQLeP9S0h7kx5GEA,227
101
101
  opentrons/hardware_control/dev_types.py,sha256=GFOe3U3Xi_SpcGm5xuMTJobLeJC0ncmRbONjRAiJLsg,3446
102
102
  opentrons/hardware_control/errors.py,sha256=NMF5_AvX22ENTHPpUlElgF-0aeaxEhYXnOq2lfIzuiM,1433
103
103
  opentrons/hardware_control/execution_manager.py,sha256=WG3NF1OJgorAmRpkx8BRnqFeQsPUQ5w7H1kVK7pC-7A,5984
104
104
  opentrons/hardware_control/module_control.py,sha256=u0RpbOgr5pV5exgKg3qvNQdwdVuy_9QkPpMZtWthsm8,12074
105
- opentrons/hardware_control/motion_utilities.py,sha256=rD0sP_hfrGbsafKQvK7qp7_hn4u7h_RVBAT3wk-dESQ,9482
105
+ opentrons/hardware_control/motion_utilities.py,sha256=7VG60YQ9MSMAZ0hO-q-kRAdkcebzrx7uIPtc6FMCViE,10311
106
106
  opentrons/hardware_control/nozzle_manager.py,sha256=dqD8XlYsOu0PFFyxvmsMypBB52Gi6x-VIwhykV7JhuU,16868
107
107
  opentrons/hardware_control/ot3_calibration.py,sha256=NkR2EoNq47dkHEXAdF6PI9atuPTxW0X51TFnRrMq5JU,44723
108
- opentrons/hardware_control/ot3api.py,sha256=k9nizxiHBs_B93izfYDQbQP9GyPvIwXTlaOPAqMGKsU,119580
108
+ opentrons/hardware_control/ot3api.py,sha256=nrqEkElCDdsno6Ct2IROX05u3UU1pOY5OWeHpF6W8is,124577
109
109
  opentrons/hardware_control/pause_manager.py,sha256=wmNmraimE2yZQVqCxX_rtQHUWRzpzyQEaym9fLMgyww,888
110
110
  opentrons/hardware_control/poller.py,sha256=rx6Q-UxbUIj3ek69IlYenFh7BFuasszRO-GzzhRPuHQ,3885
111
111
  opentrons/hardware_control/robot_calibration.py,sha256=ilszGjZPspKiEk8MQPaHm2B-ljeisAYflKl8UyQ_D0U,7155
112
112
  opentrons/hardware_control/simulator_setup.py,sha256=3gelKslgMDobLpIlhVHmAqmZ5wXe1hZcK4RwKRMy3aM,9277
113
113
  opentrons/hardware_control/thread_manager.py,sha256=3-PrzUzJFSjUVtrgTUEF5GIStsDufvaSbp51B2x-yJY,17253
114
114
  opentrons/hardware_control/threaded_async_lock.py,sha256=qMaIrJ4KSMzvKm0hWt4o74Joah-sc404LlhMjCJue2g,3316
115
- opentrons/hardware_control/types.py,sha256=WFIO9Kb7_vd3HdHSVJQam8AcYPr87slPFHB5j07sRek,22740
115
+ opentrons/hardware_control/types.py,sha256=g4Bu49pTA1YeHDHM4LA8TgRsN5n7p7BnoHAiOZZGTeA,22860
116
116
  opentrons/hardware_control/util.py,sha256=RSlfjzrmhtntSexamNpPn3-qrnbrdhuzEjOnxv8v7lA,8650
117
117
  opentrons/hardware_control/backends/__init__.py,sha256=u5Dg3AFZuvDV7hFqJ8I4F9D1dLDt6e-TsFJReyBYe4E,212
118
118
  opentrons/hardware_control/backends/controller.py,sha256=MOVMq9s1rY_jHhajHB1hQ1MgXXyY54-gMrrvAuMsOFg,14622
119
119
  opentrons/hardware_control/backends/errors.py,sha256=ZiVP16exHMTWWOajxffnXEqI6NNfeTw-4RkhXE0EBJA,249
120
120
  opentrons/hardware_control/backends/estop_state.py,sha256=_GYjI6OaD3CZNduWV2_RVeOtQ4K_Fg-SP8yU01ENhCY,6554
121
- opentrons/hardware_control/backends/flex_protocol.py,sha256=bV8LX8RaBid6kwl3gIhumnxlir-v7nQ2gc84FqRPPgk,12175
122
- opentrons/hardware_control/backends/ot3controller.py,sha256=gn07Wa2jhrI4dF1eM1MfG3pZvRD8wPVslsXrsK6Xi_8,66670
123
- opentrons/hardware_control/backends/ot3simulator.py,sha256=E-GRvBnQss0t5gMaprKChENC1ZVVi3Su-4-PxPN4OmY,29642
121
+ opentrons/hardware_control/backends/flex_protocol.py,sha256=jRfqqwt5OShcbJpmvdGVaqqcGsqJ3lFMQBvvDzOJP_0,12338
122
+ opentrons/hardware_control/backends/ot3controller.py,sha256=e5f_9SvArE9mhCllgDJqhh3IkLEhBydfbBggQBW4MWM,67132
123
+ opentrons/hardware_control/backends/ot3simulator.py,sha256=rmEKUtwwQV6Der-gqOWcfqXdVfnFR9Xx9zXG9aSH-CQ,29726
124
124
  opentrons/hardware_control/backends/ot3utils.py,sha256=VYpyvaE3M9CzhgLL4ObgcXP3gmSGyaOyiRVqcbudCn0,23087
125
125
  opentrons/hardware_control/backends/simulator.py,sha256=q_9PQlBdOyCa9sj2gLqYWZ-fG9v4mddDAiScL-yHCXY,17549
126
126
  opentrons/hardware_control/backends/status_bar_state.py,sha256=ftNn2ouBhPZiFbUm79I4z6ndup7XDmcNowhb-KREspE,8529
127
- opentrons/hardware_control/backends/subsystem_manager.py,sha256=lv2ON2pZ7PY2tg3-qxpAlLYIg1SJxX3erHJvcfy5UGs,16484
127
+ opentrons/hardware_control/backends/subsystem_manager.py,sha256=3rey8TPuA1eOcO11zjlhRVGHZK7dEOADu8kHzyDgJYI,16707
128
128
  opentrons/hardware_control/backends/tip_presence_manager.py,sha256=wzK8bvcr4lcCOwIwAz8ParXtXfrbt5hod7-stTP0ts0,5973
129
129
  opentrons/hardware_control/backends/types.py,sha256=Fo7qTDyYfKW-NhcymqLQfkPBWOm6GO89q3JUqNnLIUo,329
130
130
  opentrons/hardware_control/emulation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -155,7 +155,7 @@ opentrons/hardware_control/emulation/scripts/run_smoothie.py,sha256=i6dj-2NezrBE
155
155
  opentrons/hardware_control/instruments/__init__.py,sha256=wS7omegQYF7BQVmd-h4U6A2o3f6Kzt8vQsqmQiY-5WU,126
156
156
  opentrons/hardware_control/instruments/instrument_abc.py,sha256=UqKb7_8E4ivlTV2tEXcnfY8AdyVaHcrRAI4LhXSFSrM,1074
157
157
  opentrons/hardware_control/instruments/ot2/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
158
- opentrons/hardware_control/instruments/ot2/instrument_calibration.py,sha256=FnmWbVX_mdyj-fm84Mrmw_AXxYQ56wUJpVWVlqlG9D0,4749
158
+ opentrons/hardware_control/instruments/ot2/instrument_calibration.py,sha256=qyj0RWLYayq9q_9bOocgNK7xu4fCDyigSk-kN7d5YhA,4873
159
159
  opentrons/hardware_control/instruments/ot2/pipette.py,sha256=aQ3gSnjtN3OwS2-9WiRTKjrHy6Bz9gUkZwT94y2Tcdg,28200
160
160
  opentrons/hardware_control/instruments/ot2/pipette_handler.py,sha256=Vd8COWH7wdKKkPvXvrm_blpzXAfnc2KDez5-Tei9-A8,38045
161
161
  opentrons/hardware_control/instruments/ot3/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -163,21 +163,22 @@ opentrons/hardware_control/instruments/ot3/gripper.py,sha256=BuXxrkh1UC12Ki1e0X9
163
163
  opentrons/hardware_control/instruments/ot3/gripper_handler.py,sha256=GVz6QreaYSo-Vt2b-NHnMV2ehjlDxJCWaqq5ufQYCYM,6055
164
164
  opentrons/hardware_control/instruments/ot3/instrument_calibration.py,sha256=9ERAxnUHc2BBoLPloLwGoNDqssKsjzBQv1cOjwp8umk,5432
165
165
  opentrons/hardware_control/instruments/ot3/pipette.py,sha256=t3K28QLEmj3DS_KXoXbeBjEE5PfQJlSePzvSNt4GXsI,32376
166
- opentrons/hardware_control/instruments/ot3/pipette_handler.py,sha256=O_ZpbGgLSZ1tGYIn_6PuLUr5u5vPBVdU_1jIRrzFzGU,37181
167
- opentrons/hardware_control/modules/__init__.py,sha256=YLYJShv7FDI_QHboB2lQkSxoILoW9ms6Opu45ZeMMBU,1306
168
- opentrons/hardware_control/modules/absorbance_reader.py,sha256=Z6ikQiySpDi4tP1VxT-Q0WCNLUqfyzJ-iw7B7t-CUNI,13573
166
+ opentrons/hardware_control/instruments/ot3/pipette_handler.py,sha256=evUNsLBhkUTSptsSWUpD_7iiTT189QaHAE88UKDW9Cw,39334
167
+ opentrons/hardware_control/modules/__init__.py,sha256=9tLhyYJ4AQ2Kch8oD4-NEZ_dGC7IqY5hOdGLyKqJjLs,1549
168
+ opentrons/hardware_control/modules/absorbance_reader.py,sha256=e1b-CxYEdFva0H5DuQ51B3hxfGlqktIvKpvkYkyGozI,13609
169
169
  opentrons/hardware_control/modules/errors.py,sha256=cREqoMc6nwGxQbLvZYDfIlq1mCv0alN42J7qxNBNiOY,165
170
- opentrons/hardware_control/modules/heater_shaker.py,sha256=tp-j8jbkY1oRrvHkXwmMRng-tX4ARPPrEJsS1mSQFCo,15026
170
+ opentrons/hardware_control/modules/flex_stacker.py,sha256=ldHZxl36JvHjJE4Cq9aoKzGuTGCJH5VId6JV1koEu6g,18279
171
+ opentrons/hardware_control/modules/heater_shaker.py,sha256=ESXlhv4DzfEWE5g1jkJk4XOQW6usNHyQsMLHFJ-NG20,15032
171
172
  opentrons/hardware_control/modules/lid_temp_status.py,sha256=XKlr41I41g8aFxrrqGZxecHWgtBceG9ZrOSkyqq1khE,1201
172
- opentrons/hardware_control/modules/magdeck.py,sha256=JFho2nncgP4CSvwCEZwmX7v10qWKuwPaJ78-r1kBDVQ,7580
173
+ opentrons/hardware_control/modules/magdeck.py,sha256=iT1MsdHidaPhtFxyBGG56Gmlin1B6rCT_tkgYy8--bo,7661
173
174
  opentrons/hardware_control/modules/mod_abc.py,sha256=w_LvJjb1ZJadnk-EZf0bzxtueL5DG0_ZrRlSrrRZOkk,7223
174
175
  opentrons/hardware_control/modules/module_calibration.py,sha256=2gtufh6D523Dp1N9-qd6z_AuyXFAAxZ0-p7wZvHUxuY,3033
175
176
  opentrons/hardware_control/modules/plate_temp_status.py,sha256=wBVEUjK4DgkBKGF4Ii5X1ZWcw3Cb946jHlbnRaQbFW8,2168
176
- opentrons/hardware_control/modules/tempdeck.py,sha256=NdvZXfbiuLiiWnKqqmegc1BkYqdvcmYe_3Rz4NgMi-s,10175
177
- opentrons/hardware_control/modules/thermocycler.py,sha256=shYHcJwoizu2Scdgs6vwUiRv_u-WqMnvApuVvXifNpI,25188
178
- opentrons/hardware_control/modules/types.py,sha256=6k7VjRUE_0rOVyl3LeHNKJvd-Zvmlw3WT81PO47sdv8,5904
177
+ opentrons/hardware_control/modules/tempdeck.py,sha256=Ye1sMLZLw7v5UwuXfdCl-zEI81QzN4OB4tijLY5Q1AY,10259
178
+ opentrons/hardware_control/modules/thermocycler.py,sha256=gTZpNcCt3ToJSFrv2jlcWk0mfkCOtOLPX_ZP2e6Sq2Q,25180
179
+ opentrons/hardware_control/modules/types.py,sha256=ydWQGjXHs96PRe2CqaiMI_oOLdHoHyW_7d7kQ4UyUyo,10975
179
180
  opentrons/hardware_control/modules/update.py,sha256=HrJGzEyRpOMKbO5sw6W-UfxEGNyTb7ipyLZSO4CIJrs,8825
180
- opentrons/hardware_control/modules/utils.py,sha256=HETf5fjvRkfHcL9-K7Tk3ocdyOJS0RFxcA1M8rgfO_w,2277
181
+ opentrons/hardware_control/modules/utils.py,sha256=2tT_el-MB7qCSY-FNn0BmFStTeYZNwyxqDtQKJQ35zc,2406
181
182
  opentrons/hardware_control/protocols/__init__.py,sha256=R5ECj8jVnk99k0ep5WY9xgfy9-APF1lcYOVpxacwKxI,3453
182
183
  opentrons/hardware_control/protocols/asyncio_configurable.py,sha256=CgrwetG2daH3xTFOFGUqC2Qlr84avfGAmg9yiDyAEEs,302
183
184
  opentrons/hardware_control/protocols/calibratable.py,sha256=NxbZ9hcA7MoKbskdCnXdYHWzo_sK-3vIX3Xxtt8MAb8,1420
@@ -191,7 +192,7 @@ opentrons/hardware_control/protocols/gripper_controller.py,sha256=SUFoSDu3Qri4en
191
192
  opentrons/hardware_control/protocols/hardware_manager.py,sha256=S9BSJ0XsnU5A9nFLMDZfmiizx3T41WhU_91VYj4bUVE,1629
192
193
  opentrons/hardware_control/protocols/identifiable.py,sha256=YmhScb4Tr4mxVObL1i7pI-EouTMAmV-2oqKbovhdnrE,575
193
194
  opentrons/hardware_control/protocols/instrument_configurer.py,sha256=5zUCAchtoJ6QPFqcGRb7FOsnt2nxjxlRJdt18IidKqQ,7729
194
- opentrons/hardware_control/protocols/liquid_handler.py,sha256=vgeDOaPD-wNP3mJ69j0ATT9saMs4Hj7MQVAOFI-LduM,8403
195
+ opentrons/hardware_control/protocols/liquid_handler.py,sha256=2KUYDnwzwi7m8GQKdwhUaFbQs9aUa7Y1RdrOWwaKyxw,10157
195
196
  opentrons/hardware_control/protocols/module_provider.py,sha256=QDKCWqrW-6IeI91IICBTJClK0C__mgq3A0-M3Wa9ee8,487
196
197
  opentrons/hardware_control/protocols/motion_controller.py,sha256=mWUHVDqju9gcMDU9adk6UzueZ9i-x2nU5hmcd_fHHyk,9737
197
198
  opentrons/hardware_control/protocols/position_estimator.py,sha256=BrqK5AJn9747c4LX0ZWBJWgWHjyX977CHBI7WVvO-9Q,1922
@@ -203,134 +204,138 @@ opentrons/hardware_control/scripts/gripper_control.py,sha256=aUt9MAo6DXDhY4BfJRe
203
204
  opentrons/hardware_control/scripts/repl.py,sha256=RojtHjYV6sa6O4SeNEgs5SvnAK0imQK_XqoLQTKlzWU,5982
204
205
  opentrons/hardware_control/scripts/tc_control.py,sha256=V6hOzoRXL3xqIUEz8Raldd45aO2JgN5m5Hr08c1G8Ko,2741
205
206
  opentrons/legacy_commands/__init__.py,sha256=erkaz7hc2iHsTtjpFDWrR1V5n47it3U1qxD2zL9CkuE,63
206
- opentrons/legacy_commands/commands.py,sha256=e2xYTc3lNqDD0DKPDsfORkzRj_zKpptKE5oXCLABd4o,10063
207
- opentrons/legacy_commands/helpers.py,sha256=dRtOWQdeRnDn23yBHdPQfahug5OFwuUzdkT7qRj1gRM,2675
207
+ opentrons/legacy_commands/commands.py,sha256=xapk1pSeIB_d6MwGj9wbQf0wRlJqOhtHeyws4w1L7j0,10437
208
+ opentrons/legacy_commands/helpers.py,sha256=mOr7W0Qq-q8JBvLTBX7FOhU2DBsgS4z1mQhXCCkEsPg,3253
208
209
  opentrons/legacy_commands/module_commands.py,sha256=EO2YtrfzCCaGPYjGXWfk6jjSHiEqk1E6D8Ef2qDi1qI,7769
209
210
  opentrons/legacy_commands/protocol_commands.py,sha256=nPYBrm7j9co83IGWjzae2GOVkEZdu58pXQv3eOdpLzg,1383
210
211
  opentrons/legacy_commands/publisher.py,sha256=n7hT9n4zahM3N2LNIAEs7hqs5RbHHie_tev2M8pke4Y,5441
211
- opentrons/legacy_commands/types.py,sha256=miO8RDnnyxN61IC1CGuhNslYqbWsTbAONXY_wvnZuFk,24429
212
+ opentrons/legacy_commands/types.py,sha256=1TynBINPQsiZoWAo4D6IdEEx58XCX31BL4ZXHgieFxs,24507
212
213
  opentrons/motion_planning/__init__.py,sha256=Gma3SLAvKbL7QuhVGtL9zFx5vlk_7YBF0TjYZQSiv9s,755
213
214
  opentrons/motion_planning/adjacent_slots_getters.py,sha256=z7HkfC8ymAdGHdFq-sC_1_cERX_v29b9x4HKtJ6gp9I,5390
214
215
  opentrons/motion_planning/deck_conflict.py,sha256=gJG0dCQOvdEP-rr9EbVSGJCQPDXgvd04Jn4crGEbYLo,12604
215
216
  opentrons/motion_planning/errors.py,sha256=-TOop0-NWaWb6KNYRoYLpWMca_kwsxxXEf31WuDSGls,948
216
217
  opentrons/motion_planning/types.py,sha256=C4jXv5b02iBQmePMLrujgvHwqvEphBWtY18MPfKQpj4,1188
217
218
  opentrons/motion_planning/waypoints.py,sha256=Oo5BD7FKNN5WHDLA-ptHMurc3pmRPA-a6srazVyiUXs,8210
218
- opentrons/protocol_api/__init__.py,sha256=bUHjonf05rEQFtx8FfWiIo2_ZJDm2ciooOWHb8qNGt8,2485
219
- opentrons/protocol_api/_liquid.py,sha256=Dy_gCne5EsNx_WUuD-bzqPPBq2bjzq5PT60_KYO9t1k,2465
220
- opentrons/protocol_api/_liquid_properties.py,sha256=h6FKpL3JdNJ4OIwlRgK2JrWxBTkdJJs-dBv0Qd6Bnng,25370
219
+ opentrons/protocol_api/__init__.py,sha256=ZzmlAkCkLLDE2OLJXGIswjEmc_eiU5o91MUgknE79EY,2535
220
+ opentrons/protocol_api/_liquid.py,sha256=Z9irWcYnDbL6nl-A3DG4PmD2JYsyyzzIL0B38sdrb_Y,3506
221
+ opentrons/protocol_api/_liquid_properties.py,sha256=JJksL7GGVonHSkq0jHYrWCPV7E2q3SimGITI-Xavhm8,25853
221
222
  opentrons/protocol_api/_nozzle_layout.py,sha256=-WA71bRDISs9bLwHdWqAyM7HBc53sOA8_BOVqYsuN3g,1095
222
223
  opentrons/protocol_api/_parameter_context.py,sha256=dvGMVObWDSERrXfTKSIwc4YeIdF_RD-q8ASNaSBTcxw,12967
223
224
  opentrons/protocol_api/_parameters.py,sha256=BGH50BFawoNnh7NRDh0tRrNncdwz_Ta25tbQfwtlYoM,1298
225
+ opentrons/protocol_api/_transfer_liquid_validation.py,sha256=h4GKve38RQhRqv9b8q_7AiyT6i50mtUVKhiuGDkb_VQ,3308
224
226
  opentrons/protocol_api/_types.py,sha256=6tPCuOmZ5GNtu-24zyY6O-KkXEqzhTAlHlKHQH3Dvzs,1413
225
227
  opentrons/protocol_api/config.py,sha256=r9lyvXjagTX_g3q5FGURPpcz2IA9sSF7Oa_1mKx-7cw,625
226
228
  opentrons/protocol_api/create_protocol_context.py,sha256=wwsZje0L__oDnu1Yrihau320_f-ASloR9eL1QCtkOh8,7612
227
229
  opentrons/protocol_api/deck.py,sha256=94vFceg1SC1bAGd7TvC1ZpYwnJR-VlzurEZ6jkacYeg,8910
228
230
  opentrons/protocol_api/disposal_locations.py,sha256=NRiSGmDR0LnbyEkWSOM-o64uR2fUoB1NWJG7Y7SsJSs,7920
229
- opentrons/protocol_api/instrument_context.py,sha256=m6J8W5J9jy-gHU5f5A_hoFtAt1v3iP7Q0uKKgL8bEWo,107284
230
- opentrons/protocol_api/labware.py,sha256=mgnk1SiiN4CnBwBUolE4C4gRaBZqAoLylsJANPCyWHU,59241
231
- opentrons/protocol_api/module_contexts.py,sha256=jU3IMPE5L78-KuZRfaPwB6xO0kiTup65IteqMPFOFR0,42262
231
+ opentrons/protocol_api/instrument_context.py,sha256=O0DWbYvkn6EIQu2A7xue2CbhcWZsGBbyVYt2JjMyS5g,111728
232
+ opentrons/protocol_api/labware.py,sha256=q980jPZuBwvgwzIdBRyGn7bsJKiEPoAxO7y3iGPoczk,61406
233
+ opentrons/protocol_api/module_contexts.py,sha256=3tVXj6Q7n-WuTJPU_dvIQLzzGv1P-jsMuDtMVpuhAf8,48291
232
234
  opentrons/protocol_api/module_validation_and_errors.py,sha256=XL_m72P8rcvGO2fynY7UzXLcpGuI6X4s0V6Xf735Iyc,1464
233
- opentrons/protocol_api/protocol_context.py,sha256=Y9jCj1t3wzawarPyOVcp-8qUmEnIhpyVSaHujVfT9Nk,60601
235
+ opentrons/protocol_api/protocol_context.py,sha256=58qRTY9xqoAuagsfIHlu662vxOtPzk1XCUJtstCkDMU,66184
234
236
  opentrons/protocol_api/robot_context.py,sha256=hlxFOYx0SkqK7TihT25leYt-RJ_VvhDDzzclf1L8DKw,10405
235
- opentrons/protocol_api/validation.py,sha256=DBwHNSI8c6konumlahq7B-Q-4Ipjs2yfGuzaOu4OZOQ,28671
237
+ opentrons/protocol_api/validation.py,sha256=uiVTHyJF3wSh5LLfaIDBTELoMNCAT17E767ursB_s1g,28684
236
238
  opentrons/protocol_api/core/__init__.py,sha256=-g74o8OtBB0LmmOvwkRvPgrHt7fF7T8FRHDj-x_-Onk,736
237
- opentrons/protocol_api/core/common.py,sha256=AR-V6nsK6jnw9olO_sTRO0rNqOg5FPQOoNbLx7m_OZ8,1088
239
+ opentrons/protocol_api/core/common.py,sha256=q9ZbfpRdBvB3iDAOCyONtupvkYP5n1hjE-bwqGcwP_U,1172
238
240
  opentrons/protocol_api/core/core_map.py,sha256=gq3CIYPxuPvozf8yj8FprqBfs3e4ZJGQ6s0ViPbwV08,1757
239
- opentrons/protocol_api/core/instrument.py,sha256=zipwHqXBSJwTBwAteyC3T7cJFY7n-5IKObToUzBySm8,11500
240
- opentrons/protocol_api/core/labware.py,sha256=EtDbwtlN-ZXH6W2aXE4FnbXl-Lxpifj1niF_pqTGoNM,4222
241
- opentrons/protocol_api/core/module.py,sha256=p02IstVzfSqTpwbfiCYkPv_xpeb78Hi__PQKJPePxNs,12548
242
- opentrons/protocol_api/core/protocol.py,sha256=WdbSFxVr_04Kef1DWbdZJ4zMPq0BvuM7uJyXs7f6cU8,8096
241
+ opentrons/protocol_api/core/instrument.py,sha256=ML9sUgyoQ50k2Brb3Z4ulEO7Y78S4PEDoA1lRG02hoA,13422
242
+ opentrons/protocol_api/core/labware.py,sha256=-ZOjkalikXCV3ptehKCNaWGAdKxIdwne8LRFQW9NAm4,4290
243
+ opentrons/protocol_api/core/module.py,sha256=z2STDyqqxZX3y6UyJVDnajeFXMEn1ie2NRBYHhry_XE,13838
244
+ opentrons/protocol_api/core/protocol.py,sha256=v7v28jfeHSfOf-tqFDW2chGtrEatPiZ1y6YNwHfmtAs,9058
243
245
  opentrons/protocol_api/core/robot.py,sha256=QMAqj5Oqq3_IhTDyUF4jpWI4j2LRPP9crUiaYD_RUv4,1385
244
- opentrons/protocol_api/core/well.py,sha256=quBAF0UjcsRcqZy_Cb13NIkfnx4y1VbEHZgGcDIl-wI,2393
246
+ opentrons/protocol_api/core/well.py,sha256=tvUh73NSgiUz5j4KFTwJjBzcWO3tdaf3ZAS1qK8krJE,3123
245
247
  opentrons/protocol_api/core/well_grid.py,sha256=BU28DKaBgEU_JdZ6pEzrwNxmuh6TkO4zlg7Pq1Rf5Xk,1516
246
248
  opentrons/protocol_api/core/engine/__init__.py,sha256=B_5T7zgkWDb1mXPg4NbT-wBkQaK-WVokMMnJRNu7xiM,582
247
- opentrons/protocol_api/core/engine/deck_conflict.py,sha256=0viwOidafVd0XhS8C7V72i68-ZYzHfDUNeqGozTA1G8,12012
249
+ opentrons/protocol_api/core/engine/deck_conflict.py,sha256=q3JViIAHDthIqq6ce7h2gxw3CHRfYsm5kkwzuXB-Gnc,12334
248
250
  opentrons/protocol_api/core/engine/exceptions.py,sha256=aZgNrmYEeuPZm21nX_KZYtvyjv5h_zPjxxgPkEV7_bw,725
249
- opentrons/protocol_api/core/engine/instrument.py,sha256=WDNVbNAfOre01xYttuWA1VLAbEyHcq9n6xoX15ll8BU,42842
250
- opentrons/protocol_api/core/engine/labware.py,sha256=RLlBnFPrnbud5vCSDmjCosw-bDMq0Xijf7BURfvLsK0,8276
251
- opentrons/protocol_api/core/engine/load_labware_params.py,sha256=cwbmGyYp5ZOyANtEm6KKwT_n8fnYc5RysBst9nRh7Ls,4607
252
- opentrons/protocol_api/core/engine/module_core.py,sha256=TWqMqRgekBISMOEtlveDByJQI6JfSu-rvYOnqQbTgGY,26923
251
+ opentrons/protocol_api/core/engine/instrument.py,sha256=OrOJAtvpkWacfwvFCx1ylH5t15kOjzYjb5O1lk6YzLs,92622
252
+ opentrons/protocol_api/core/engine/labware.py,sha256=1xvzguNnK7aecFLiJK0gtRrZ5kpwtzLS73HnKvdJ5lc,8413
253
+ opentrons/protocol_api/core/engine/load_labware_params.py,sha256=I4Cb8rqpBhmykQuZE8QRG802APrdCy_TYS88rm_9oGA,7159
254
+ opentrons/protocol_api/core/engine/module_core.py,sha256=MLPgYSRJHUZPZ9rTLvsg3GlpL5b6-Pjk5UBgXCGrL6U,30994
253
255
  opentrons/protocol_api/core/engine/overlap_versions.py,sha256=PyGvQtQUg1wzNtkuGZtxwXm019PoIjq7em2JiWaxbXc,675
254
256
  opentrons/protocol_api/core/engine/pipette_movement_conflict.py,sha256=IxTcekperTA_Jv-fF6OonUif-jX5KESrdjf15oVD0GE,15360
255
257
  opentrons/protocol_api/core/engine/point_calculations.py,sha256=C2eF0fvJQGMqQv3DzNhc1-m8HTAXTyTsHPJEPrEUEmo,2502
256
- opentrons/protocol_api/core/engine/protocol.py,sha256=4fdH5KnSx5TY9bUu5IZ3DS9JU1NK04TbWKMfRdnLjpc,37100
258
+ opentrons/protocol_api/core/engine/protocol.py,sha256=_1gdg4lq2B21LWV9Tqb924E39HCPCgozAHxaCRGDSIk,46759
257
259
  opentrons/protocol_api/core/engine/robot.py,sha256=o252HrC11tmZ5LRKT6NwXCoTeqcQFXHeNjszfxbJHjo,5366
258
- opentrons/protocol_api/core/engine/stringify.py,sha256=Hu2nHILjQn_OSxqBOZgiah9jSsyznxhy-Md5EvWclUg,2421
259
- opentrons/protocol_api/core/engine/well.py,sha256=I63FOBGaEW061HYF1kMbvQhyBbWEu5hDjZxIBr11Ykk,5497
260
+ opentrons/protocol_api/core/engine/stringify.py,sha256=GwFgEhFMk-uPfFQhQG_2mkaf4cxaItiY8RW7rZwiooQ,2794
261
+ opentrons/protocol_api/core/engine/transfer_components_executor.py,sha256=REPKWIgi62AjralChau1rIOWpgH6nrWPUFS5aJNgfqo,36955
262
+ opentrons/protocol_api/core/engine/well.py,sha256=PEtDwdC8NkHjqasJaDaVDtzc_WFw-qv5Lf7IU1DkrLY,7570
260
263
  opentrons/protocol_api/core/legacy/__init__.py,sha256=_9jCJNKG3SlS_vljVu8HHkZmtLf4F-f-JHALLF5d5go,401
261
264
  opentrons/protocol_api/core/legacy/deck.py,sha256=qHqcGo-Kdkl9L1aOE0pwrm9tsAnwkXbt4rIOr_VEP-s,13955
262
- opentrons/protocol_api/core/legacy/labware_offset_provider.py,sha256=uNNeHecIz_A9u19QalpVKF7pxloHqLg27EFcD9dbYtc,3735
263
- opentrons/protocol_api/core/legacy/legacy_instrument_core.py,sha256=bX43ZnvQM9a1DjhLXGdHyo1boGBrvxbPNmasPXd7ZGw,25060
264
- opentrons/protocol_api/core/legacy/legacy_labware_core.py,sha256=eAnwAHwmX76-1ZRWMmiDABS1fmPRvuTTsx4fI-V5uJU,8295
265
+ opentrons/protocol_api/core/legacy/labware_offset_provider.py,sha256=2DLIby9xmUrwLb2ht8hZbvNTxqPhNzWijd7yCb2cqP8,3783
266
+ opentrons/protocol_api/core/legacy/legacy_instrument_core.py,sha256=DLxOahHdOcEsCspf0EB_qjAvALM3nSK61azwuQnwE2I,27101
267
+ opentrons/protocol_api/core/legacy/legacy_labware_core.py,sha256=WQOgtMlq--zv0Ch7mmraYr9rQBT4ie2zHqwgamBq9J8,8606
265
268
  opentrons/protocol_api/core/legacy/legacy_module_core.py,sha256=tUhj88NKBMjCmCg6wjh1e2HX4d5hxjh8ZeJiYXaTaGY,23111
266
- opentrons/protocol_api/core/legacy/legacy_protocol_core.py,sha256=1f-niL47WAZItbFJ9IQubGUfKPRYFScBelzh6H5stwc,22429
267
- opentrons/protocol_api/core/legacy/legacy_robot_core.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
268
- opentrons/protocol_api/core/legacy/legacy_well_core.py,sha256=E9RiflLhbBiakshjzDFQWSiH-WGiFaaHSMrU1Esk5ng,4377
269
- opentrons/protocol_api/core/legacy/load_info.py,sha256=j-fzoUKwvXNS_5CQsE43XI5YOPfTu1WE6h1u9GzGCE4,1925
270
- opentrons/protocol_api/core/legacy/module_geometry.py,sha256=wbWeHomppdCDmp_nKrnNWbnRAapOamkhFMnaoY7ShTw,20886
271
- opentrons/protocol_api/core/legacy/well_geometry.py,sha256=dCsDIpMbaIpb0AW_VrnSIJdRYi8ombyMpaA7n1X46Jg,4643
269
+ opentrons/protocol_api/core/legacy/legacy_protocol_core.py,sha256=ZIFC7W6YA61oWWkq5xYGTcI_2S2pmALz16uB1R8HVyQ,23670
270
+ opentrons/protocol_api/core/legacy/legacy_well_core.py,sha256=bh4VVrhQ2beBTotUpVF_zL8c1WW7jIo5oPphfsFmekE,5175
271
+ opentrons/protocol_api/core/legacy/load_info.py,sha256=r-WaH5ZJb3TRCp_zvbMMh0P4BhbZM8HsBs1K_pU98dk,1857
272
+ opentrons/protocol_api/core/legacy/module_geometry.py,sha256=lvWFHZ81-JFw-1VZUW1R3yUIb59xpXT6H3jwlRintRo,21082
273
+ opentrons/protocol_api/core/legacy/well_geometry.py,sha256=n5bEsvYZXXTAqYSAqlXd5t40bUPPrJ2Oj2frBZafQHA,4719
272
274
  opentrons/protocol_api/core/legacy_simulator/__init__.py,sha256=m9bLHGDJ6LSYC2WPm8tpOuu0zWSOPIrlybQgjRQBw9k,647
273
- opentrons/protocol_api/core/legacy_simulator/legacy_instrument_core.py,sha256=l8CnI9dZSi8jIMSme7bcQx4g_HU43_jyFDn40MMwI_c,20772
275
+ opentrons/protocol_api/core/legacy_simulator/legacy_instrument_core.py,sha256=obeYJXQ0KNW4dhLgYSmDWWQQ5o2pA-6BddfwDJkV5tY,22608
274
276
  opentrons/protocol_api/core/legacy_simulator/legacy_protocol_core.py,sha256=28HrrHzeUfnGKXpZqQ-VM8WbPiadqVhKj2S9y33q6Lo,2910
275
- opentrons/protocol_engine/__init__.py,sha256=XJbITFkal0o_5izTZ4IMnNUabhDZw4puRolaI7drAkA,3361
277
+ opentrons/protocol_engine/__init__.py,sha256=UPSk7MbidkiSH_h4V3yxMvyTePKpRr5DM9-wfkJrlSo,4094
276
278
  opentrons/protocol_engine/create_protocol_engine.py,sha256=tfDIsC7_JKlRiCXPB_8tuxRsssU6o0ViRmWbGPtX9QA,7582
277
279
  opentrons/protocol_engine/engine_support.py,sha256=5wqk5CHudpOUCSNsalWRmBSeHaCT6bEmcYAn9P60L0w,923
278
280
  opentrons/protocol_engine/error_recovery_policy.py,sha256=ejsIywnz9DMv_XK-mo58PynW34sSDgnziPAw2g5m9G8,2873
281
+ opentrons/protocol_engine/labware_offset_standardization.py,sha256=s_AqRwpM6KD_nll62-x4fFsxMf1885uA4TVz1NFfyuM,6835
279
282
  opentrons/protocol_engine/plugins.py,sha256=pSEzpItf4RVO2NwoGSbDpmNtO0B0-G2W0g2sIzdyjkI,3449
280
- opentrons/protocol_engine/protocol_engine.py,sha256=uAGQ8Ka_dJeMQ_9MXTInFzpympBiyLDsQRDGqBvKsw8,28088
281
- opentrons/protocol_engine/slot_standardization.py,sha256=VyjXIvSAIRyhV68RiX6wYHDOcohO9GhwXGe0pkiuhHk,4407
282
- opentrons/protocol_engine/types.py,sha256=detygdLRtL6ZtWp8pbAj50KyMLgQy4NeCd4pcAWRq8E,41945
283
+ opentrons/protocol_engine/protocol_engine.py,sha256=lM7yfRuigE6Je4NwhR9-oKS4jzXPw8NSDXNugtKEdbk,28343
284
+ opentrons/protocol_engine/slot_standardization.py,sha256=1YjzQSLHrVPeoTDDN9evu9kbJKCpQzLHT2-C3uINwoU,4004
283
285
  opentrons/protocol_engine/actions/__init__.py,sha256=Zm5AwWOkc9QZJo8WBww8P73KYIwRFjid0Vi1NLPXSik,1561
284
286
  opentrons/protocol_engine/actions/action_dispatcher.py,sha256=CiJG8djKxyjZZX_T7lhPZnEuLXV1yE41ZnvzsmCHoLU,944
285
287
  opentrons/protocol_engine/actions/action_handler.py,sha256=N907GFwLJc0OMiQFGa7Bz8RAgWtfeipN286QSwEZ1iA,341
286
- opentrons/protocol_engine/actions/actions.py,sha256=c5e6D2mjxtNpWMJG6yGz5I1skB23Og0l0j1LSlPckX0,8053
288
+ opentrons/protocol_engine/actions/actions.py,sha256=O2y-d31xPgw0JfpXr4U9lgEPf-x7N0U-KOm9MunLtVg,8091
287
289
  opentrons/protocol_engine/actions/get_state_update.py,sha256=tsnfhZDFHWER6y6UV57LlaYrnxYJnASBsfQ55fdGh5g,1128
288
290
  opentrons/protocol_engine/clients/__init__.py,sha256=ILmfVL5SOkWzRpL2XXh0Q0MizOj7E2i-WObVuIsWAQE,161
289
- opentrons/protocol_engine/clients/sync_client.py,sha256=hOwDYOo5-UrmpvZXbDi8-JMDKtO0fKfHiPo6mcGYNHM,5591
291
+ opentrons/protocol_engine/clients/sync_client.py,sha256=G5hik77cqRbM_jrHp-j0NN3ovVDXbs9yCJ8XW4MChZw,5745
290
292
  opentrons/protocol_engine/clients/transports.py,sha256=QejmtG5TjgOLUXpNhOzor_q-7MFI1qNfsguwkzY6Rxc,7177
291
- opentrons/protocol_engine/commands/__init__.py,sha256=xvEbKtPOtL--FrUwjpBP-s2an8-HQJQtakMnXpnuWKE,16945
292
- opentrons/protocol_engine/commands/air_gap_in_place.py,sha256=0pHGdUitN2si1Evj-2uTeC9qUYcUANs8igzrfUSDi7s,5270
293
- opentrons/protocol_engine/commands/aspirate.py,sha256=gWZaI0TL_CMU-OvcjEur2K6Fz2_5s2Am_AN8Iohp_c8,7793
294
- opentrons/protocol_engine/commands/aspirate_in_place.py,sha256=1oAq0QYSJqeTcPAcxvZ-Uwy-4pri0Gf-3I-HBN_hpIk,6416
295
- opentrons/protocol_engine/commands/blow_out.py,sha256=5HyPqRFTDEIulrCvNUBGCgdpYsIoh0fCcsIP-NHpe3I,4216
296
- opentrons/protocol_engine/commands/blow_out_in_place.py,sha256=C9tu4m5QnlKXew38g_gGLlCqJWH4I8o6Zd2qBgzuWg4,3264
293
+ opentrons/protocol_engine/commands/__init__.py,sha256=dSwU-1M2Y4VKRDs2WPw3dAGaz1Zm6e0TitJEtn_rvII,17842
294
+ opentrons/protocol_engine/commands/air_gap_in_place.py,sha256=Z1Tz2wFtEnlJBf_0xW0tEvX1yYJbA8ZmdZcHG_YIKwE,5387
295
+ opentrons/protocol_engine/commands/aspirate.py,sha256=ZxpwQ5Zq-AS11aNfgxx6PsL_MrBEaawAxAi7jWwpIRE,7920
296
+ opentrons/protocol_engine/commands/aspirate_in_place.py,sha256=vJiLSZqEzuMj-kuQESZevHM5g9brXAo159GhaFyEQm8,6530
297
+ opentrons/protocol_engine/commands/aspirate_while_tracking.py,sha256=e7zbGgdXebnMHCoWpAdlhB5fo2U7OrKF3ZR2dz4V1E0,8584
298
+ opentrons/protocol_engine/commands/blow_out.py,sha256=3gboq4x5S8fq7j4ZZGNClXFDlOjcdW1v2g58GPdhaPI,4338
299
+ opentrons/protocol_engine/commands/blow_out_in_place.py,sha256=jm2XXyJfIP9-AAFwXhD59_13nX18-i6QqpLGb-lK7sI,3391
297
300
  opentrons/protocol_engine/commands/command.py,sha256=1hWH_KWg_WDL4R4VXe1ZH2vO6pYt5SA-ZpuPPF1oV5E,10149
298
- opentrons/protocol_engine/commands/command_unions.py,sha256=qNGcHlHEqYVoIBhJR5nloK5Om2nIlaVQIuoF0a4d4M0,24059
301
+ opentrons/protocol_engine/commands/command_unions.py,sha256=CzPSoGF4cFoxuOxS7-nX0rJ-dAkBfEKSmu7pwyVpgA4,26375
299
302
  opentrons/protocol_engine/commands/comment.py,sha256=-6o07x-MZ6-IvZas84OVFmqF0gAbbKWJZIlGVYThCqM,1638
300
- opentrons/protocol_engine/commands/configure_for_volume.py,sha256=bEjRuGDQW2ks1YU3ktnIdy6GgtLAtgdCUm_NhKuWWc8,3487
303
+ opentrons/protocol_engine/commands/configure_for_volume.py,sha256=Ntx0Qi55GtJ5Gm4ZMBCCxo4xWIgb1tHy4Sn1BRzPlKc,3612
301
304
  opentrons/protocol_engine/commands/configure_nozzle_layout.py,sha256=M_s5Ee03a7sSnbvkibDHzEqZwkca0y8J7F60EnSEq7A,3849
302
305
  opentrons/protocol_engine/commands/custom.py,sha256=vOJc7QSNnYTpLvJm98OfDKjgcvVFRZs1eEKEd9WkPN0,2157
303
- opentrons/protocol_engine/commands/dispense.py,sha256=wbDBDpc80c14AudywUoFTQYWPL8EJHirtSfrEMDZyNY,6293
304
- opentrons/protocol_engine/commands/dispense_in_place.py,sha256=h2ASkZW-PlrJViN7ZNBDaaklIeF5n3sZkIAdrPcTqgA,6147
305
- opentrons/protocol_engine/commands/drop_tip.py,sha256=2L4tGsDFh8xQwro5FKiZ6onVgo5FRpGVe708vvhsDs4,6900
306
+ opentrons/protocol_engine/commands/dispense.py,sha256=gmjBXgGuWhB-SEUboXiNHqkaUrmpRTqSN4Dy362ln8w,6444
307
+ opentrons/protocol_engine/commands/dispense_in_place.py,sha256=gcj0HXUkPrU3Qz_DbWzP3XZHuB8tXSMTo9CFoGi25lw,6263
308
+ opentrons/protocol_engine/commands/dispense_while_tracking.py,sha256=VCLWwlAbaTr9K_dLl5KOC9rvoGBEwMPyIo_zfijfTgo,8432
309
+ opentrons/protocol_engine/commands/drop_tip.py,sha256=ZZ63IoiT4dgWcemAHhNQfV4DUhkl-ToJyTRTxIiyAkc,7895
306
310
  opentrons/protocol_engine/commands/drop_tip_in_place.py,sha256=gwSNEKBwds7kOTucXKSK74ozrDe7Cqhta7NR6IqKV3g,7062
307
- opentrons/protocol_engine/commands/evotip_dispense.py,sha256=RKnItIOHJHTa0J_SioyWI2s4DuRrbnakA6lGp6UrPXI,4847
308
- opentrons/protocol_engine/commands/evotip_seal_pipette.py,sha256=N2vCLnH9TQ9AuRfikHk7StJ_LU1wQFd8U3ppP-0BcD4,11474
309
- opentrons/protocol_engine/commands/evotip_unseal_pipette.py,sha256=JBhG8Kbu5PFrDa5b_Q8n-O582oq55ZgPn65kUAZwh0A,5363
310
- opentrons/protocol_engine/commands/generate_command_schema.py,sha256=OzjMuHNJ7uCyjA7XBrQ18-j0L48W2kLPDFJ6FBM5aUo,1184
311
+ opentrons/protocol_engine/commands/evotip_dispense.py,sha256=5OPrBmLMne1HiUzfkHJN5joZxiJAbkeZxbEsGPTtfVI,4636
312
+ opentrons/protocol_engine/commands/evotip_seal_pipette.py,sha256=5r2ma1-0MJ4YYLDG7TAfhfhw5sZPMcfPwsrPPAJxZAs,11023
313
+ opentrons/protocol_engine/commands/evotip_unseal_pipette.py,sha256=RXCo2opcKrFiR97hISNXfPGrHGj0eiPHwAZJMi0jY9w,4888
314
+ opentrons/protocol_engine/commands/generate_command_schema.py,sha256=21Al_XQyRMNTb2ssVaxcNSPlgreOsCtKVXf8kZgpvR4,2296
311
315
  opentrons/protocol_engine/commands/get_next_tip.py,sha256=JS5hN_UScAiUIo_j7KT2cR1GDj3hDvaNPTSovWbgTHo,4828
312
316
  opentrons/protocol_engine/commands/get_tip_presence.py,sha256=vK80XN5qCzK44SOSxH3QJkIj9dPmvri4J4FZJeP1X08,2543
313
317
  opentrons/protocol_engine/commands/hash_command_params.py,sha256=obWy4TbVH97SyhNqrSD6iP1wgZ20JoaH1rilZCjXxIs,1530
314
318
  opentrons/protocol_engine/commands/home.py,sha256=g77hewv-puMxEHFy0PPnl8-Nkbb7K-2qk36HbWG_Nik,3326
315
- opentrons/protocol_engine/commands/liquid_probe.py,sha256=pC_wbfOm8kEtm345TutvzMDffLB41myHA2goEJMvskg,15286
316
- opentrons/protocol_engine/commands/load_labware.py,sha256=hE1JFK1UvSkcgfWSIMZ15lXUZ2xJEbzWWpZrKoTD0DU,8822
317
- opentrons/protocol_engine/commands/load_lid.py,sha256=AduXlkH8NDnnfE4egahKZ5vKFtlLPAhzfhK8Eigx2s4,5118
318
- opentrons/protocol_engine/commands/load_lid_stack.py,sha256=ia554JXnoBmU1M5IkVovQ92WB-xCKSnsL0geFbHBZgo,6896
319
+ opentrons/protocol_engine/commands/labware_handling_common.py,sha256=HNiC6ZP1TyfiWcdp0puMyfq9cvC54vYYBKmkjy2dECs,800
320
+ opentrons/protocol_engine/commands/liquid_probe.py,sha256=OJwVOfkMV4AnQ0nPQT3mi0GLUPtTnGIm9oalMyVYEkM,15743
321
+ opentrons/protocol_engine/commands/load_labware.py,sha256=p02iOEbnYtq5gklOKTF2RNmYLVR4Ak7lnEUpSZjaHYc,8625
322
+ opentrons/protocol_engine/commands/load_lid.py,sha256=8zRWBfdAQHSULLtjzYPEflkXC_rSSLZML9vJ4TJjxoQ,5484
323
+ opentrons/protocol_engine/commands/load_lid_stack.py,sha256=WgSBr9bd4rRwv6yYztYuz-mIHMByPom6G0Vzo4znpAY,10572
319
324
  opentrons/protocol_engine/commands/load_liquid.py,sha256=KSS3Ps4PDdSrqHTStbioQP7P1xVzParlOH_AXLy2B1A,3417
320
325
  opentrons/protocol_engine/commands/load_liquid_class.py,sha256=NTm7kyvlZNSItWj3RTnQg7JkyPcPNvWhysUo3s4sMg4,4944
321
- opentrons/protocol_engine/commands/load_module.py,sha256=pQhBhiRIGsGFpxhAaCgMbZZvxiwMwGNpJpsJegDkIKA,8383
322
- opentrons/protocol_engine/commands/load_pipette.py,sha256=4Pgu8IF_chAHtLB4KJszSUY6dsI92u8WQfBU2HzuHAM,5879
323
- opentrons/protocol_engine/commands/move_labware.py,sha256=Iucon7NzRk2bHagVH4kSs8dMUJkkVvZCLiDyaZ7VX1Y,16325
326
+ opentrons/protocol_engine/commands/load_module.py,sha256=-m_RKYTvP5-WbFV0td_fKJKQgwt-ie8MHi325KEjbiY,8365
327
+ opentrons/protocol_engine/commands/load_pipette.py,sha256=f4vrtr9LlfSBx5_UBP-F7mNGCCIibqsFqLZIAfzSt7E,6016
328
+ opentrons/protocol_engine/commands/move_labware.py,sha256=N46iRho5Dm5ch9nuiKeZMgGIn46QfGHa9SNZYHOXNkA,21582
324
329
  opentrons/protocol_engine/commands/move_relative.py,sha256=EczlVmwUvQc-bPpcXMW-fmH8PpPxdLxAVGdrWddiHvc,3057
325
330
  opentrons/protocol_engine/commands/move_to_addressable_area.py,sha256=JtHftnSjbLpTJUrVP44D2kTUr8Bcq8Le4p1IziNFp3c,6453
326
331
  opentrons/protocol_engine/commands/move_to_addressable_area_for_drop_tip.py,sha256=aVbxdVwCqhZxOn9ByAseqgaOl5TUd42bcyBMbuQu-8Q,7479
327
332
  opentrons/protocol_engine/commands/move_to_coordinates.py,sha256=2qZliN1ZLdgNDiGdaTafgKB2gxvHCpMbvX01kJ-kQuM,3179
328
333
  opentrons/protocol_engine/commands/move_to_well.py,sha256=fM8m5IcLjYZXy5fNjH_As4BK8wE7X_Xl_DQJaZZyIJk,3488
329
334
  opentrons/protocol_engine/commands/movement_common.py,sha256=bnJuwcp6nkyoxkTXqfSXnnKgZ7TKflkMGZSHXuPWsRk,11950
330
- opentrons/protocol_engine/commands/pick_up_tip.py,sha256=ZKXo4zf604DwRFxpLvcA2Cbab3u_WVf7VIwz2cxuB4U,7562
331
- opentrons/protocol_engine/commands/pipetting_common.py,sha256=WUu70QNDSTSk6ZegsmMH3urlO2nr2R-xOQFSxbuK3bM,9864
332
- opentrons/protocol_engine/commands/prepare_to_aspirate.py,sha256=VCBW_yWH1BX0Q1GWzsbaYsCgL9YYj_kaOV7WogvcpPQ,3382
333
- opentrons/protocol_engine/commands/reload_labware.py,sha256=fVb69aMaqWfq1DB_6OTY7Kzvs7wMk2kzyyGhfOlCs0s,3415
335
+ opentrons/protocol_engine/commands/pick_up_tip.py,sha256=pa2PXDvPyh5ZIYQeu_9XUnybE9CQ6VXooDO07gXCS5U,7726
336
+ opentrons/protocol_engine/commands/pipetting_common.py,sha256=Rok3Fy3jwJj_irXVRnUSjzpRpKVzVbYCv7odRQAYWEY,15222
337
+ opentrons/protocol_engine/commands/prepare_to_aspirate.py,sha256=v7fZeDPSPJOkF0bIDu_zQ8W5FlToKHpqCqtb774jBb8,3503
338
+ opentrons/protocol_engine/commands/reload_labware.py,sha256=eB1X7M9rHso1qc0beBTVHm5SHbjS6IODsIDj9RhR3mI,2910
334
339
  opentrons/protocol_engine/commands/retract_axis.py,sha256=3h0eb6O3fjrCBY89q9tnjDFUGQXN9qafURxvXGcmCm4,2889
335
340
  opentrons/protocol_engine/commands/save_position.py,sha256=koxPh6t8s7Cl1vjPt9e6raZz5_rQtXsg_IGdWqAPzPI,3395
336
341
  opentrons/protocol_engine/commands/set_rail_lights.py,sha256=QfB-NKw2ktBvSge1jOi9wYVLD19Vj6HiKw22Fsn0aSo,2090
@@ -339,7 +344,7 @@ opentrons/protocol_engine/commands/touch_tip.py,sha256=620D8mXSKQdjXQonNVztz_ENO
339
344
  opentrons/protocol_engine/commands/verify_tip_presence.py,sha256=UUwUWdlryfh-mU8IoHUZkoy67KxrqXTFygeu1bsavhc,3136
340
345
  opentrons/protocol_engine/commands/wait_for_duration.py,sha256=G-Lmo97BoqW8KA-cZDGQkqUmEE7lrLdw5j-2_LBF5gg,2396
341
346
  opentrons/protocol_engine/commands/wait_for_resume.py,sha256=IE_I7fqoKBrlBumaCp5Tm5ihyA6i5VAzG25xdVdRnVw,2372
342
- opentrons/protocol_engine/commands/absorbance_reader/__init__.py,sha256=umS98LlkBEAToRCvxLpr4k43tRPPTfkYu-81-bLy5DU,1251
347
+ opentrons/protocol_engine/commands/absorbance_reader/__init__.py,sha256=6V2mLhLiWyzPfOoObggTen18OohiDIKi9hoZgobLKLs,1230
343
348
  opentrons/protocol_engine/commands/absorbance_reader/close_lid.py,sha256=Z3tdTzr8dXXG_LBrFMa6XCJ0pgiyGMxS-DirCOEPOeY,5481
344
349
  opentrons/protocol_engine/commands/absorbance_reader/initialize.py,sha256=XzUyZ7tEUw_TNqrzzU4GorV6rY7w16WzRgpk-Ylkpuk,5878
345
350
  opentrons/protocol_engine/commands/absorbance_reader/open_lid.py,sha256=u8iFbWgWtptcCCCczKoVROAEVAiRdPHvM9SSWyED5Rg,5473
@@ -349,6 +354,16 @@ opentrons/protocol_engine/commands/calibration/calibrate_gripper.py,sha256=b9NM4
349
354
  opentrons/protocol_engine/commands/calibration/calibrate_module.py,sha256=0PfDsnk97mQjKeRz9iULTcwnx4A4iMh-xGLNrKICQzE,4179
350
355
  opentrons/protocol_engine/commands/calibration/calibrate_pipette.py,sha256=YMH2MJ7RI0Nf7xjoXJLPlCuMCs5_Stj8zLj-oHcfnDk,3278
351
356
  opentrons/protocol_engine/commands/calibration/move_to_maintenance_position.py,sha256=Y5UI4zcnhhVdfQOYh1N07jkBiVChD0kS_H_ow7_qiCA,5311
357
+ opentrons/protocol_engine/commands/flex_stacker/__init__.py,sha256=eyzQ4_2HRTxVCoGBWELU5TR_wgCcumuQB_9_yb7qOLE,2266
358
+ opentrons/protocol_engine/commands/flex_stacker/close_latch.py,sha256=ywbnRYQdK78RlbRN0GWZE6kl9IUECZSbrZEs0D2FUrE,2312
359
+ opentrons/protocol_engine/commands/flex_stacker/common.py,sha256=85x0AhqZ6-lOznhoP85GwOQEdab5x751EbQ7SM1y89A,556
360
+ opentrons/protocol_engine/commands/flex_stacker/empty.py,sha256=4BKbDlwfllRZUNx-ZFU_itl3WTanjI2-xkYawmCtMEY,5783
361
+ opentrons/protocol_engine/commands/flex_stacker/fill.py,sha256=JcK6b_2SFP5pCMpRtSW0Ug2GcMb7UNOEvd7zduw_62A,6015
362
+ opentrons/protocol_engine/commands/flex_stacker/open_latch.py,sha256=_LJNynwWfR6zyl3PZj3OMcEpmS5ynw-9X-9vU6eAOQ8,2272
363
+ opentrons/protocol_engine/commands/flex_stacker/prepare_shuttle.py,sha256=AxWVa7RYaqWV0U-C5eZvGwFoz_G5yyD6ee4q90whkRY,3646
364
+ opentrons/protocol_engine/commands/flex_stacker/retrieve.py,sha256=Tgb4VRSSwfKV2p7i6kETz0bDmea9zxrJpNzZLfgrRBM,15397
365
+ opentrons/protocol_engine/commands/flex_stacker/set_stored_labware.py,sha256=elQRzxE0SGBMju1Auq_4X2f7GIFKyNqs_EYC2EkvlAw,7170
366
+ opentrons/protocol_engine/commands/flex_stacker/store.py,sha256=zYu5cx19hV8Fc-_CGYPANXCD2Rw2jTdFxGPJC-hTjCM,10883
352
367
  opentrons/protocol_engine/commands/heater_shaker/__init__.py,sha256=ImAPrYSUvP8tI7obvoHmrJbjwLldgGNTnFYRgfXj8hI,2757
353
368
  opentrons/protocol_engine/commands/heater_shaker/close_labware_latch.py,sha256=Q7sqFtzUD8wclRLL2PLWjnClIeLtJsiMCobStvzoJKc,2847
354
369
  opentrons/protocol_engine/commands/heater_shaker/deactivate_heater.py,sha256=UYeGrTmnGtfw22p0agefI2ZnpukKlIgFcmJv9v58Xnc,2755
@@ -383,43 +398,43 @@ opentrons/protocol_engine/commands/thermocycler/set_target_lid_temperature.py,sh
383
398
  opentrons/protocol_engine/commands/thermocycler/wait_for_block_temperature.py,sha256=Wc8NQBIOcSl5nwsts6KlUfJXHcvXnSF1td_olzqJGec,3101
384
399
  opentrons/protocol_engine/commands/thermocycler/wait_for_lid_temperature.py,sha256=KZHt1dUWPrWUk_d0hl0TiAQhfaVdc_YZcxyMcZ0FLq8,2971
385
400
  opentrons/protocol_engine/commands/unsafe/__init__.py,sha256=lx3TFW_78XK0bdtLFuGXrvUGaeYrSFj5pHucEL-IYHI,2499
386
- opentrons/protocol_engine/commands/unsafe/unsafe_blow_out_in_place.py,sha256=UkwMnxSY-r-r5AoRecJs06MU1AupTshy4QaDWdi04zE,3248
401
+ opentrons/protocol_engine/commands/unsafe/unsafe_blow_out_in_place.py,sha256=uK9240g-lx0JE1N1f6Nfj_crhf9olHmzcxbUk6sMZoU,3374
387
402
  opentrons/protocol_engine/commands/unsafe/unsafe_drop_tip_in_place.py,sha256=F-JEMbZYpSPPIT41SIXDUj_9eiVNtp91_yRZDdT7az0,3898
388
403
  opentrons/protocol_engine/commands/unsafe/unsafe_engage_axes.py,sha256=Ze5hLslsXdd7l3lF0GKOPoWCdTmqTTGIjiTQyNhL-W4,2502
389
404
  opentrons/protocol_engine/commands/unsafe/unsafe_place_labware.py,sha256=mcIPhcQvVCUL_wfb2-JPrCvIFTXMVD93VeJb4H1LmhM,7873
390
405
  opentrons/protocol_engine/commands/unsafe/unsafe_ungrip_labware.py,sha256=9Sjx92JZhi-tRY1P77M--jJp4JzIGESXUakIpstESwQ,2461
391
406
  opentrons/protocol_engine/commands/unsafe/update_position_estimators.py,sha256=xLe3u3rYu1eOvWxDtA2xsvNy7H6TVtljqo-78nOtFLI,2994
392
- opentrons/protocol_engine/errors/__init__.py,sha256=5IfgGt6Xf2OJ-GdT3a9ykL16q_-kaHteyVAaJhlylVc,5650
407
+ opentrons/protocol_engine/errors/__init__.py,sha256=IaOHaCOTXwSNSG_QOVEgsXga0YHMAMw9sYwFLduDsGI,5952
393
408
  opentrons/protocol_engine/errors/error_occurrence.py,sha256=ODyXHxVO4iXDxpcLaC3uO7ocTOOGPqWwcC1uaiytv0c,7846
394
- opentrons/protocol_engine/errors/exceptions.py,sha256=WhsIoHKs-B3hEYV5ZW-YIdL8vOQElYs6eDHfSLH5Oic,43331
409
+ opentrons/protocol_engine/errors/exceptions.py,sha256=aDJBWiCuEHkN2yI06ZQn9z0_u0KO9DniE7_hRgrLNHA,45210
395
410
  opentrons/protocol_engine/execution/__init__.py,sha256=X8qTYYOc1v84JIDM1xYpIo3VG_BPnsrfl2jm9UUQGwQ,1384
396
411
  opentrons/protocol_engine/execution/command_executor.py,sha256=SxE6W9_8HgiCLiPu6Q8hJr2HKsO1Ta-V1PdmFDxa7rQ,8208
397
412
  opentrons/protocol_engine/execution/create_queue_worker.py,sha256=6hMuOqbqwfMn63idsrAgro0NJZoyX4VVH7AV3le2EWM,3372
398
413
  opentrons/protocol_engine/execution/door_watcher.py,sha256=WxPdM3ZKL69cI9-UAzCNNmiYk8vdcxd6Grki-heNLg4,4577
399
- opentrons/protocol_engine/execution/equipment.py,sha256=Cf17VX8itFMX85KDgESepgihj2Xu_T1_GelNgPunlXk,26143
414
+ opentrons/protocol_engine/execution/equipment.py,sha256=V2Fxkz5g5VhMGNecXCABUIqPe0gWr5X_yQ_u4zr4f20,25771
400
415
  opentrons/protocol_engine/execution/error_recovery_hardware_state_synchronizer.py,sha256=tLhMbYOetXSSWF8B6wCL4ksxvs71IGqJD6syMbB9A1E,4352
401
416
  opentrons/protocol_engine/execution/gantry_mover.py,sha256=LFTPmzuGRuP6IspgXxIEyJIXV0tHkc4UWDDjWFCClYo,26477
402
417
  opentrons/protocol_engine/execution/hardware_stopper.py,sha256=wlIl7U3gvnOiCvwrixHDcrfqXy3l4GFp0G232nASL8g,5857
403
418
  opentrons/protocol_engine/execution/heater_shaker_movement_flagger.py,sha256=BSFLzSSeELAYZCrCUfJZx5DdlrwU06Ur92TYd0T-hzM,9084
404
- opentrons/protocol_engine/execution/labware_movement.py,sha256=-qnohEyIt9AxsFjhbg_IZiO_1ZwlDqmuWhWirkeo9wc,12269
419
+ opentrons/protocol_engine/execution/labware_movement.py,sha256=XYVcxZOQ6_udpxcpwkIJpVD8-lgWLhizJAcRD9BclIo,12247
405
420
  opentrons/protocol_engine/execution/movement.py,sha256=AWcj7xlrOh3QrvoaH0sZO63yrPCEc7VE8hKfJNxxtP0,12527
406
- opentrons/protocol_engine/execution/pipetting.py,sha256=VY0EJg_qeZWRXFtM5EBtGX0lmoRbN0cjxN1YsDzglCE,14564
421
+ opentrons/protocol_engine/execution/pipetting.py,sha256=PSWU3c1woM4lPmMGktvq30a3BlhXtho9UrJv80e32ik,22043
407
422
  opentrons/protocol_engine/execution/queue_worker.py,sha256=riVVywKIOQ3Lx-woFuuSqqBtfeKFt23nCUnsk7gSVoI,2860
408
423
  opentrons/protocol_engine/execution/rail_lights.py,sha256=eiJT6oI_kFk7rFuFkZzISZiLNnpf7Kkh86Kyk9wQ_Jo,590
409
424
  opentrons/protocol_engine/execution/run_control.py,sha256=ksvI2zkguC4G3lR3HJgAF8uY1PNcaRfi7UOYu-oIZgo,1144
410
425
  opentrons/protocol_engine/execution/status_bar.py,sha256=tR7CHS_y1ARQxcSKDO4YFU2cqVQhePzalmzsyH8b23A,970
411
426
  opentrons/protocol_engine/execution/thermocycler_movement_flagger.py,sha256=Ouljgjtm7-sCXwDcpfbir84dAZh5y89DNiuKedYimyg,6790
412
427
  opentrons/protocol_engine/execution/thermocycler_plate_lifter.py,sha256=j33nYV8rkeAYUOau8wFIyJVWjWkjyildleYHCysez-o,3375
413
- opentrons/protocol_engine/execution/tip_handler.py,sha256=mn8RakB9LAJMy8hIYB4o-nqd2DoIpJjZj2rab1a7O1c,18153
428
+ opentrons/protocol_engine/execution/tip_handler.py,sha256=DDlI-AwdasbwLjZpN6r76pxqr1WI6R21m3tElBswg5o,18398
414
429
  opentrons/protocol_engine/notes/__init__.py,sha256=G0bIQswsov7MrJU0ArrOaWcOTxJU9BCUmNR3LRoNg-Q,311
415
430
  opentrons/protocol_engine/notes/notes.py,sha256=A5C9xHExlS9GAK7o_mYiKJgibBm6EEgHQ4PJor0IET0,1993
416
431
  opentrons/protocol_engine/resources/__init__.py,sha256=yvGFYpmLoxHYQff_IwiaEH9viZUfal5D5K91UjYLwwY,805
417
- opentrons/protocol_engine/resources/deck_configuration_provider.py,sha256=D5tPG9hVL4lJM1XBZL3SvSxNMgm7-6OFU15eXfo3vdo,5370
418
- opentrons/protocol_engine/resources/deck_data_provider.py,sha256=iw4oKv6-dSxF4hZiqT9K0oNuFo0HjLwG847cWYbpkdY,2979
432
+ opentrons/protocol_engine/resources/deck_configuration_provider.py,sha256=TDTTi-VE3wFiA9NF5422EQU5u4eT0lYb5ok-FdeqWdQ,9096
433
+ opentrons/protocol_engine/resources/deck_data_provider.py,sha256=63c-Hmwy5IbVSoAL3hYoZxizxwzCqbB2KgJptpLX3Bc,3001
419
434
  opentrons/protocol_engine/resources/file_provider.py,sha256=6btMCDN7NsyFlV7Icy5vDO7xsgbmtkeAM_KCuQ-GvRo,5903
420
435
  opentrons/protocol_engine/resources/fixture_validation.py,sha256=WBGWFTmBwLPjOBFeqJYxnaSRHvo4pwxvdhT4XUW_FMY,1857
421
- opentrons/protocol_engine/resources/labware_data_provider.py,sha256=Ks-_iUNZQWcmZWp5aMGVQc0bVmCOp9bwte7ADycwKHs,2726
422
- opentrons/protocol_engine/resources/labware_validation.py,sha256=Q6Zii0ju_s4zhrrKEn9KWUHeNGKMaKFiO_XCAXxdEuM,2568
436
+ opentrons/protocol_engine/resources/labware_data_provider.py,sha256=i0otj_dACWHK23mBGjXGwTJtE4sooov2_YQOMIulzJo,3836
437
+ opentrons/protocol_engine/resources/labware_validation.py,sha256=fahspda2v_rrPluABTjBjbWJyrlG_qn54CkVr6iRqT8,2563
423
438
  opentrons/protocol_engine/resources/model_utils.py,sha256=C3OHUi-OtuFUm3dS5rApSU3EJ0clnaCZEyBku5sTjzA,941
424
439
  opentrons/protocol_engine/resources/module_data_provider.py,sha256=DaTv3QqrlpKEXlIfBCSgXwlyOrV2YqWcxlHD0MGKWWw,1558
425
440
  opentrons/protocol_engine/resources/ot3_validation.py,sha256=0x81JoZBXcj2xUVcOF7v5ETc8y5T_sbs-jTPxuSnooE,744
@@ -428,35 +443,59 @@ opentrons/protocol_engine/state/__init__.py,sha256=hDdA4GjXbi9h7K_FMbQGT9tOw3YtR
428
443
  opentrons/protocol_engine/state/_abstract_store.py,sha256=b5cqKZhI6ERZj6gyL0kDutD6ogdQngR3T-JmPATvhi8,631
429
444
  opentrons/protocol_engine/state/_move_types.py,sha256=STLssWsXMY92F_asAQrixv10A6QsCkHYAvKQs0igTGE,2230
430
445
  opentrons/protocol_engine/state/_well_math.py,sha256=HWVy4ezd-tRWIgAXtXTLXbzZiPec3mOzQFtNZQoo_d4,9705
431
- opentrons/protocol_engine/state/addressable_areas.py,sha256=XXfdwjiBQAidDPhs_dQs-QaqYZYQe8BXhMf5u6h-eY0,26758
446
+ opentrons/protocol_engine/state/addressable_areas.py,sha256=vHshe5bjiJDBAvcI0k7i6vVy5zz0NAhw4VOFYiRjoiw,28760
432
447
  opentrons/protocol_engine/state/command_history.py,sha256=ZwP7DD8AMohoo1iDZgnpV50_RZvlSrYpEFzcc2kKXyA,11574
433
448
  opentrons/protocol_engine/state/commands.py,sha256=aoON_C5DbiIEPxOGATvwCsSG9eHsFe-_f798WZPh0NI,45371
434
449
  opentrons/protocol_engine/state/config.py,sha256=7jSGxC6Vqj1eA8fqZ2I3zjlxVXg8pxvcBYMztRIx9Mg,1515
435
450
  opentrons/protocol_engine/state/files.py,sha256=w8xxxg8HY0RqKKEGSfHWfrjV54Gb02O3dwtisJ-9j8E,1753
436
451
  opentrons/protocol_engine/state/fluid_stack.py,sha256=uwkf0qYk1UX5iU52xmk-e3yLPK8OG-TtMCcBqrkVFpM,5932
437
- opentrons/protocol_engine/state/frustum_helpers.py,sha256=RmhSGPPuHS026K9XF_VkmCTZIcAe4FNtpDaKVtd35HE,16249
438
- opentrons/protocol_engine/state/geometry.py,sha256=q9iPDS7k9ZLof_HBDFm0VLXQ97ZZEub7C9zXPgmO7kg,70127
439
- opentrons/protocol_engine/state/labware.py,sha256=Vq1Usz0Y0-NJhD-m7SeMy0ES-Jmnig1zn-jmIY57HAc,48308
452
+ opentrons/protocol_engine/state/frustum_helpers.py,sha256=Aa0fxv-TECagvIWh5oDNzXjGGpvIBWURH6izxxZzwiE,16821
453
+ opentrons/protocol_engine/state/geometry.py,sha256=EQI9dBCqjuR0Pbfp3aoi10UIO_iNoRYg6FZ0G1e4dfo,94790
454
+ opentrons/protocol_engine/state/labware.py,sha256=rehy7R1HIhxx3DTtTHIKxqHoBQJ_1tDhhiculMJeIy8,57556
440
455
  opentrons/protocol_engine/state/liquid_classes.py,sha256=u_z75UYdiFAKG0yB3mr1il4T3qaS0Sotq8sL7KLODP8,2990
441
456
  opentrons/protocol_engine/state/liquids.py,sha256=NoesktcQdJUjIVmet1uqqJPf-rzbo4SGemXwQC295W0,2338
442
- opentrons/protocol_engine/state/modules.py,sha256=WoK7QEjENR-QjgGomaQ8XkhRW74trQ30RX8wzFMDAvo,53198
457
+ opentrons/protocol_engine/state/modules.py,sha256=wmCtpfc5tcp3LTH1oDfqeCgM2MJHxiN5z30H8im1FGw,58084
443
458
  opentrons/protocol_engine/state/motion.py,sha256=pWt28-vBaO6dz_rtvoliUsGDvls_ML6sRfDOwmD0F7g,15086
444
- opentrons/protocol_engine/state/pipettes.py,sha256=dDak7RGVTUIJxhdOd02qMZrI1ZQX_gdYyI5m6xsbYQ0,34674
445
- opentrons/protocol_engine/state/state.py,sha256=oPqJgE3kze7uZJ37xvhU1XfULk8VLCQgnxlHK606gXg,15462
459
+ opentrons/protocol_engine/state/pipettes.py,sha256=nqeJWn98S8wSDW-CPJnjEl5hEIkmhZOInmDzn0-kxDM,36921
460
+ opentrons/protocol_engine/state/state.py,sha256=gHmXrlq17kx3sTbizq8gPoJQx_0nazxnooLODvrLY5k,15468
446
461
  opentrons/protocol_engine/state/state_summary.py,sha256=tu-xJYKbKzeLk9Z0RwSaz0tUs6blYuxSA5V2n7_zSGk,1180
447
- opentrons/protocol_engine/state/tips.py,sha256=nXLmOsXx2pCQmA5H5HskTnU4IMcKAc6u2LbI2BCQaWc,19396
448
- opentrons/protocol_engine/state/update_types.py,sha256=W128JESGGbViL5MktCsW-2AF89NnA_JhE9pZbaC-LJM,21751
449
- opentrons/protocol_engine/state/wells.py,sha256=yJTZc_lDXNtnolcaWaT_QuBdKIowU04qFQgdSOyRH8M,9186
450
- opentrons/protocol_engine/state/module_substates/__init__.py,sha256=l4W-6uV3L8F3B1GsuSoDcmlq6XzsA18w7pKXbO2W3tg,1234
462
+ opentrons/protocol_engine/state/tips.py,sha256=XAFP7IpR-L9p6BKz4HWcAnRxXO4FHXrK5pIR_9eshfE,20145
463
+ opentrons/protocol_engine/state/update_types.py,sha256=E2TMTSJfrLzE0KLHKHPiGMLwEJDjQbtQEBhzaF4M52M,27210
464
+ opentrons/protocol_engine/state/wells.py,sha256=Tp1JRfldgChrx7aSthjbHNrcmpoW5XRcso7BGSQ84pg,10970
465
+ opentrons/protocol_engine/state/module_substates/__init__.py,sha256=7OIzc7Zzm-7WRys6M90ZzJ7BZhivuZ1BHJ35TdOPasE,1377
451
466
  opentrons/protocol_engine/state/module_substates/absorbance_reader_substate.py,sha256=jiD8WqFEafGnka5n46vJ_qhS8Ofh--hTxuBWXk8eefE,1431
452
- opentrons/protocol_engine/state/module_substates/heater_shaker_module_substate.py,sha256=bfcG5sMWeiId-x6SFH2C8cVRmogsMYgdoFkdXjUCHuQ,3364
467
+ opentrons/protocol_engine/state/module_substates/flex_stacker_substate.py,sha256=gJ5arNHyHR-DeNwsxLhVd3sq7oJTI8moFeyP7a38kVQ,2517
468
+ opentrons/protocol_engine/state/module_substates/heater_shaker_module_substate.py,sha256=vXqN1y2JcmEp2VLN17vJm8nYnUf5qVpvVJA-4xF22mc,4312
453
469
  opentrons/protocol_engine/state/module_substates/magnetic_block_substate.py,sha256=kjzQK0wz4l1rt-OZ4c9J_rZejmEP4zwFX-QHEl_LNqE,362
454
470
  opentrons/protocol_engine/state/module_substates/magnetic_module_substate.py,sha256=IJ5zpufz5WSRbJqHOAi-WroDxpsRZz-GvwznIL4v7VQ,2468
455
- opentrons/protocol_engine/state/module_substates/temperature_module_substate.py,sha256=A6_5j_I1zOKqLO2GsQZIk2m2slvdqHjyHYE_NUvyhJ8,1807
456
- opentrons/protocol_engine/state/module_substates/thermocycler_module_substate.py,sha256=i1_0Q72q83CMwiMacvI-Rzxenz1AKuwv1IMkFFtAU0Y,4389
471
+ opentrons/protocol_engine/state/module_substates/temperature_module_substate.py,sha256=w9h6EBM1YY8SeUOlUz5-nW1Zoyce8-zua8Z6mX4sDNg,2310
472
+ opentrons/protocol_engine/state/module_substates/thermocycler_module_substate.py,sha256=fLt2jMsbnfe8Q25vAjloxLBGdx8sotqM34VxbwfegpE,5167
473
+ opentrons/protocol_engine/types/__init__.py,sha256=KB2Sc0rtxy-c_rYmAIYETGGvOhEXLC8FV5NOD45phYk,7844
474
+ opentrons/protocol_engine/types/automatic_tip_selection.py,sha256=I_B3iWei1Sl7F7IrMKqOn4S12heZXRnfKvtCTUXIMyM,1118
475
+ opentrons/protocol_engine/types/command_annotations.py,sha256=5A4k_R_4A2_nGl0K85SKwNlnKA09fUhEIe_mdU55yro,1843
476
+ opentrons/protocol_engine/types/deck_configuration.py,sha256=O5zO6sX0iGsrWvBxuR3JnxjtAH-gSMImcy1krP4B360,2047
477
+ opentrons/protocol_engine/types/execution.py,sha256=6g_NvlF4niXjFQwDjkmTgKx-N6I8ypAc_DYEI9RP-IU,3719
478
+ opentrons/protocol_engine/types/hardware_passthrough.py,sha256=tpTE3XHbRjXWQqY0rgosIfcOAGHqMkOpIU3IpIXgdAA,534
479
+ opentrons/protocol_engine/types/instrument.py,sha256=sqiY6OKYgI0ViQ2UsuYMkL9MI6OpvdgLzC1mvclrp2M,984
480
+ opentrons/protocol_engine/types/instrument_sensors.py,sha256=CGcChvuxpRXVJHLZP_wd1ej3XDD9x1S9biugMAnk0tM,1449
481
+ opentrons/protocol_engine/types/labware.py,sha256=HsROvCfD7ay3YF_YapZvOMQBHGlrH1UE0QQgim0xDbs,3897
482
+ opentrons/protocol_engine/types/labware_movement.py,sha256=BEZIDc-6YhU9LRACi0ozroIxuOIq-tngvrFE22uufjs,577
483
+ opentrons/protocol_engine/types/labware_offset_location.py,sha256=LRZ8VY6jbnnZNDD_nh_mW7C6cZJOLKSC2gfKQZ99lBg,4136
484
+ opentrons/protocol_engine/types/labware_offset_vector.py,sha256=5Hhyv60I8KpZdUDnN--3ULURcLtJhTrVVLqiIOPtRps,1008
485
+ opentrons/protocol_engine/types/liquid.py,sha256=6Ec0fC0SEN3jKHYeFSwbQxdEAj5hxDPHlDcL1wXlx6k,810
486
+ opentrons/protocol_engine/types/liquid_class.py,sha256=SF5WS3s38S87efUqawRGSIYqjhwa4pNx7fB1xdiGHl0,2384
487
+ opentrons/protocol_engine/types/liquid_handling.py,sha256=Xx1GihrNRJJdJJA5zIwWvIYNydbSXAHjSUAliF18Iu0,319
488
+ opentrons/protocol_engine/types/liquid_level_detection.py,sha256=NmEasE7HR3GqtCj8tNBSuMufBLVMPYNbTXSvXVJu_JM,4783
489
+ opentrons/protocol_engine/types/location.py,sha256=ZIyaj1FIIYxh8fNXfSEyx3dd-OalhlCfqsYWGYGFVoQ,5629
490
+ opentrons/protocol_engine/types/module.py,sha256=su7Qw5Z0o-qAGfz0XC6nOqJpgpe84Kx96E9oHUt7Q9I,8921
491
+ opentrons/protocol_engine/types/partial_tip_configuration.py,sha256=4RMtHOAX-dgpXWA737tthj_izTBnhKphBcA24LAKmhI,2760
492
+ opentrons/protocol_engine/types/run_time_parameters.py,sha256=5gH4GmGK7e3OkSClftZT6VA4wXELIvEMgpmQ__waceU,4468
493
+ opentrons/protocol_engine/types/tip.py,sha256=qfjnCPG7RAlTGS80SAQB8rGwtFW3yRWYj7DpYy0oDow,389
494
+ opentrons/protocol_engine/types/util.py,sha256=n94IDny6jeeIO1mCkMNgrB5G5aRYDaOvzbohYYFN-es,356
495
+ opentrons/protocol_engine/types/well_position.py,sha256=KW8FldSbpUnhz3CJKmLtiTDJQApsHJidgoleum0Uwok,2986
457
496
  opentrons/protocol_reader/__init__.py,sha256=BGQOig6EgY-3eeLkxmVeZ9VhqOt4QUiG_rQJwiuW8uY,959
458
- opentrons/protocol_reader/extract_labware_definitions.py,sha256=V_fblW2idnBhNMnQIF6PV3AGu74prFrzoDUFA3b66MY,2542
459
- opentrons/protocol_reader/file_format_validator.py,sha256=EuMqP-meZAn9J0qO1e_EuP71Yc57JNJ4-0kkOl9_ur0,6525
497
+ opentrons/protocol_reader/extract_labware_definitions.py,sha256=CiVqKDuNEmoh6UILsTGUAFCvSXNVbop2fXX97XY6ykc,2649
498
+ opentrons/protocol_reader/file_format_validator.py,sha256=i5CNnQQsE8bnAF3FsOjjYrSdNNbmVjwHicLBsC6UbNQ,6570
460
499
  opentrons/protocol_reader/file_hasher.py,sha256=hbnQPNqdSFA96yaE4YH4NdSUs6u_HnOaaZasQYRlHNE,956
461
500
  opentrons/protocol_reader/file_identifier.py,sha256=HpleOVshYakor2NhvkMZk4EX3lRO_CgimTp5zcVyuhA,9461
462
501
  opentrons/protocol_reader/file_reader_writer.py,sha256=MOTah-hZy2gJU-WAi6GZmdfQBNu4Yl_t0yrfHrB-dHM,2721
@@ -468,29 +507,30 @@ opentrons/protocol_reader/role_analyzer.py,sha256=DyC1Y7V1wiDHYS0uo8pugnknsRzCXX
468
507
  opentrons/protocol_runner/__init__.py,sha256=Sr0gBDzNv3nuHPapeNy_IWadhohtwmlhfnB4V105q6g,551
469
508
  opentrons/protocol_runner/create_simulating_orchestrator.py,sha256=S1Fu9TMa3NrujcPYTfULHpfqLTkrZPYz7CbcXtcDes0,4249
470
509
  opentrons/protocol_runner/json_file_reader.py,sha256=dE9ujq3sWyKF1yFg0AN8h-roGVfvqf1tEcIq5wxHbxE,2341
471
- opentrons/protocol_runner/json_translator.py,sha256=HS9xG_xhZ-mo1Eq4s_U0blDA-PXlrMjETB3zPoIf1F4,12104
472
- opentrons/protocol_runner/legacy_command_mapper.py,sha256=rtH-j7Fj7vdn82E2p_o-0TdZ_n2aDRAV3LZcCyvEND8,36493
510
+ opentrons/protocol_runner/json_translator.py,sha256=lrDzHOOkQ19ac4KEdUbfEOnfx-F_QCO-6oGqQZegy4g,12134
511
+ opentrons/protocol_runner/legacy_command_mapper.py,sha256=ubZenLW4Wy-sxWpcHYvFWPYdH7pEtpnl03VWiXMTTNM,36703
473
512
  opentrons/protocol_runner/legacy_context_plugin.py,sha256=G_qpeyaLvsCjb72_n96Luy8CPSfgPZpt0QKVzKc6LKY,4730
474
513
  opentrons/protocol_runner/protocol_runner.py,sha256=YUHZvttojkYghq82IWYWvTfN2kUZ1oZdm8Fm4K-zftI,21658
475
514
  opentrons/protocol_runner/python_protocol_wrappers.py,sha256=KEuM4M7rYD4zLjTqK89T47CiBIZJ42kG0JXWarLUq4E,6511
476
- opentrons/protocol_runner/run_orchestrator.py,sha256=5hGKWPVWcbJkaUCVqPXovmLsZAfqEPkXGEe64Ft9NCs,19196
515
+ opentrons/protocol_runner/run_orchestrator.py,sha256=iQPhdZERs_w6C-uGXPYszOHn2UP0A-5cjNQWynqy_dk,19269
477
516
  opentrons/protocol_runner/task_queue.py,sha256=YH8_lvuLBYjfzXAOJU8DYXizQcbaxGmUiAPmd7kHERw,2581
478
517
  opentrons/protocols/__init__.py,sha256=cOUxilkIvdlqGvN4nYJQYr0TGdIWnzxBaTfoz3svmw8,245
479
518
  opentrons/protocols/bundle.py,sha256=QW_2kwnxgdG_nNPl2e110A5ehOH9Ej63-9TBx-F9Yvw,3666
480
- opentrons/protocols/labware.py,sha256=UvFDDz64-WgHXqEg6xSXi1q0R6A2-HFUhcFrAS6Snn8,10809
519
+ opentrons/protocols/labware.py,sha256=NxDRsBtLVgAxLv93zTwfD7_df6SzConXjm2KFbPWYrQ,10715
481
520
  opentrons/protocols/parse.py,sha256=viQxA4NiERPmZeHQaujq1CheiUop2oWkoPC8p7V_XqQ,27488
482
521
  opentrons/protocols/types.py,sha256=XttBJsVGx5hd__PK7OJzMepdlcRaQmno3-yZ0hUJNME,6045
483
522
  opentrons/protocols/advanced_control/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
484
523
  opentrons/protocols/advanced_control/common.py,sha256=AuEzt2PfIE55DK5c5e1pC-ieSJfwbU1BcCSOML6aRMQ,873
485
524
  opentrons/protocols/advanced_control/mix.py,sha256=GobQ9E6F2gARjfhNp2xdyWQXFBSwOiU3MQ1UeW85v5Y,2057
486
525
  opentrons/protocols/advanced_control/transfers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
487
- opentrons/protocols/advanced_control/transfers/common.py,sha256=kmw91ScfcygQroaXZSRJvBh-QkP8wyTxYFGi03Mhzqo,1810
526
+ opentrons/protocols/advanced_control/transfers/common.py,sha256=TO1XK07OWo4l3Bm3J0TrLepXQqUPLK9jdH2FeqFdc34,3743
488
527
  opentrons/protocols/advanced_control/transfers/transfer.py,sha256=-vE1uZq2BqAagSGeiuTxTyL1wT6fza_fwkO_V_OMMFc,37318
528
+ opentrons/protocols/advanced_control/transfers/transfer_liquid_utils.py,sha256=UdCFJ4ZzuKFYvSuA5R2uSAGmb_mJxyKw2u4TXymH2Zg,9251
489
529
  opentrons/protocols/api_support/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
490
530
  opentrons/protocols/api_support/constants.py,sha256=pI_zJ8oORr6FUOaF508ttll3KOIYqRRgcwVFwnqZuqc,262
491
531
  opentrons/protocols/api_support/deck_type.py,sha256=cBxm-IQqFyL1QtYTMGtLXOlyuh-67xWgnJSP6rkg8oc,3942
492
- opentrons/protocols/api_support/definitions.py,sha256=1Ef1ZmfqMzGLDWK4aHju14QfpLLe9nDbYvko8SfB6Fw,727
493
- opentrons/protocols/api_support/instrument.py,sha256=V5pOwMh3tJ_sTJ-7xnDz_0BocR2Ww4j_YHVzADZgTl4,4926
532
+ opentrons/protocols/api_support/definitions.py,sha256=kmQCHIJT7W8_tMgZZIVHmJVp9PXfkPhPoggrR7hJ6eI,727
533
+ opentrons/protocols/api_support/instrument.py,sha256=xbgFKbJU_gL1QjbH_mgGHJx2USQIQisjEkBHiFfYEqA,5712
494
534
  opentrons/protocols/api_support/labware_like.py,sha256=JArK3XIYSMzDJTnpsVg9KNcMBEaRLMllmbV4ZtcI02s,7701
495
535
  opentrons/protocols/api_support/tip_tracker.py,sha256=ztngh5wGworD77ycKHm3_f9EqjT24VFXIAARAGcCPns,7407
496
536
  opentrons/protocols/api_support/types.py,sha256=rG9ogC8Q8PnWO814KHkcOtkhu7mz8P19Vq23J1Ch-NU,826
@@ -511,7 +551,7 @@ opentrons/protocols/execution/types.py,sha256=eKXKsUs6La3vJ3tppvNz4cHe5sXl8ApFDK
511
551
  opentrons/protocols/geometry/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
512
552
  opentrons/protocols/geometry/labware_geometry.py,sha256=OmVRXW9LIC6DXSZHZ3U82ZnSiHf72f90EiDHBJWJ1QI,1596
513
553
  opentrons/protocols/geometry/planning.py,sha256=AcyMvt5fcSKAenbo2Q7cToDnrZQw3EjJKN55ZmhjVTc,11095
514
- opentrons/protocols/models/__init__.py,sha256=KePRAkkKzFoc0lAz8y89cWnxru8ofe3mowsjmCg8_lc,736
554
+ opentrons/protocols/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
515
555
  opentrons/protocols/models/json_protocol.py,sha256=29hkQLUAJt2qprw2W3EpT_0x3vIQ5l1q7o0SZAnS9V4,20129
516
556
  opentrons/protocols/parameters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
517
557
  opentrons/protocols/parameters/csv_parameter_definition.py,sha256=xZhGtdfH2vXSWFK-aGET07_L0LODvHWkfNxf7pQoOmo,2762
@@ -542,9 +582,9 @@ opentrons/util/helpers.py,sha256=3hr801bWGbxEcOFAS7f-iOhmnUhoK5qahbB8SIvaCfY,165
542
582
  opentrons/util/linal.py,sha256=IlKAP9HkNBBgULeSf4YVwSKHdx9jnCjSr7nvDvlRALg,5753
543
583
  opentrons/util/logging_config.py,sha256=UHoY7dyD6WMYNP5GKowbMxUSG_hlXeI5TaIwksR5u-U,6887
544
584
  opentrons/util/performance_helpers.py,sha256=ew7H8XD20iS6-2TJAzbQeyzStZkkE6PzHt_Adx3wbZQ,5172
545
- opentrons-8.3.1a1.dist-info/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
546
- opentrons-8.3.1a1.dist-info/METADATA,sha256=2_YpX4wCIflJRAltLS_e7CbN1Q2Yo9_kz19uGV9H7JQ,5084
547
- opentrons-8.3.1a1.dist-info/WHEEL,sha256=qUzzGenXXuJTzyjFah76kDVqDvnk-YDzY00svnrl84w,109
548
- opentrons-8.3.1a1.dist-info/entry_points.txt,sha256=fTa6eGCYkvOtv0ov-KVE8LLGetgb35LQLF9x85OWPVw,106
549
- opentrons-8.3.1a1.dist-info/top_level.txt,sha256=wk6whpbMZdBQpcK0Fg0YVfUGrAgVOFON7oQAhOMGMW8,10
550
- opentrons-8.3.1a1.dist-info/RECORD,,
585
+ opentrons-8.4.0a0.dist-info/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
586
+ opentrons-8.4.0a0.dist-info/METADATA,sha256=QdfN1bVLFyxPJTRVEmzU6uQwWYGil9Fi8zqlsuAwkXc,5084
587
+ opentrons-8.4.0a0.dist-info/WHEEL,sha256=qUzzGenXXuJTzyjFah76kDVqDvnk-YDzY00svnrl84w,109
588
+ opentrons-8.4.0a0.dist-info/entry_points.txt,sha256=fTa6eGCYkvOtv0ov-KVE8LLGetgb35LQLF9x85OWPVw,106
589
+ opentrons-8.4.0a0.dist-info/top_level.txt,sha256=wk6whpbMZdBQpcK0Fg0YVfUGrAgVOFON7oQAhOMGMW8,10
590
+ opentrons-8.4.0a0.dist-info/RECORD,,