
    ni              
          S SK r S SKr\ R                  R                  \ R                  R	                  \R
                  " \R                  " 5       5      5      5      r\ R                  R                  \ R                  R                  \5      5      r\ R                  R                  R                  S \5        S SKJr  S SKrS SKrSrSrS SK r S SKrS SKrS SKJrJr  SrSrSrS	rS
rS r\S:X  Ga  \R:                  " 5         \(       a  SrOSr/ rS /\-  r / r!/ r"\#" \5       H/  r$\" 5       u  r%r&\"RO                  \%5        \!RO                  \&5        M1     \#" \5       H<  r(\R(                  " \\(\\!\(   \ 4S9r)\)RU                  5         \RO                  \)5        M>     \" H  r%\%RW                  \S/5        M     S /\-  r,\#" \5       H  r-\"\-   R]                  5       S    r/M     \" H  r%\%RW                  \S/5        M     S /\-  r,\#" \5       H  r-\"\-   R]                  5       S    \,\-'   M     \" H  r%\%RW                  \S/5        M     S /\-  r,\#" \5       H!  r-\"\-   R]                  5       S    \,\-'   \,\-   r/M#     \" H  r%\%RW                  \S/5        M     S /\-  r,\#" \5       H  r-\"\-   R]                  5       S    \,\-'   M     \" H  r%\%RW                  \S/5        M     \ H  r)\)Ra                  5         M     Sr1S r2\3" \1S5      r4\4Rk                  S/5        \r6\#" \65       H  r7\8" S\75        S\7-  r9\3" \95       r:\: Hf  r;S\;;   aX  \;Ry                  SS\=" \75      -   5      r;\7\6S-
  :  a#  S\;;  a  \;Ry                  SS5      r;\8" S\2S\;5        \4R}                  \;5        \2S-  r2Mh     SSS5        M     \8" S\25        \4Rk                  S/5        \4Rk                  S/5        \4R                  5         gg! , (       d  f       M  = f)     N)bullet_clientTgq?)ProcessPipe               c                 
   [        SU SU5        SS KnSS KnSnSnSnSn	/ n
SnX	-  n US-  n UR                  S5      (       d  M  UR	                  5       u  pU[        :X  Ga  [        (       a!  [        R                  " UR                  5      nO [        R                  " UR                  5      nUR                  [        5        UR                  S	S
9  UR                  SS9  UR!                  UR"                  S5        UR!                  UR$                  S5        UR'                  UR)                  5       5        UR+                  SSS5        [-        S5      [-        U 5      -   n[/        S5       HM  nSn[/        U5       H5  nUSU/n[0        R2                  " UU5      nU
R5                  U5        UU	-  nM7     X-  nMO     UR7                  S/5        UR!                  UR$                  S5        [/        S5       H  nUR9                  5         M     UR;                  UR<                  U5      nGM  U[>        :X  at  U n[        (       a  [A        S5      nO[A        S5      n[/        U5       H,  nU
 H  nURC                  5         M     UR9                  5         M.     UR7                  U/5        GM  U[D        :X  a$  URG                  W5        UR7                  S/5        OGM  URI                  5         g ! [
        [        4 a     M$  f = f)Nzhi:z out of r    r	   
   r   g-C6?   )numSolverIterationsd   )minimumSolverIslandSizeg#batchsimr
   zreset oki N     zclose ok)%printpybulletpybullet_datapollrecvEOFErrorKeyboardInterrupt_RESETuseGUIr   BulletClientGUIDIRECTsetTimeSteptimeStepsetPhysicsEngineParameterconfigureDebugVisualizerCOV_ENABLE_Y_AXIS_UPCOV_ENABLE_RENDERINGsetAdditionalSearchPathgetDataPath
setGravitystrrange	panda_simPandaSimAutoappendsendstepSimulationstartStateLoggingSTATE_LOGGING_PROFILE_TIMINGS_EXPLOREintstep_CLOSEstopStateLoggingclose)ranknum_processes	childPipeargsop1pdlogNamep1nspacesimulationssims_per_workeroffsetYmessagepayloadjoffsetXioffsetsimlogIdsum_rewardsnumStepsss                           _/home/james-whalen/.local/lib/python3.13/site-packages/pybullet_robots/panda/batchsim3_grasp.pyExploreWorkerrQ      s   dJ.
'"!
%+/J'FA^^F##")g &
&''0''

3nnX""q"9""3"?!!""9"9!<!!""9"9!<  !12mmAd1JD	)gay!(A!W%&&&r62#


S
!
U
'	 )
 	  nnj\"!!""9"9!<c{!
  ""3#D#DWMe(k	u:q6h!A
&&( 
   nnk]#&% nnj\"s 	t //g '( s   K. K. .LL__main__   )targetr;   blaatpay2zbatchsim.jsonzw+z{"traceEvents":[
znum=zbatchsim%d_0.jsonpidz"pid":1z"pid":z{}},z{}}zline[z]=zcount=z],
z"displayTimeUnit": "ns"}
)@osinspectpathdirnameabspathgetfilecurrentframe
currentdir	parentdirsysinsertpybullet_utilsr   panda_sim_graspr+   timer   r!   multiprocessingmpr   r   pandaEndEffectorIndexpandaNumDofsr   r5   r2   rQ   __name__freeze_supportr9   	processesr;   
childPipesparentPipesr*   pr
parentPiper:   r-   r8   pstartr.   positive_rewardskr   msgjoinfnameoutcountopenoutfile
writelinesnumFilesnumr   fnameinfilelinereplacer)   writer7        rP   <module>r      s   	 WW__RWW__W__W=Q=Q=S-TUV
GGOOBGGOOJ78	   1i   ( # 	 
   )  
	
FR zMM)	s=$*+- b FJ	z"i  !
 M"d


-t]JtDTW[.\]AGGIQ #  jOOVW%&   S&a
a.



"C    jOOXw'(   S&a%a.--/2Q    jOOXw'(  S&a%a.--/2Q
1
C  
  jOOXw'(   S&a%a.--/2Q  
  jOOVV$%   aFFH  (
%4 '	,-.(8_c	&3'E	eDd]<<ZC-@ADhqj!&D.\\%0dGE$t,MM$
1*%  
  %	fX	678	--/e L 
s   =A-O55
P	