<mujoco model="arm3d">
    <compiler angle="radian" coordinate="local" inertiafromgeom="true" />
    <option gravity="0 0 0" integrator="Euler" iterations="20" timestep="0.01" />
    
    <default>
        <joint armature="0.04" damping="1" limited="true" />
        <geom conaffinity="1" condim="1" contype="1" density="300" friction=".8 .1 .1" margin="0.002" />
    </default>
    
    <worldbody>
        <light diffuse=".5 .5 .5" dir="0 0 -1" pos="0 0 3" />
        <geom conaffinity="1" contype="1" pos="0 0.5 -0.15" size="2 2 0.1" type="plane" />

        <body name="palm" pos="0 0 0">
            <geom fromto="0 0 -0.1 0 0 0.1" rgba="0. 1. 0. 1" size="0.12" type="capsule" />
            <body axisangle="0 0 1 0.785" name="proximal_1" pos="0 0 -0.075">
                <joint axis="0 0 1" damping="1.0" name="proximal_j_1" pos="0 0 0" range="-2.5 2.5" type="hinge" />
                <geom conaffinity="1" contype="1" fromto="0 0 0 0.4 0 0" rgba="0. 1. 0. 1" size="0.06" type="capsule" />
                <body axisangle="0 0 1 -0.785" name="distal_1" pos="0.4 0 0">
                    <joint axis="0 0 1" damping="1.0" name="distal_j_1" pos="0 0 0" range="-2.3213 2.3" type="hinge" />
                    <geom conaffinity="1" contype="1" fromto="0 0 0 0.4 0 0" rgba="0. 1. 0. 1" size="0.06" type="capsule" />
                    <body axisangle="0 0 1 -1.57" name="distal_2" pos="0.4 0 0">
                        <joint axis="0 0 1" damping="1.0" name="distal_j_2" pos="0 0 0" range="-2.3213 2.3" type="hinge" />
                        <geom conaffinity="1" contype="1" fromto="0 0 0 0.4 0 0" rgba="0. 1. 0. 1" size="0.06" type="capsule" />
                        <body name="distal_4" pos="0.4 0 0">
                            <site name="tip arml" pos="0.1 -0.2 0" size="0.01" />
                            <site name="tip armr" pos="0.1 0.2 0" size="0.01" />
                            
                            <geom conaffinity="1" contype="1" fromto="0 -0.2 0 0 0.2 0" rgba="0. 1. 0. 1" size="0.04" type="capsule" />
                            <geom conaffinity="1" contype="1" fromto="0 -0.2 0 0.2 -0.2 0" rgba="0. 1. 0. 1" size="0.04" type="capsule" />
                            <geom conaffinity="1" contype="1" fromto="0 0.2 0 0.2 0.2 0" rgba="0. 1. 0. 1" size="0.04" type="capsule" />
                        </body>
                    </body>
                </body>
            </body>
        </body>
        
        <body name="object" pos="0 0 -0.1">
            
            <geom conaffinity="1" contype="1" density="0.00001" rgba="1. 1. 1. 1" size="0.1 0.1 0.1" type="cylinder" />
            <joint axis="0 1 0" damping="0.5" name="obj_slidey" pos="0.025 0.025 0.025" range="-10.3213 10.3" type="slide" />
            <joint axis="1 0 0" damping="0.5" name="obj_slidex" pos="0.025 0.025 0.025" range="-10.3213 10.3" type="slide" />
        </body>

        <body name="goal" pos="0 0 -0.145">
            
            
            <geom conaffinity="0" contype="0" density="0.00001" rgba="1. 0. 0. 1" size="0.17 0.005 0.2" type="cylinder" />
            <joint axis="0 1 0" damping="0.5" name="goal_slidey" pos="0 0 0" range="-10.3213 10.3" type="slide" />
            <joint axis="1 0 0" damping="0.5" name="goal_slidex" pos="0 0 0" range="-10.3213 10.3" type="slide" /> 
        </body>

    <geom conaffinity="0" contype="0" density="0.00001" name="object0" pos="-0.384949 0.226851 -0.1" rgba="0.551315 0.719469 0.423106 1" size="0.1 0.1 0.1" type="cylinder" /><geom conaffinity="0" contype="0" density="0.00001" name="object1" pos="0.865376 0.684830 -0.1" rgba="0.480932 0.392118 0.343178 1" size="0.1 0.1 0.1" type="cylinder" /><geom conaffinity="0" contype="0" density="0.00001" name="object2" pos="0.412289 0.438572 -0.1" rgba="0.059678 0.398044 0.737995 1" size="0.1 0.1 0.1" type="cylinder" /><geom conaffinity="0" contype="0" density="0.00001" name="object3" pos="-0.571515 0.175452 -0.1" rgba="0.531551 0.531828 0.634401 1" size="0.1 0.1 0.1" type="cylinder" /></worldbody>

    <actuator>
        <motor ctrllimited="true" ctrlrange="-3 3" joint="proximal_j_1" />
        <motor ctrllimited="true" ctrlrange="-3 3" joint="distal_j_1" />
        <motor ctrllimited="true" ctrlrange="-3 3" joint="distal_j_2" />
        
    </actuator>
</mujoco>