gitextract_y55nmmey/ ├── .gitignore ├── ManiSkill2/ │ ├── CITATION.cff │ ├── LICENSE │ ├── README.md │ ├── docker/ │ │ ├── 10_nvidia.json │ │ ├── Dockerfile │ │ ├── nvidia_icd.json │ │ └── nvidia_layers.json │ ├── docs/ │ │ ├── .gitignore │ │ ├── Makefile │ │ ├── README.md │ │ ├── make.bat │ │ └── source/ │ │ ├── benchmark/ │ │ │ └── submission.md │ │ ├── concepts/ │ │ │ ├── controllers.md │ │ │ ├── demonstrations.md │ │ │ ├── environments.md │ │ │ └── observation.md │ │ ├── conf.py │ │ ├── getting_started/ │ │ │ ├── docker.md │ │ │ ├── installation.md │ │ │ └── quickstart.md │ │ └── index.rst │ ├── examples/ │ │ ├── profile_speed/ │ │ │ ├── README.md │ │ │ ├── profile_dmcontrol.py │ │ │ └── profile_sapien.py │ │ ├── submission/ │ │ │ ├── Dockerfile │ │ │ └── user_solution.py │ │ └── tutorials/ │ │ ├── .gitignore │ │ ├── 1_quickstart.ipynb │ │ ├── 2_reinforcement_learning.ipynb │ │ ├── 3_imitation_learning.ipynb │ │ ├── README.md │ │ ├── advanced_rendering.ipynb │ │ ├── customize_environments.ipynb │ │ ├── imitation-learning/ │ │ │ ├── README.md │ │ │ ├── bc_liftcube_rgbd.py │ │ │ └── bc_liftcube_state.py │ │ └── reinforcement-learning/ │ │ ├── README.md │ │ ├── sb3_ppo_liftcube_rgbd.py │ │ └── sb3_ppo_liftcube_state.py │ ├── mani_skill2/ │ │ ├── __init__.py │ │ ├── agents/ │ │ │ ├── __init__.py │ │ │ ├── base_agent.py │ │ │ ├── base_controller.py │ │ │ ├── configs/ │ │ │ │ ├── __init__.py │ │ │ │ ├── mobile_panda/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── defaults.py │ │ │ │ ├── panda/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── defaults.py │ │ │ │ │ └── variants.py │ │ │ │ └── xmate3/ │ │ │ │ ├── __init__.py │ │ │ │ └── defaults.py │ │ │ ├── controllers/ │ │ │ │ ├── __init__.py │ │ │ │ ├── passive_controller.py │ │ │ │ ├── pd_base_vel.py │ │ │ │ ├── pd_ee_pose.py │ │ │ │ ├── pd_joint_pos.py │ │ │ │ ├── pd_joint_pos_vel.py │ │ │ │ └── pd_joint_vel.py │ │ │ ├── robots/ │ │ │ │ ├── __init__.py │ │ │ │ ├── mobile_panda.py │ │ │ │ ├── panda.py │ │ │ │ └── xmate3.py │ │ │ └── utils.py │ │ ├── assets/ │ │ │ ├── .gitignore │ │ │ ├── deformable_manipulation/ │ │ │ │ ├── beaker.glb │ │ │ │ └── bottle.glb │ │ │ ├── descriptions/ │ │ │ │ ├── bucket/ │ │ │ │ │ ├── bucket.stl │ │ │ │ │ └── bucket_45.stl │ │ │ │ ├── franka_description/ │ │ │ │ │ └── meshes/ │ │ │ │ │ ├── collision/ │ │ │ │ │ │ ├── finger.stl │ │ │ │ │ │ ├── hand.stl │ │ │ │ │ │ ├── link0.stl │ │ │ │ │ │ ├── link1.stl │ │ │ │ │ │ ├── link2.stl │ │ │ │ │ │ ├── link3.stl │ │ │ │ │ │ ├── link4.stl │ │ │ │ │ │ ├── link5.stl │ │ │ │ │ │ ├── link6.stl │ │ │ │ │ │ └── link7.stl │ │ │ │ │ └── visual/ │ │ │ │ │ ├── finger.dae │ │ │ │ │ ├── hand.dae │ │ │ │ │ ├── link0.dae │ │ │ │ │ ├── link1.dae │ │ │ │ │ ├── link2.dae │ │ │ │ │ ├── link3.dae │ │ │ │ │ ├── link4.dae │ │ │ │ │ ├── link5.dae │ │ │ │ │ ├── link6.dae │ │ │ │ │ └── link7.dae │ │ │ │ ├── mobile_panda_dual_arm.urdf │ │ │ │ ├── mobile_panda_single_arm.urdf │ │ │ │ ├── panda_bucket.srdf │ │ │ │ ├── panda_bucket.urdf │ │ │ │ ├── panda_pinch.srdf │ │ │ │ ├── panda_pinch.urdf │ │ │ │ ├── panda_stick.srdf │ │ │ │ ├── panda_stick.urdf │ │ │ │ ├── panda_v2.srdf │ │ │ │ ├── panda_v2.urdf │ │ │ │ ├── panda_v2_gripper.urdf │ │ │ │ ├── panda_v3.srdf │ │ │ │ ├── panda_v3.urdf │ │ │ │ └── sciurus17_description/ │ │ │ │ └── meshes/ │ │ │ │ ├── collision/ │ │ │ │ │ ├── Base.stl │ │ │ │ │ └── Body.stl │ │ │ │ └── visual/ │ │ │ │ ├── Base.stl │ │ │ │ └── Body.stl │ │ │ ├── maniskill2-scene-2.glb │ │ │ └── partnet_mobility/ │ │ │ ├── .gitignore │ │ │ └── meta/ │ │ │ ├── info_bucket_train.json │ │ │ ├── info_cabinet_door_train.json │ │ │ ├── info_cabinet_drawer_train.json │ │ │ ├── info_chair_train.json │ │ │ └── info_faucet_train.json │ │ ├── envs/ │ │ │ ├── __init__.py │ │ │ ├── assembly/ │ │ │ │ ├── __init__.py │ │ │ │ ├── assembling_kits.py │ │ │ │ ├── base_env.py │ │ │ │ ├── peg_insertion_side.py │ │ │ │ └── plug_charger.py │ │ │ ├── misc/ │ │ │ │ ├── __init__.py │ │ │ │ ├── avoid_obstacles.py │ │ │ │ └── turn_faucet.py │ │ │ ├── mpm/ │ │ │ │ ├── .gitignore │ │ │ │ ├── RopeInit.pkl │ │ │ │ ├── __init__.py │ │ │ │ ├── base_env.py │ │ │ │ ├── excavate_env.py │ │ │ │ ├── fill_env.py │ │ │ │ ├── hang_env.py │ │ │ │ ├── perlin.py │ │ │ │ ├── pinch_env.py │ │ │ │ ├── pour_env.py │ │ │ │ ├── shader/ │ │ │ │ │ ├── common/ │ │ │ │ │ │ ├── lights.glsl │ │ │ │ │ │ ├── shadow.glsl │ │ │ │ │ │ └── view.glsl │ │ │ │ │ └── point/ │ │ │ │ │ ├── composite.vert │ │ │ │ │ ├── composite0.frag │ │ │ │ │ ├── composite1.frag │ │ │ │ │ ├── composite2.frag │ │ │ │ │ ├── deferred.frag │ │ │ │ │ ├── deferred.vert │ │ │ │ │ ├── gbuffer.frag │ │ │ │ │ ├── gbuffer.vert │ │ │ │ │ ├── gbuffer1.frag │ │ │ │ │ ├── gbuffer1.vert │ │ │ │ │ ├── gbuffer2.frag │ │ │ │ │ ├── gbuffer2.vert │ │ │ │ │ ├── line.frag │ │ │ │ │ ├── line.vert │ │ │ │ │ ├── point.frag │ │ │ │ │ ├── point.vert │ │ │ │ │ ├── shadow.vert │ │ │ │ │ ├── shadow_point.frag │ │ │ │ │ └── shadow_point.vert │ │ │ │ ├── utils.py │ │ │ │ └── write_env.py │ │ │ ├── ms1/ │ │ │ │ ├── README.md │ │ │ │ ├── __init__.py │ │ │ │ ├── base_env.py │ │ │ │ ├── move_bucket.py │ │ │ │ ├── open_cabinet_door_drawer.py │ │ │ │ └── push_chair.py │ │ │ ├── pick_and_place/ │ │ │ │ ├── __init__.py │ │ │ │ ├── base_env.py │ │ │ │ ├── pick_clutter.py │ │ │ │ ├── pick_cube.py │ │ │ │ ├── pick_single.py │ │ │ │ └── stack_cube.py │ │ │ └── sapien_env.py │ │ ├── evaluation/ │ │ │ ├── __init__.py │ │ │ ├── evaluator.py │ │ │ ├── run_evaluation.py │ │ │ └── solution.py │ │ ├── examples/ │ │ │ ├── __init__.py │ │ │ ├── demo_manual_control.py │ │ │ ├── demo_random_action.py │ │ │ └── demo_vec_env.py │ │ ├── sensors/ │ │ │ ├── __init__.py │ │ │ ├── camera.py │ │ │ └── depth_camera.py │ │ ├── trajectory/ │ │ │ ├── __init__.py │ │ │ ├── merge_trajectory.py │ │ │ └── replay_trajectory.py │ │ ├── utils/ │ │ │ ├── __init__.py │ │ │ ├── bounding_cylinder.py │ │ │ ├── common.py │ │ │ ├── download_asset.py │ │ │ ├── download_demo.py │ │ │ ├── geometry.py │ │ │ ├── io_utils.py │ │ │ ├── logging_utils.py │ │ │ ├── precompile_mpm.py │ │ │ ├── registration.py │ │ │ ├── sapien_utils.py │ │ │ ├── trimesh_utils.py │ │ │ ├── visualization/ │ │ │ │ ├── __init__.py │ │ │ │ ├── cv2_utils.py │ │ │ │ ├── jupyter_utils.py │ │ │ │ └── misc.py │ │ │ └── wrappers/ │ │ │ ├── __init__.py │ │ │ ├── common.py │ │ │ ├── observation.py │ │ │ ├── record.py │ │ │ └── sb3.py │ │ └── vector/ │ │ ├── __init__.py │ │ ├── registration.py │ │ ├── vec_env.py │ │ └── wrappers/ │ │ ├── __init__.py │ │ ├── observation.py │ │ └── sb3.py │ ├── pyproject.toml │ ├── pyrightconfig.json │ ├── requirements.txt │ ├── setup.py │ ├── tests/ │ │ ├── manual_test_venv.py │ │ └── test_envs.py │ └── warp_maniskill/ │ ├── .gitattributes │ ├── .gitignore │ ├── CHANGELOG.md │ ├── LICENSE.md │ ├── README.md │ ├── VERSION.md │ ├── __init__.py │ ├── build_docs.py │ ├── build_exports.py │ ├── build_lib.py │ ├── licenses/ │ │ ├── appdirs-LICENSE.txt │ │ ├── assets/ │ │ │ ├── ant-LICENSE.txt │ │ │ └── humanoid-LICENSE.txt │ │ ├── cuda-LICENSE.txt │ │ ├── fp16-LICENSE.txt │ │ ├── moller-LICENSE.txt │ │ ├── nanovdb-LICENSE.txt │ │ ├── nvrtc-LICENSE.txt │ │ ├── python37-LICENSE.txt │ │ ├── python38-LICENSE.txt │ │ ├── python39-LICENSE.txt │ │ ├── svd-LICENSE.txt │ │ └── usd-LICENSE.txt │ ├── mpm/ │ │ ├── __init__.py │ │ ├── height_rasterizer.py │ │ ├── mpm_integrator.py │ │ ├── mpm_model.py │ │ └── mpm_simulator.py │ ├── pyproject.toml │ ├── setup.py │ └── warp/ │ ├── __init__.py │ ├── __init__.pyi │ ├── bin/ │ │ └── .gitignore │ ├── build.py │ ├── builtins.py │ ├── codegen.py │ ├── config.py │ ├── context.py │ ├── distance.py │ ├── native/ │ │ ├── array.h │ │ ├── builtin.h │ │ ├── bvh.cpp │ │ ├── bvh.cu │ │ ├── bvh.h │ │ ├── crt.h │ │ ├── dense_volume.cpp │ │ ├── dense_volume.cu │ │ ├── dense_volume.h │ │ ├── exports.h │ │ ├── hashgrid.cpp │ │ ├── hashgrid.cu │ │ ├── hashgrid.h │ │ ├── intersect.h │ │ ├── intersect_adj.h │ │ ├── intersect_tri.h │ │ ├── marching.cpp │ │ ├── marching.cu │ │ ├── marching.h │ │ ├── mat22.h │ │ ├── mat33.h │ │ ├── mat44.h │ │ ├── matnn.h │ │ ├── mesh.cpp │ │ ├── mesh.cu │ │ ├── mesh.h │ │ ├── nanovdb/ │ │ │ └── PNanoVDB.h │ │ ├── noise.h │ │ ├── quat.h │ │ ├── rand.h │ │ ├── range.h │ │ ├── sort.cpp │ │ ├── sort.cu │ │ ├── sort.h │ │ ├── spatial.h │ │ ├── svd.h │ │ ├── vec2.h │ │ ├── vec3.h │ │ ├── vec4.h │ │ ├── volume.cpp │ │ ├── volume.h │ │ ├── warp.cpp │ │ ├── warp.cu │ │ └── warp.h │ ├── render.py │ ├── sim/ │ │ ├── __init__.py │ │ ├── articulation.py │ │ ├── collide.py │ │ ├── import_mjcf.py │ │ ├── import_snu.py │ │ ├── import_urdf.py │ │ ├── integrator_euler.py │ │ ├── integrator_xpbd.py │ │ ├── model.py │ │ ├── optimizer.py │ │ ├── particles.py │ │ └── render.py │ ├── stubs.py │ ├── tape.py │ ├── tests/ │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── assets/ │ │ │ ├── curlnoise_golden.npy │ │ │ ├── mlp_golden.npy │ │ │ └── pnoise_golden.npy │ │ ├── test_all.py │ │ ├── test_array.py │ │ ├── test_base.py │ │ ├── test_closest_point_edge_edge.py │ │ ├── test_codegen.py │ │ ├── test_compile_consts.py │ │ ├── test_compile_consts_dummy.py │ │ ├── test_conditional.py │ │ ├── test_ctypes.py │ │ ├── test_dense.py │ │ ├── test_fp16.py │ │ ├── test_func.py │ │ ├── test_grad.py │ │ ├── test_hash_grid.py │ │ ├── test_import.py │ │ ├── test_intersect.py │ │ ├── test_launch.py │ │ ├── test_marching_cubes.py │ │ ├── test_mesh_query_aabb.py │ │ ├── test_mesh_query_point.py │ │ ├── test_mesh_query_ray.py │ │ ├── test_misc.py │ │ ├── test_mlp.py │ │ ├── test_noise.py │ │ ├── test_operators.py │ │ ├── test_print.py │ │ ├── test_rand.py │ │ ├── test_reload.py │ │ ├── test_rounding.py │ │ ├── test_struct.py │ │ ├── test_svd.py │ │ ├── test_tape.py │ │ ├── test_torch.py │ │ └── test_volume.py │ ├── thirdparty/ │ │ ├── __init__.py │ │ └── appdirs.py │ ├── torch.py │ ├── types.py │ └── utils.py ├── Metaworld/ │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── MANIFEST.in │ ├── Makefile │ ├── README.md │ ├── docker/ │ │ ├── Dockerfile │ │ ├── README.md │ │ └── entrypoint-headless.sh │ ├── metaworld/ │ │ ├── __init__.py │ │ ├── envs/ │ │ │ ├── __init__.py │ │ │ ├── asset_path_utils.py │ │ │ ├── assets_updated/ │ │ │ │ └── sawyer_xyz/ │ │ │ │ └── dm_control_pick_place.ipynb │ │ │ ├── assets_v1/ │ │ │ │ ├── classic_mujoco/ │ │ │ │ │ └── half_cheetah.xml │ │ │ │ ├── meshes/ │ │ │ │ │ ├── objects/ │ │ │ │ │ │ └── mug.stl │ │ │ │ │ └── sawyer/ │ │ │ │ │ ├── GUIDE_WSG50_110.stl │ │ │ │ │ ├── WSG-FMF.stl │ │ │ │ │ ├── WSG50_110.stl │ │ │ │ │ ├── base.stl │ │ │ │ │ ├── eGripperBase.stl │ │ │ │ │ ├── head.stl │ │ │ │ │ ├── l0.stl │ │ │ │ │ ├── l1.stl │ │ │ │ │ ├── l2.stl │ │ │ │ │ ├── l3.stl │ │ │ │ │ ├── l4.stl │ │ │ │ │ ├── l5.stl │ │ │ │ │ ├── l6.stl │ │ │ │ │ ├── pedestal.stl │ │ │ │ │ ├── sawyer_ft/ │ │ │ │ │ │ ├── PEDESTAL.DAE │ │ │ │ │ │ ├── PEDESTAL.stl │ │ │ │ │ │ ├── base.DAE │ │ │ │ │ │ ├── base.stl │ │ │ │ │ │ ├── head.DAE │ │ │ │ │ │ ├── head.stl │ │ │ │ │ │ ├── l0.DAE │ │ │ │ │ │ ├── l0.stl │ │ │ │ │ │ ├── l1.DAE │ │ │ │ │ │ ├── l1.stl │ │ │ │ │ │ ├── l2.DAE │ │ │ │ │ │ ├── l2.stl │ │ │ │ │ │ ├── l3.DAE │ │ │ │ │ │ ├── l3.stl │ │ │ │ │ │ ├── l4.DAE │ │ │ │ │ │ ├── l4.stl │ │ │ │ │ │ ├── l5.DAE │ │ │ │ │ │ ├── l5.stl │ │ │ │ │ │ ├── l6.DAE │ │ │ │ │ │ └── l6.stl │ │ │ │ │ ├── sawyer_mp1/ │ │ │ │ │ │ ├── l6.DAE │ │ │ │ │ │ └── l6.stl │ │ │ │ │ ├── sawyer_mp3/ │ │ │ │ │ │ ├── l0.DAE │ │ │ │ │ │ ├── l0.stl │ │ │ │ │ │ ├── l1.DAE │ │ │ │ │ │ └── l1.stl │ │ │ │ │ └── sawyer_pv/ │ │ │ │ │ ├── base.DAE │ │ │ │ │ ├── base.stl │ │ │ │ │ ├── head.DAE │ │ │ │ │ ├── head.stl │ │ │ │ │ ├── l0.DAE │ │ │ │ │ ├── l0.stl │ │ │ │ │ ├── l1.DAE │ │ │ │ │ ├── l1.stl │ │ │ │ │ ├── l2.DAE │ │ │ │ │ ├── l2.stl │ │ │ │ │ ├── l3.DAE │ │ │ │ │ ├── l3.stl │ │ │ │ │ ├── l4.DAE │ │ │ │ │ ├── l4.stl │ │ │ │ │ ├── l5.DAE │ │ │ │ │ ├── l5.stl │ │ │ │ │ ├── l6.DAE │ │ │ │ │ ├── l6.stl │ │ │ │ │ ├── pedestal.DAE │ │ │ │ │ └── pedestal.stl │ │ │ │ ├── multi_object_sawyer_xyz/ │ │ │ │ │ ├── door_config.xml │ │ │ │ │ ├── door_hook_config.xml │ │ │ │ │ ├── sawyer_2_push_puck.xml │ │ │ │ │ ├── sawyer_door.xml │ │ │ │ │ ├── sawyer_door_pull.xml │ │ │ │ │ ├── sawyer_door_pull_30.xml │ │ │ │ │ ├── sawyer_door_pull_60.xml │ │ │ │ │ ├── sawyer_door_pull_hook.xml │ │ │ │ │ ├── sawyer_door_pull_hook_30.xml │ │ │ │ │ ├── sawyer_door_pull_hook_45.xml │ │ │ │ │ ├── sawyer_grasp.xml │ │ │ │ │ ├── sawyer_multiobj.xml │ │ │ │ │ ├── sawyer_pick_and_place.xml │ │ │ │ │ ├── sawyer_pick_and_place_hidden_arm.xml │ │ │ │ │ ├── sawyer_push_puck.xml │ │ │ │ │ ├── sawyer_push_two_puck.xml │ │ │ │ │ ├── sawyer_reach.xml │ │ │ │ │ ├── sawyer_reach_torque.xml │ │ │ │ │ ├── sawyer_wsg_base.xml │ │ │ │ │ ├── sawyer_xyz_base.xml │ │ │ │ │ ├── sawyer_xyz_base_door_hook.xml │ │ │ │ │ ├── sawyer_xyz_base_hidden_arm.xml │ │ │ │ │ ├── sawyer_xyz_base_small_table.xml │ │ │ │ │ ├── sawyer_xyz_bin_base.xml │ │ │ │ │ ├── sawyer_xyz_bin_base_gripper.xml │ │ │ │ │ └── shared_config.xml │ │ │ │ ├── multiobject_models/ │ │ │ │ │ ├── Bowl/ │ │ │ │ │ │ ├── Bowl.off │ │ │ │ │ │ ├── Bowl.stl │ │ │ │ │ │ ├── Bowl.wrl │ │ │ │ │ │ ├── Bowl_GM.stl │ │ │ │ │ │ ├── Camera.stl │ │ │ │ │ │ ├── Lamp.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_001.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_002.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_003.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_004.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_005.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_006.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_007.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_008.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_009.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_010.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_011.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_012.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_013.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_014.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_015.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_016.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_017.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_018.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_019.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_020.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_021.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_022.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_023.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_024.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_025.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_026.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_027.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_028.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_029.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_030.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_031.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_032.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_033.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_034.stl │ │ │ │ │ │ └── Shape_IndexedFaceSet_035.stl │ │ │ │ │ ├── ElephantBowl/ │ │ │ │ │ │ ├── Camera.stl │ │ │ │ │ │ ├── ElephantBowl.off │ │ │ │ │ │ ├── ElephantBowl.stl │ │ │ │ │ │ ├── ElephantBowl.wrl │ │ │ │ │ │ ├── ElephantBowl_GM.stl │ │ │ │ │ │ ├── Lamp.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_001.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_002.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_003.stl │ │ │ │ │ │ └── Shape_IndexedFaceSet_004.stl │ │ │ │ │ ├── Fork/ │ │ │ │ │ │ ├── Camera.stl │ │ │ │ │ │ ├── Fork.off │ │ │ │ │ │ ├── Fork.stl │ │ │ │ │ │ ├── Fork.wrl │ │ │ │ │ │ ├── Fork_GM.stl │ │ │ │ │ │ ├── Lamp.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_001.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_002.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_003.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_004.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_005.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_006.stl │ │ │ │ │ │ └── Shape_IndexedFaceSet_007.stl │ │ │ │ │ ├── GlassBowl/ │ │ │ │ │ │ ├── Camera.stl │ │ │ │ │ │ ├── GlassBowl.off │ │ │ │ │ │ ├── GlassBowl.stl │ │ │ │ │ │ ├── GlassBowl.wrl │ │ │ │ │ │ ├── GlassBowl_GM.stl │ │ │ │ │ │ ├── Lamp.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_001.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_002.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_003.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_004.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_005.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_006.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_007.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_008.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_009.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_010.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_011.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_012.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_013.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_014.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_015.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_016.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_017.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_018.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_019.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_020.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_021.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_022.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_023.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_024.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_025.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_026.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_027.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_028.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_029.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_030.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_031.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_032.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_033.stl │ │ │ │ │ │ └── Shape_IndexedFaceSet_034.stl │ │ │ │ │ ├── Knife/ │ │ │ │ │ │ ├── Camera.stl │ │ │ │ │ │ ├── Knife.off │ │ │ │ │ │ ├── Knife.stl │ │ │ │ │ │ ├── Knife.wrl │ │ │ │ │ │ ├── Knife_GM.stl │ │ │ │ │ │ ├── Lamp.stl │ │ │ │ │ │ └── Shape_IndexedFaceSet.stl │ │ │ │ │ ├── LotusBowl01/ │ │ │ │ │ │ ├── Camera.stl │ │ │ │ │ │ ├── Lamp.stl │ │ │ │ │ │ ├── LotusBowl01.off │ │ │ │ │ │ ├── LotusBowl01.stl │ │ │ │ │ │ ├── LotusBowl01.wrl │ │ │ │ │ │ ├── LotusBowl01_GM.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_001.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_002.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_003.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_004.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_005.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_006.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_007.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_008.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_009.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_010.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_011.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_012.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_013.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_014.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_015.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_016.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_017.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_018.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_019.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_020.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_021.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_022.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_023.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_024.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_025.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_026.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_027.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_028.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_029.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_030.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_031.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_032.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_033.stl │ │ │ │ │ │ └── Shape_IndexedFaceSet_034.stl │ │ │ │ │ ├── RuggedBowl/ │ │ │ │ │ │ ├── Camera.stl │ │ │ │ │ │ ├── Lamp.stl │ │ │ │ │ │ ├── RuggedBowl.off │ │ │ │ │ │ ├── RuggedBowl.stl │ │ │ │ │ │ ├── RuggedBowl.wrl │ │ │ │ │ │ ├── RuggedBowl_GM.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_001.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_002.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_003.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_004.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_005.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_006.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_007.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_008.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_009.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_010.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_011.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_012.stl │ │ │ │ │ │ └── Shape_IndexedFaceSet_013.stl │ │ │ │ │ ├── ServingBowl/ │ │ │ │ │ │ ├── Camera.stl │ │ │ │ │ │ ├── Lamp.stl │ │ │ │ │ │ ├── ServingBowl.off │ │ │ │ │ │ ├── ServingBowl.stl │ │ │ │ │ │ ├── ServingBowl.wrl │ │ │ │ │ │ ├── ServingBowl_GM.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_001.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_002.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_003.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_004.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_005.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_006.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_007.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_008.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_009.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_010.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_011.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_012.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_013.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_014.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_015.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_016.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_017.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_018.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_019.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_020.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_021.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_022.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_023.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_024.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_025.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_026.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_027.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_028.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_029.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_030.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_031.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_032.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_033.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_034.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_035.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_036.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_037.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_038.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_039.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_040.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_041.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_042.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_043.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_044.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_045.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_046.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_047.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_048.stl │ │ │ │ │ │ └── Shape_IndexedFaceSet_049.stl │ │ │ │ │ ├── Spoon/ │ │ │ │ │ │ ├── Camera.stl │ │ │ │ │ │ ├── Lamp.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_001.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_002.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_003.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_004.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_005.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_006.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_007.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_008.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_009.stl │ │ │ │ │ │ ├── Shape_IndexedFaceSet_010.stl │ │ │ │ │ │ ├── Spoon.off │ │ │ │ │ │ ├── Spoon.stl │ │ │ │ │ │ ├── Spoon.wrl │ │ │ │ │ │ └── Spoon_GM.stl │ │ │ │ │ ├── cartgripper.xml │ │ │ │ │ ├── cartgripper_getflows.xml │ │ │ │ │ ├── cartgripper_grasp.xml │ │ │ │ │ ├── cartgripper_noautogen.xml │ │ │ │ │ ├── cartgripper_updown.xml │ │ │ │ │ ├── cartgripper_updown_2cam.xml │ │ │ │ │ ├── cartgripper_updown_2cam_noautogen.xml │ │ │ │ │ ├── cartgripper_updown_rot.xml │ │ │ │ │ ├── cartgripper_updown_whitefingers.xml │ │ │ │ │ ├── generate_touch_sensors.py │ │ │ │ │ ├── pushing2d.xml │ │ │ │ │ ├── pushing2d_controller.xml │ │ │ │ │ ├── pushing2d_controller_nomarkers.xml │ │ │ │ │ ├── pushing2d_controller_touchsensor.xml │ │ │ │ │ ├── pushing2d_controller_touchsensor_nomarkers.xml │ │ │ │ │ ├── pushing2d_touch.xml │ │ │ │ │ ├── sawyer_assets/ │ │ │ │ │ │ ├── meshes/ │ │ │ │ │ │ │ └── sawyer/ │ │ │ │ │ │ │ ├── GUIDE_WSG50_110.stl │ │ │ │ │ │ │ ├── WSG-FMF.stl │ │ │ │ │ │ │ ├── WSG50_110.stl │ │ │ │ │ │ │ ├── base.stl │ │ │ │ │ │ │ ├── head.stl │ │ │ │ │ │ │ ├── l0.stl │ │ │ │ │ │ │ ├── l1.stl │ │ │ │ │ │ │ ├── l2.stl │ │ │ │ │ │ │ ├── l3.stl │ │ │ │ │ │ │ ├── l4.stl │ │ │ │ │ │ │ ├── l5.stl │ │ │ │ │ │ │ ├── l6.stl │ │ │ │ │ │ │ ├── pedestal.stl │ │ │ │ │ │ │ ├── sawyer_ft/ │ │ │ │ │ │ │ │ ├── PEDESTAL.DAE │ │ │ │ │ │ │ │ ├── PEDESTAL.stl │ │ │ │ │ │ │ │ ├── base.DAE │ │ │ │ │ │ │ │ ├── base.stl │ │ │ │ │ │ │ │ ├── head.DAE │ │ │ │ │ │ │ │ ├── head.stl │ │ │ │ │ │ │ │ ├── l0.DAE │ │ │ │ │ │ │ │ ├── l0.stl │ │ │ │ │ │ │ │ ├── l1.DAE │ │ │ │ │ │ │ │ ├── l1.stl │ │ │ │ │ │ │ │ ├── l2.DAE │ │ │ │ │ │ │ │ ├── l2.stl │ │ │ │ │ │ │ │ ├── l3.DAE │ │ │ │ │ │ │ │ ├── l3.stl │ │ │ │ │ │ │ │ ├── l4.DAE │ │ │ │ │ │ │ │ ├── l4.stl │ │ │ │ │ │ │ │ ├── l5.DAE │ │ │ │ │ │ │ │ ├── l5.stl │ │ │ │ │ │ │ │ ├── l6.DAE │ │ │ │ │ │ │ │ └── l6.stl │ │ │ │ │ │ │ ├── sawyer_mp1/ │ │ │ │ │ │ │ │ ├── l6.DAE │ │ │ │ │ │ │ │ └── l6.stl │ │ │ │ │ │ │ ├── sawyer_mp3/ │ │ │ │ │ │ │ │ ├── l0.DAE │ │ │ │ │ │ │ │ ├── l0.stl │ │ │ │ │ │ │ │ ├── l1.DAE │ │ │ │ │ │ │ │ └── l1.stl │ │ │ │ │ │ │ └── sawyer_pv/ │ │ │ │ │ │ │ ├── base.DAE │ │ │ │ │ │ │ ├── base.stl │ │ │ │ │ │ │ ├── head.DAE │ │ │ │ │ │ │ ├── head.stl │ │ │ │ │ │ │ ├── l0.DAE │ │ │ │ │ │ │ ├── l0.stl │ │ │ │ │ │ │ ├── l1.DAE │ │ │ │ │ │ │ ├── l1.stl │ │ │ │ │ │ │ ├── l2.DAE │ │ │ │ │ │ │ ├── l2.stl │ │ │ │ │ │ │ ├── l3.DAE │ │ │ │ │ │ │ ├── l3.stl │ │ │ │ │ │ │ ├── l4.DAE │ │ │ │ │ │ │ ├── l4.stl │ │ │ │ │ │ │ ├── l5.DAE │ │ │ │ │ │ │ ├── l5.stl │ │ │ │ │ │ │ ├── l6.DAE │ │ │ │ │ │ │ ├── l6.stl │ │ │ │ │ │ │ ├── pedestal.DAE │ │ │ │ │ │ │ └── pedestal.stl │ │ │ │ │ │ └── sawyer_xyz/ │ │ │ │ │ │ ├── sawyer_grasp.xml │ │ │ │ │ │ ├── sawyer_wsg_base.xml │ │ │ │ │ │ └── shared_config.xml │ │ │ │ │ └── touchsensor.xml │ │ │ │ └── sawyer_xyz/ │ │ │ │ ├── door_config.xml │ │ │ │ ├── sawyer_assembly_peg.xml │ │ │ │ ├── sawyer_assembly_peg_horizontal.xml │ │ │ │ ├── sawyer_basketball.xml │ │ │ │ ├── sawyer_bin_picking.xml │ │ │ │ ├── sawyer_box.xml │ │ │ │ ├── sawyer_button_press.xml │ │ │ │ ├── sawyer_button_press_topdown.xml │ │ │ │ ├── sawyer_button_press_topdown_wall.xml │ │ │ │ ├── sawyer_button_press_wall.xml │ │ │ │ ├── sawyer_coffee.xml │ │ │ │ ├── sawyer_dial.xml │ │ │ │ ├── sawyer_door_lock.xml │ │ │ │ ├── sawyer_door_pull.xml │ │ │ │ ├── sawyer_drawer.xml │ │ │ │ ├── sawyer_faucet.xml │ │ │ │ ├── sawyer_hammer.xml │ │ │ │ ├── sawyer_handle_press.xml │ │ │ │ ├── sawyer_handle_press_sideway.xml │ │ │ │ ├── sawyer_handle_press_sideway_v2.xml │ │ │ │ ├── sawyer_laptop.xml │ │ │ │ ├── sawyer_lever_pull.xml │ │ │ │ ├── sawyer_peg_insertion_side.xml │ │ │ │ ├── sawyer_peg_unplug_side.xml │ │ │ │ ├── sawyer_pick_and_place.xml │ │ │ │ ├── sawyer_pick_out_of_hole.xml │ │ │ │ ├── sawyer_pick_place_v2.xml │ │ │ │ ├── sawyer_pick_place_wall_v2.xml │ │ │ │ ├── sawyer_plate_slide.xml │ │ │ │ ├── sawyer_plate_slide_sideway.xml │ │ │ │ ├── sawyer_push_and_reach_mocap_goal_hidden.xml │ │ │ │ ├── sawyer_push_back.xml │ │ │ │ ├── sawyer_push_v2.xml │ │ │ │ ├── sawyer_push_wall_v2.xml │ │ │ │ ├── sawyer_pusher_no_table.xml │ │ │ │ ├── sawyer_pusher_small_table.xml │ │ │ │ ├── sawyer_reach_push_pick_and_place.xml │ │ │ │ ├── sawyer_reach_push_pick_and_place_wall.xml │ │ │ │ ├── sawyer_reach_v2.xml │ │ │ │ ├── sawyer_reach_wall_v2.xml │ │ │ │ ├── sawyer_shelf_placing.xml │ │ │ │ ├── sawyer_shelf_removing.xml │ │ │ │ ├── sawyer_soccer.xml │ │ │ │ ├── sawyer_stick_obj.xml │ │ │ │ ├── sawyer_sweep.xml │ │ │ │ ├── sawyer_sweep_tool.xml │ │ │ │ ├── sawyer_table_with_hole.xml │ │ │ │ ├── sawyer_table_with_hole_no_puck.xml │ │ │ │ ├── sawyer_window.xml │ │ │ │ ├── sawyer_window_horizontal.xml │ │ │ │ ├── sawyer_xyz_base.xml │ │ │ │ ├── sawyer_xyz_base_no_table.xml │ │ │ │ ├── shared_config.xml │ │ │ │ └── visual_config.xml │ │ │ ├── assets_v2/ │ │ │ │ ├── objects/ │ │ │ │ │ ├── assembly_peg.xml │ │ │ │ │ ├── assets/ │ │ │ │ │ │ ├── assembly_peg.xml │ │ │ │ │ │ ├── assembly_peg_dependencies.xml │ │ │ │ │ │ ├── basketball.xml │ │ │ │ │ │ ├── basketball_dependencies.xml │ │ │ │ │ │ ├── basketballhoop.xml │ │ │ │ │ │ ├── binA.xml │ │ │ │ │ │ ├── binB.xml │ │ │ │ │ │ ├── bin_dependencies.xml │ │ │ │ │ │ ├── block.xml │ │ │ │ │ │ ├── block_cyl.xml │ │ │ │ │ │ ├── block_dependencies.xml │ │ │ │ │ │ ├── box.xml │ │ │ │ │ │ ├── box_dependencies.xml │ │ │ │ │ │ ├── boxtop.xml │ │ │ │ │ │ ├── buttonbox.xml │ │ │ │ │ │ ├── buttonbox_dependencies.xml │ │ │ │ │ │ ├── club.xml │ │ │ │ │ │ ├── club_dependencies.xml │ │ │ │ │ │ ├── coffeemachine.xml │ │ │ │ │ │ ├── coffeemachine_dependencies.xml │ │ │ │ │ │ ├── dial.xml │ │ │ │ │ │ ├── dial_dependencies.xml │ │ │ │ │ │ ├── doorlockA.xml │ │ │ │ │ │ ├── doorlockB.xml │ │ │ │ │ │ ├── doorlock_dependencies.xml │ │ │ │ │ │ ├── drawer.xml │ │ │ │ │ │ ├── drawer_dependencies.xml │ │ │ │ │ │ ├── faucet.xml │ │ │ │ │ │ ├── faucet_dependencies.xml │ │ │ │ │ │ ├── hammer.xml │ │ │ │ │ │ ├── hammer_dependencies.xml │ │ │ │ │ │ ├── hammerblock.xml │ │ │ │ │ │ ├── handle_press.xml │ │ │ │ │ │ ├── handle_press_dependencies.xml │ │ │ │ │ │ ├── laptop.xml │ │ │ │ │ │ ├── laptop_dependencies.xml │ │ │ │ │ │ ├── lever.xml │ │ │ │ │ │ ├── lever_dependencies.xml │ │ │ │ │ │ ├── mug.xml │ │ │ │ │ │ ├── objA.xml │ │ │ │ │ │ ├── peg_block.xml │ │ │ │ │ │ ├── peg_block_dependencies.xml │ │ │ │ │ │ ├── peg_insert.xml │ │ │ │ │ │ ├── peg_insert_dependencies.xml │ │ │ │ │ │ ├── plug.xml │ │ │ │ │ │ ├── plug_dependencies.xml │ │ │ │ │ │ ├── plug_wall.xml │ │ │ │ │ │ ├── plug_wall_dependencies.xml │ │ │ │ │ │ ├── puck.xml │ │ │ │ │ │ ├── puck_goal.xml │ │ │ │ │ │ ├── puck_goal_dependencies.xml │ │ │ │ │ │ ├── shelf.xml │ │ │ │ │ │ ├── shelf_dependencies.xml │ │ │ │ │ │ ├── shelfb.xml │ │ │ │ │ │ ├── shelfb_dependencies.xml │ │ │ │ │ │ ├── soccer_ball.xml │ │ │ │ │ │ ├── soccer_dependencies.xml │ │ │ │ │ │ ├── soccer_goal.xml │ │ │ │ │ │ ├── stick.xml │ │ │ │ │ │ ├── stick_dependencies.xml │ │ │ │ │ │ ├── table.xml │ │ │ │ │ │ ├── table_dependencies.xml │ │ │ │ │ │ ├── table_hole.xml │ │ │ │ │ │ ├── thermos.xml │ │ │ │ │ │ ├── thermos_dependencies.xml │ │ │ │ │ │ ├── wall.xml │ │ │ │ │ │ ├── wall_dependencies.xml │ │ │ │ │ │ ├── window.xml │ │ │ │ │ │ ├── window_dependencies.xml │ │ │ │ │ │ ├── window_horiz.xml │ │ │ │ │ │ ├── xyz_base.xml │ │ │ │ │ │ └── xyz_base_dependencies.xml │ │ │ │ │ ├── basketball.xml │ │ │ │ │ ├── basketballhoop.xml │ │ │ │ │ ├── binA.xml │ │ │ │ │ ├── binB.xml │ │ │ │ │ ├── block.xml │ │ │ │ │ ├── block_cyl.xml │ │ │ │ │ ├── box.xml │ │ │ │ │ ├── buttonbox.xml │ │ │ │ │ ├── club.xml │ │ │ │ │ ├── coffeemachine.xml │ │ │ │ │ ├── dial.xml │ │ │ │ │ ├── doorlockA.xml │ │ │ │ │ ├── doorlockB.xml │ │ │ │ │ ├── drawer.xml │ │ │ │ │ ├── faucet.xml │ │ │ │ │ ├── hammer.xml │ │ │ │ │ ├── hammerblock.xml │ │ │ │ │ ├── handle_press.xml │ │ │ │ │ ├── laptop.xml │ │ │ │ │ ├── lever.xml │ │ │ │ │ ├── meshes/ │ │ │ │ │ │ ├── assembly_peg/ │ │ │ │ │ │ │ ├── assembly_peg_handle.stl │ │ │ │ │ │ │ ├── assembly_peg_ring.stl │ │ │ │ │ │ │ └── assembly_peg_rod.stl │ │ │ │ │ │ ├── basketball/ │ │ │ │ │ │ │ ├── backboard.stl │ │ │ │ │ │ │ ├── backboardsquareinner.stl │ │ │ │ │ │ │ ├── backboardsquareouter.stl │ │ │ │ │ │ │ ├── basketballinner.stl │ │ │ │ │ │ │ ├── basketballouter.stl │ │ │ │ │ │ │ ├── hoop.stl │ │ │ │ │ │ │ └── pole.stl │ │ │ │ │ │ ├── bin/ │ │ │ │ │ │ │ └── bin.stl │ │ │ │ │ │ ├── block/ │ │ │ │ │ │ │ └── block.stl │ │ │ │ │ │ ├── box/ │ │ │ │ │ │ │ ├── boxhandle.stl │ │ │ │ │ │ │ └── boxtop.stl │ │ │ │ │ │ ├── buttonbox/ │ │ │ │ │ │ │ ├── button.stl │ │ │ │ │ │ │ ├── buttonring.stl │ │ │ │ │ │ │ ├── stopbot.stl │ │ │ │ │ │ │ ├── stopbutton.stl │ │ │ │ │ │ │ ├── stopbuttonrim.stl │ │ │ │ │ │ │ ├── stopbuttonrod.stl │ │ │ │ │ │ │ └── stoptop.stl │ │ │ │ │ │ ├── coffeemachine/ │ │ │ │ │ │ │ ├── body1.stl │ │ │ │ │ │ │ ├── body2.stl │ │ │ │ │ │ │ ├── bodypiece1.stl │ │ │ │ │ │ │ ├── bodypiece2.stl │ │ │ │ │ │ │ ├── bodypiece3.stl │ │ │ │ │ │ │ ├── button.stl │ │ │ │ │ │ │ ├── buttonring.stl │ │ │ │ │ │ │ ├── cup.stl │ │ │ │ │ │ │ ├── handle.stl │ │ │ │ │ │ │ ├── mug.stl │ │ │ │ │ │ │ ├── spout.stl │ │ │ │ │ │ │ └── spoutconnect.stl │ │ │ │ │ │ ├── dial/ │ │ │ │ │ │ │ ├── dial.stl │ │ │ │ │ │ │ └── dialhead.stl │ │ │ │ │ │ ├── doorlock/ │ │ │ │ │ │ │ ├── door.stl │ │ │ │ │ │ │ ├── door_handle.stl │ │ │ │ │ │ │ ├── handle.stl │ │ │ │ │ │ │ ├── handle_base.stl │ │ │ │ │ │ │ ├── lock.stl │ │ │ │ │ │ │ ├── lock_base.stl │ │ │ │ │ │ │ └── safe.stl │ │ │ │ │ │ ├── drawer/ │ │ │ │ │ │ │ ├── drawer.stl │ │ │ │ │ │ │ ├── drawercase.stl │ │ │ │ │ │ │ └── drawerhandle.stl │ │ │ │ │ │ ├── faucet/ │ │ │ │ │ │ │ ├── faucetbase.stl │ │ │ │ │ │ │ ├── faucethandle1.stl │ │ │ │ │ │ │ └── faucethead.stl │ │ │ │ │ │ ├── golf_club/ │ │ │ │ │ │ │ ├── club_handle.stl │ │ │ │ │ │ │ ├── club_head.stl │ │ │ │ │ │ │ └── club_tape.stl │ │ │ │ │ │ ├── hammer/ │ │ │ │ │ │ │ ├── hammerblock.stl │ │ │ │ │ │ │ ├── hammerhandle.stl │ │ │ │ │ │ │ ├── hammerhead.stl │ │ │ │ │ │ │ └── nail.stl │ │ │ │ │ │ ├── handle_press/ │ │ │ │ │ │ │ ├── handle_press_base.stl │ │ │ │ │ │ │ ├── handle_press_col1.stl │ │ │ │ │ │ │ ├── handle_press_col2.stl │ │ │ │ │ │ │ ├── handle_press_col3.stl │ │ │ │ │ │ │ ├── handle_press_grip.stl │ │ │ │ │ │ │ ├── handle_press_lever.stl │ │ │ │ │ │ │ └── handle_press_trim.stl │ │ │ │ │ │ ├── laptop/ │ │ │ │ │ │ │ ├── laptop_base.stl │ │ │ │ │ │ │ ├── laptop_hinge.stl │ │ │ │ │ │ │ ├── laptop_keys.stl │ │ │ │ │ │ │ ├── laptop_screen.stl │ │ │ │ │ │ │ └── laptop_top.stl │ │ │ │ │ │ ├── lever/ │ │ │ │ │ │ │ ├── lever_axis.stl │ │ │ │ │ │ │ ├── lever_base.stl │ │ │ │ │ │ │ ├── lever_handle.stl │ │ │ │ │ │ │ ├── lever_rod.stl │ │ │ │ │ │ │ └── lever_rodbase.stl │ │ │ │ │ │ ├── peg_block/ │ │ │ │ │ │ │ ├── block_inner.stl │ │ │ │ │ │ │ └── block_outer.stl │ │ │ │ │ │ ├── plug/ │ │ │ │ │ │ │ ├── plug.stl │ │ │ │ │ │ │ ├── plug_head.stl │ │ │ │ │ │ │ ├── plug_plastic.stl │ │ │ │ │ │ │ └── plug_wall.stl │ │ │ │ │ │ ├── puck/ │ │ │ │ │ │ │ ├── goal_net.stl │ │ │ │ │ │ │ ├── goal_rim.stl │ │ │ │ │ │ │ ├── net1_col.stl │ │ │ │ │ │ │ ├── net2_col.stl │ │ │ │ │ │ │ ├── net3_col.stl │ │ │ │ │ │ │ ├── net4_col.stl │ │ │ │ │ │ │ └── puck.stl │ │ │ │ │ │ ├── shelf/ │ │ │ │ │ │ │ ├── shelf.stl │ │ │ │ │ │ │ └── shelf_supports.stl │ │ │ │ │ │ ├── shelfb/ │ │ │ │ │ │ │ ├── shelf_0.stl │ │ │ │ │ │ │ ├── shelf_1.stl │ │ │ │ │ │ │ └── shelf_frame.stl │ │ │ │ │ │ ├── soccer/ │ │ │ │ │ │ │ ├── goal_col1.stl │ │ │ │ │ │ │ ├── goal_col2.stl │ │ │ │ │ │ │ ├── goal_col3.stl │ │ │ │ │ │ │ ├── goal_col4.stl │ │ │ │ │ │ │ ├── soccer_black.stl │ │ │ │ │ │ │ ├── soccer_frame.stl │ │ │ │ │ │ │ ├── soccer_net.stl │ │ │ │ │ │ │ └── soccer_white.stl │ │ │ │ │ │ ├── stick/ │ │ │ │ │ │ │ └── stick.stl │ │ │ │ │ │ ├── table/ │ │ │ │ │ │ │ ├── table_hole.stl │ │ │ │ │ │ │ ├── table_hole2.stl │ │ │ │ │ │ │ ├── tablebody.stl │ │ │ │ │ │ │ └── tabletop.stl │ │ │ │ │ │ ├── thermos/ │ │ │ │ │ │ │ ├── therm_base.stl │ │ │ │ │ │ │ ├── therm_body.stl │ │ │ │ │ │ │ ├── therm_cap.stl │ │ │ │ │ │ │ ├── therm_handle.stl │ │ │ │ │ │ │ └── therm_trim.stl │ │ │ │ │ │ ├── window/ │ │ │ │ │ │ │ ├── window_base.stl │ │ │ │ │ │ │ ├── window_frame.stl │ │ │ │ │ │ │ ├── window_h_base.stl │ │ │ │ │ │ │ ├── window_h_frame.stl │ │ │ │ │ │ │ ├── windowa_frame.stl │ │ │ │ │ │ │ ├── windowa_glass.stl │ │ │ │ │ │ │ ├── windowa_h_frame.stl │ │ │ │ │ │ │ ├── windowa_h_glass.stl │ │ │ │ │ │ │ ├── windowb_frame.stl │ │ │ │ │ │ │ ├── windowb_glass.stl │ │ │ │ │ │ │ ├── windowb_h_frame.stl │ │ │ │ │ │ │ └── windowb_h_glass.stl │ │ │ │ │ │ └── xyz_base/ │ │ │ │ │ │ ├── base.stl │ │ │ │ │ │ ├── eGripperBase.stl │ │ │ │ │ │ ├── head.stl │ │ │ │ │ │ ├── l0.stl │ │ │ │ │ │ ├── l1.stl │ │ │ │ │ │ ├── l2.stl │ │ │ │ │ │ ├── l3.stl │ │ │ │ │ │ ├── l4.stl │ │ │ │ │ │ ├── l5.stl │ │ │ │ │ │ ├── l6.stl │ │ │ │ │ │ └── pedestal.stl │ │ │ │ │ ├── mug.xml │ │ │ │ │ ├── objA.xml │ │ │ │ │ ├── peg_block.xml │ │ │ │ │ ├── peg_insert.xml │ │ │ │ │ ├── plug.xml │ │ │ │ │ ├── plug_wall.xml │ │ │ │ │ ├── puck.xml │ │ │ │ │ ├── puck_goal.xml │ │ │ │ │ ├── shelf.xml │ │ │ │ │ ├── shelfb.xml │ │ │ │ │ ├── soccer_ball.xml │ │ │ │ │ ├── soccer_goal.xml │ │ │ │ │ ├── sphere.xml │ │ │ │ │ ├── stick.xml │ │ │ │ │ ├── table.xml │ │ │ │ │ ├── table_hole.xml │ │ │ │ │ ├── thermos.xml │ │ │ │ │ ├── wall.xml │ │ │ │ │ ├── window.xml │ │ │ │ │ ├── window_horiz.xml │ │ │ │ │ └── xyz_base.xml │ │ │ │ ├── sawyer_xyz/ │ │ │ │ │ ├── sawyer_assembly_peg.xml │ │ │ │ │ ├── sawyer_basketball.xml │ │ │ │ │ ├── sawyer_bin_picking.xml │ │ │ │ │ ├── sawyer_box.xml │ │ │ │ │ ├── sawyer_button_press.xml │ │ │ │ │ ├── sawyer_button_press_topdown.xml │ │ │ │ │ ├── sawyer_button_press_topdown_wall.xml │ │ │ │ │ ├── sawyer_button_press_wall.xml │ │ │ │ │ ├── sawyer_coffee.xml │ │ │ │ │ ├── sawyer_dial.xml │ │ │ │ │ ├── sawyer_door_lock.xml │ │ │ │ │ ├── sawyer_door_pull.xml │ │ │ │ │ ├── sawyer_drawer.xml │ │ │ │ │ ├── sawyer_faucet.xml │ │ │ │ │ ├── sawyer_hammer.xml │ │ │ │ │ ├── sawyer_handle_press.xml │ │ │ │ │ ├── sawyer_handle_press_sideways.xml │ │ │ │ │ ├── sawyer_laptop.xml │ │ │ │ │ ├── sawyer_lever_pull.xml │ │ │ │ │ ├── sawyer_peg_insertion_side.xml │ │ │ │ │ ├── sawyer_peg_unplug_side.xml │ │ │ │ │ ├── sawyer_pick_and_place.xml │ │ │ │ │ ├── sawyer_pick_out_of_hole.xml │ │ │ │ │ ├── sawyer_pick_place_v2.xml │ │ │ │ │ ├── sawyer_pick_place_wall_v2.xml │ │ │ │ │ ├── sawyer_plate_slide.xml │ │ │ │ │ ├── sawyer_plate_slide_sideway.xml │ │ │ │ │ ├── sawyer_push_back_v2.xml │ │ │ │ │ ├── sawyer_push_v2.xml │ │ │ │ │ ├── sawyer_push_wall_v2.xml │ │ │ │ │ ├── sawyer_reach_push_pick_and_place.xml │ │ │ │ │ ├── sawyer_reach_push_pick_and_place_wall.xml │ │ │ │ │ ├── sawyer_reach_v2.xml │ │ │ │ │ ├── sawyer_reach_wall_v2.xml │ │ │ │ │ ├── sawyer_shelf_placing.xml │ │ │ │ │ ├── sawyer_shelf_removing.xml │ │ │ │ │ ├── sawyer_soccer.xml │ │ │ │ │ ├── sawyer_stick_obj.xml │ │ │ │ │ ├── sawyer_sweep_tool.xml │ │ │ │ │ ├── sawyer_sweep_v2.xml │ │ │ │ │ ├── sawyer_table_with_hole.xml │ │ │ │ │ ├── sawyer_table_with_hole_no_puck.xml │ │ │ │ │ ├── sawyer_window.xml │ │ │ │ │ └── sawyer_window_horizontal.xml │ │ │ │ └── scene/ │ │ │ │ ├── basic_scene.xml │ │ │ │ ├── basic_scene_b.xml │ │ │ │ └── basic_scene_c.xml │ │ │ ├── mujoco/ │ │ │ │ ├── __init__.py │ │ │ │ ├── env_dict.py │ │ │ │ ├── mujoco_env.py │ │ │ │ ├── sawyer_xyz/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── sawyer_xyz_env.py │ │ │ │ │ ├── v1/ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ ├── sawyer_assembly_peg.py │ │ │ │ │ │ ├── sawyer_basketball.py │ │ │ │ │ │ ├── sawyer_bin_picking.py │ │ │ │ │ │ ├── sawyer_box_close.py │ │ │ │ │ │ ├── sawyer_button_press.py │ │ │ │ │ │ ├── sawyer_button_press_topdown.py │ │ │ │ │ │ ├── sawyer_button_press_topdown_wall.py │ │ │ │ │ │ ├── sawyer_button_press_wall.py │ │ │ │ │ │ ├── sawyer_coffee_button.py │ │ │ │ │ │ ├── sawyer_coffee_pull.py │ │ │ │ │ │ ├── sawyer_coffee_push.py │ │ │ │ │ │ ├── sawyer_dial_turn.py │ │ │ │ │ │ ├── sawyer_disassemble_peg.py │ │ │ │ │ │ ├── sawyer_door.py │ │ │ │ │ │ ├── sawyer_door_close.py │ │ │ │ │ │ ├── sawyer_door_lock.py │ │ │ │ │ │ ├── sawyer_door_unlock.py │ │ │ │ │ │ ├── sawyer_drawer_close.py │ │ │ │ │ │ ├── sawyer_drawer_open.py │ │ │ │ │ │ ├── sawyer_faucet_close.py │ │ │ │ │ │ ├── sawyer_faucet_open.py │ │ │ │ │ │ ├── sawyer_hammer.py │ │ │ │ │ │ ├── sawyer_hand_insert.py │ │ │ │ │ │ ├── sawyer_handle_press.py │ │ │ │ │ │ ├── sawyer_handle_press_side.py │ │ │ │ │ │ ├── sawyer_handle_pull.py │ │ │ │ │ │ ├── sawyer_handle_pull_side.py │ │ │ │ │ │ ├── sawyer_lever_pull.py │ │ │ │ │ │ ├── sawyer_peg_insertion_side.py │ │ │ │ │ │ ├── sawyer_peg_unplug_side.py │ │ │ │ │ │ ├── sawyer_pick_out_of_hole.py │ │ │ │ │ │ ├── sawyer_plate_slide.py │ │ │ │ │ │ ├── sawyer_plate_slide_back.py │ │ │ │ │ │ ├── sawyer_plate_slide_back_side.py │ │ │ │ │ │ ├── sawyer_plate_slide_side.py │ │ │ │ │ │ ├── sawyer_push_back.py │ │ │ │ │ │ ├── sawyer_reach_push_pick_place.py │ │ │ │ │ │ ├── sawyer_reach_push_pick_place_wall.py │ │ │ │ │ │ ├── sawyer_shelf_place.py │ │ │ │ │ │ ├── sawyer_soccer.py │ │ │ │ │ │ ├── sawyer_stick_pull.py │ │ │ │ │ │ ├── sawyer_stick_push.py │ │ │ │ │ │ ├── sawyer_sweep.py │ │ │ │ │ │ ├── sawyer_sweep_into_goal.py │ │ │ │ │ │ ├── sawyer_window_close.py │ │ │ │ │ │ └── sawyer_window_open.py │ │ │ │ │ ├── v2/ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ ├── sawyer_assembly_peg_v2.py │ │ │ │ │ │ ├── sawyer_basketball_v2.py │ │ │ │ │ │ ├── sawyer_bin_picking_v2.py │ │ │ │ │ │ ├── sawyer_box_close_v2.py │ │ │ │ │ │ ├── sawyer_button_press_topdown_v2.py │ │ │ │ │ │ ├── sawyer_button_press_topdown_wall_v2.py │ │ │ │ │ │ ├── sawyer_button_press_v2.py │ │ │ │ │ │ ├── sawyer_button_press_wall_v2.py │ │ │ │ │ │ ├── sawyer_coffee_button_v2.py │ │ │ │ │ │ ├── sawyer_coffee_pull_v2.py │ │ │ │ │ │ ├── sawyer_coffee_push_v2.py │ │ │ │ │ │ ├── sawyer_dial_turn_v2.py │ │ │ │ │ │ ├── sawyer_disassemble_peg_v2.py │ │ │ │ │ │ ├── sawyer_door_close_v2.py │ │ │ │ │ │ ├── sawyer_door_lock_v2.py │ │ │ │ │ │ ├── sawyer_door_unlock_v2.py │ │ │ │ │ │ ├── sawyer_door_v2.py │ │ │ │ │ │ ├── sawyer_drawer_close_v2.py │ │ │ │ │ │ ├── sawyer_drawer_open_v2.py │ │ │ │ │ │ ├── sawyer_faucet_close_v2.py │ │ │ │ │ │ ├── sawyer_faucet_open_v2.py │ │ │ │ │ │ ├── sawyer_hammer_v2.py │ │ │ │ │ │ ├── sawyer_hand_insert_v2.py │ │ │ │ │ │ ├── sawyer_handle_press_side_v2.py │ │ │ │ │ │ ├── sawyer_handle_press_v2.py │ │ │ │ │ │ ├── sawyer_handle_pull_side_v2.py │ │ │ │ │ │ ├── sawyer_handle_pull_v2.py │ │ │ │ │ │ ├── sawyer_lever_pull_v2.py │ │ │ │ │ │ ├── sawyer_peg_insertion_side_v2.py │ │ │ │ │ │ ├── sawyer_peg_unplug_side_v2.py │ │ │ │ │ │ ├── sawyer_pick_out_of_hole_v2.py │ │ │ │ │ │ ├── sawyer_pick_place_v2.py │ │ │ │ │ │ ├── sawyer_pick_place_wall_v2.py │ │ │ │ │ │ ├── sawyer_plate_slide_back_side_v2.py │ │ │ │ │ │ ├── sawyer_plate_slide_back_v2.py │ │ │ │ │ │ ├── sawyer_plate_slide_side_v2.py │ │ │ │ │ │ ├── sawyer_plate_slide_v2.py │ │ │ │ │ │ ├── sawyer_push_back_v2.py │ │ │ │ │ │ ├── sawyer_push_v2.py │ │ │ │ │ │ ├── sawyer_push_wall_v2.py │ │ │ │ │ │ ├── sawyer_reach_v2.py │ │ │ │ │ │ ├── sawyer_reach_wall_v2.py │ │ │ │ │ │ ├── sawyer_shelf_place_v2.py │ │ │ │ │ │ ├── sawyer_soccer_v2.py │ │ │ │ │ │ ├── sawyer_stick_pull_v2.py │ │ │ │ │ │ ├── sawyer_stick_push_v2.py │ │ │ │ │ │ ├── sawyer_sweep_into_goal_v2.py │ │ │ │ │ │ ├── sawyer_sweep_v2.py │ │ │ │ │ │ ├── sawyer_window_close_v2.py │ │ │ │ │ │ └── sawyer_window_open_v2.py │ │ │ │ │ └── visual/ │ │ │ │ │ └── __init__.py │ │ │ │ └── utils/ │ │ │ │ └── rotation.py │ │ │ └── reward_utils.py │ │ └── policies/ │ │ ├── __init__.py │ │ ├── action.py │ │ ├── policy.py │ │ ├── sawyer_assembly_v1_policy.py │ │ ├── sawyer_assembly_v2_policy.py │ │ ├── sawyer_basketball_v1_policy.py │ │ ├── sawyer_basketball_v2_policy.py │ │ ├── sawyer_bin_picking_v2_policy.py │ │ ├── sawyer_box_close_v1_policy.py │ │ ├── sawyer_box_close_v2_policy.py │ │ ├── sawyer_button_press_topdown_v1_policy.py │ │ ├── sawyer_button_press_topdown_v2_policy.py │ │ ├── sawyer_button_press_topdown_wall_v1_policy.py │ │ ├── sawyer_button_press_topdown_wall_v2_policy.py │ │ ├── sawyer_button_press_v1_policy.py │ │ ├── sawyer_button_press_v2_policy.py │ │ ├── sawyer_button_press_wall_v1_policy.py │ │ ├── sawyer_button_press_wall_v2_policy.py │ │ ├── sawyer_coffee_button_v1_policy.py │ │ ├── sawyer_coffee_button_v2_policy.py │ │ ├── sawyer_coffee_pull_v1_policy.py │ │ ├── sawyer_coffee_pull_v2_policy.py │ │ ├── sawyer_coffee_push_v1_policy.py │ │ ├── sawyer_coffee_push_v2_policy.py │ │ ├── sawyer_dial_turn_v1_policy.py │ │ ├── sawyer_dial_turn_v2_policy.py │ │ ├── sawyer_disassemble_v1_policy.py │ │ ├── sawyer_disassemble_v2_policy.py │ │ ├── sawyer_door_close_v1_policy.py │ │ ├── sawyer_door_close_v2_policy.py │ │ ├── sawyer_door_lock_v1_policy.py │ │ ├── sawyer_door_lock_v2_policy.py │ │ ├── sawyer_door_open_v1_policy.py │ │ ├── sawyer_door_open_v2_policy.py │ │ ├── sawyer_door_unlock_v1_policy.py │ │ ├── sawyer_door_unlock_v2_policy.py │ │ ├── sawyer_drawer_close_v1_policy.py │ │ ├── sawyer_drawer_close_v2_policy.py │ │ ├── sawyer_drawer_open_v1_policy.py │ │ ├── sawyer_drawer_open_v2_policy.py │ │ ├── sawyer_faucet_close_v1_policy.py │ │ ├── sawyer_faucet_close_v2_policy.py │ │ ├── sawyer_faucet_open_v1_policy.py │ │ ├── sawyer_faucet_open_v2_policy.py │ │ ├── sawyer_hammer_v1_policy.py │ │ ├── sawyer_hammer_v2_policy.py │ │ ├── sawyer_hand_insert_v1_policy.py │ │ ├── sawyer_hand_insert_v2_policy.py │ │ ├── sawyer_handle_press_side_v2_policy.py │ │ ├── sawyer_handle_press_v1_policy.py │ │ ├── sawyer_handle_press_v2_policy.py │ │ ├── sawyer_handle_pull_side_v1_policy.py │ │ ├── sawyer_handle_pull_side_v2_policy.py │ │ ├── sawyer_handle_pull_v1_policy.py │ │ ├── sawyer_handle_pull_v2_policy.py │ │ ├── sawyer_lever_pull_v2_policy.py │ │ ├── sawyer_peg_insertion_side_v2_policy.py │ │ ├── sawyer_peg_unplug_side_v1_policy.py │ │ ├── sawyer_peg_unplug_side_v2_policy.py │ │ ├── sawyer_pick_out_of_hole_v1_policy.py │ │ ├── sawyer_pick_out_of_hole_v2_policy.py │ │ ├── sawyer_pick_place_v2_policy.py │ │ ├── sawyer_pick_place_wall_v2_policy.py │ │ ├── sawyer_plate_slide_back_side_v2_policy.py │ │ ├── sawyer_plate_slide_back_v1_policy.py │ │ ├── sawyer_plate_slide_back_v2_policy.py │ │ ├── sawyer_plate_slide_side_v1_policy.py │ │ ├── sawyer_plate_slide_side_v2_policy.py │ │ ├── sawyer_plate_slide_v1_policy.py │ │ ├── sawyer_plate_slide_v2_policy.py │ │ ├── sawyer_push_back_v1_policy.py │ │ ├── sawyer_push_back_v2_policy.py │ │ ├── sawyer_push_v2_policy.py │ │ ├── sawyer_push_wall_v2_policy.py │ │ ├── sawyer_reach_v2_policy.py │ │ ├── sawyer_reach_wall_v2_policy.py │ │ ├── sawyer_shelf_place_v1_policy.py │ │ ├── sawyer_shelf_place_v2_policy.py │ │ ├── sawyer_soccer_v1_policy.py │ │ ├── sawyer_soccer_v2_policy.py │ │ ├── sawyer_stick_pull_v1_policy.py │ │ ├── sawyer_stick_pull_v2_policy.py │ │ ├── sawyer_stick_push_v1_policy.py │ │ ├── sawyer_stick_push_v2_policy.py │ │ ├── sawyer_sweep_into_v1_policy.py │ │ ├── sawyer_sweep_into_v2_policy.py │ │ ├── sawyer_sweep_v1_policy.py │ │ ├── sawyer_sweep_v2_policy.py │ │ ├── sawyer_window_close_v2_policy.py │ │ └── sawyer_window_open_v2_policy.py │ ├── scripts/ │ │ ├── demo_sawyer.py │ │ ├── grasp.py │ │ ├── keyboard_control.py │ │ ├── mouse_control.py │ │ ├── plot_rewards_returns.ipynb │ │ ├── plot_rewards_returns_noise_3D.ipynb │ │ ├── profile_memory_usage.py │ │ └── scripted_policy_movies.ipynb │ ├── setup.cfg │ ├── setup.py │ └── tests/ │ ├── __init__.py │ ├── helpers.py │ ├── integration/ │ │ ├── __init__.py │ │ ├── test_memory_usage.py │ │ ├── test_new_api.py │ │ └── test_single_goal_envs.py │ └── metaworld/ │ ├── __init__.py │ └── envs/ │ ├── __init__.py │ └── mujoco/ │ ├── __init__.py │ └── sawyer_xyz/ │ ├── __init__.py │ ├── test_obs_space_hand.py │ ├── test_sawyer_xyz_env.py │ ├── test_scripted_policies.py │ └── utils.py ├── README.md ├── code_generation/ │ ├── __init__.py │ ├── gold_reward_rewrite/ │ │ ├── lift_cube.py │ │ ├── move_bucket.py │ │ ├── open_cabinet_door.py │ │ ├── open_cabinet_drawer.py │ │ ├── panda_avoid_obstacles.py │ │ ├── peg_insertion.py │ │ ├── pick_cube.py │ │ ├── plug_charger.py │ │ ├── push_chair.py │ │ ├── stack_cube.py │ │ └── turn_faucet.py │ ├── interactive/ │ │ ├── __init__.py │ │ ├── basic/ │ │ │ ├── __init__.py │ │ │ └── generation.py │ │ ├── classlike_prompt/ │ │ │ ├── __init__.py │ │ │ └── feedback_prompt.py │ │ └── human_feedback_exp.py │ ├── post_process/ │ │ ├── __init__.py │ │ └── post_process.py │ └── single_flow/ │ ├── __init__.py │ ├── classlike_prompt/ │ │ ├── AntPrompt.py │ │ ├── HopperPrompt.py │ │ ├── MetaworldPrompt.py │ │ ├── MobileDualArmPrompt.py │ │ ├── MobilePandaPrompt.py │ │ ├── PandaPrompt.py │ │ ├── __init__.py │ │ └── few_shot_prompt.py │ ├── few_shot/ │ │ ├── __init__.py │ │ └── generation.py │ ├── few_shot_exp.py │ ├── metaworld_exp.py │ ├── run_maniskill_fewshot.sh │ ├── run_maniskill_zeroshot.sh │ ├── run_metaworld_zeroshot.sh │ ├── zero_shot/ │ │ ├── __init__.py │ │ └── generation.py │ └── zero_shot_exp.py ├── rlkit/ │ └── envs/ │ ├── proxy_env.py │ └── wrappers/ │ ├── __init__.py │ └── normalized_box_env.py ├── run_maniskill/ │ ├── download_data.sh │ ├── ppo.py │ ├── reward_code/ │ │ ├── few-shot/ │ │ │ ├── LiftCube-v0/ │ │ │ │ ├── general.py │ │ │ │ └── specific.py │ │ │ ├── OpenCabinetDoor-v1/ │ │ │ │ ├── general.py │ │ │ │ └── specific.py │ │ │ ├── OpenCabinetDrawer-v1/ │ │ │ │ ├── general.py │ │ │ │ └── specific.py │ │ │ ├── PickCube-v0/ │ │ │ │ ├── general.py │ │ │ │ └── specific.py │ │ │ ├── PushChair-v1/ │ │ │ │ ├── general.py │ │ │ │ └── specific.py │ │ │ └── TurnFaucet-v0/ │ │ │ ├── general.py │ │ │ └── specific.py │ │ └── zero-shot/ │ │ ├── LiftCube-v0/ │ │ │ ├── general.py │ │ │ └── specific.py │ │ ├── OpenCabinetDoor-v1/ │ │ │ ├── general.py │ │ │ └── specific.py │ │ ├── OpenCabinetDrawer-v1/ │ │ │ ├── general.py │ │ │ └── specific.py │ │ ├── PickCube-v0/ │ │ │ ├── general.py │ │ │ └── specific.py │ │ ├── PushChair-v1/ │ │ │ ├── general.py │ │ │ └── specific.py │ │ └── TurnFaucet-v0/ │ │ ├── general.py │ │ └── specific.py │ ├── run_few_shot.sh │ ├── run_oracle.sh │ ├── run_zero_shot.sh │ └── sac.py └── run_metaworld/ ├── reward_code/ │ ├── button-press-v2/ │ │ ├── general.py │ │ └── specific.py │ ├── door-close-v2/ │ │ ├── general.py │ │ └── specific.py │ ├── door-unlock-v2/ │ │ ├── general.py │ │ └── specific.py │ ├── drawer-close-v2/ │ │ ├── general.py │ │ └── specific.py │ ├── drawer-open-v2/ │ │ ├── general.py │ │ └── specific.py │ ├── handle-press-side-v2/ │ │ ├── general.py │ │ └── specific.py │ ├── handle-press-v2/ │ │ ├── general.py │ │ └── specific.py │ ├── sweep-into-v2/ │ │ ├── general.py │ │ └── specific.py │ ├── window-close-v2/ │ │ ├── general.py │ │ └── specific.py │ └── window-open-v2/ │ ├── general.py │ └── specific.py ├── run_oracle.sh ├── run_zero_shot.sh └── sac.py