+
    j  c                       ^ RI t^ RIHu Ht ^ RIt^ RIt^ RI	H
t
HtHtHtHtHtHtHt ^ RIHt ^ RIHtHt ^ RIHt R tR tR tR	 tR
 tR tR tR t R# )    N)GROUPED_UNIT_ALLOCATION HYBRID_GROUPED_DENSE_ROW_INDICES$HYBRID_GROUPED_SPECIALIST_ALLOCATIONgrouped_first_layer_maskhybrid_grouped_first_layer_mask!hybrid_grouped_structure_metadatarandom_sparse_first_layer_mask random_sparse_structure_metadata)FEATURE_COLS)flatten_layersunflatten_layers)effective_artifact_tagc                  L   \        \        ^R7      p V P                  p^\        \        4      3q!V8H  q3'       g   \        P
                  ! R V3R!W34      RR\        P                  ! 4       9   g   \        P                  ! V 4      '       d   \        P                  ! V 4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;r2V P                  p^ q&! VR	7      p^ qV8  p	\        V	4      p
R"p\        \        4      qV,          qV8H  q'       Eg[   \        P
                  ! R#V	3R$Wx34      R
R\        P                  ! 4       9   g   \        P                  ! V 4      '       d   \        P                  ! V 4      MRR\        P                  ! V4      R\        P                  ! V4      R\        P                  ! V4      R\        P                  ! V4      /,          p\        P
                  ! R V3R%W34      RR\        P                  ! 4       9   g!   \        P                  ! \        4      '       d   \        P                  ! \        4      MRRTR\        P                  ! V
4      R\        P                  ! V4      RR\        P                  ! 4       9   g!   \        P                  ! \        4      '       d   \        P                  ! \        4      MRRR\        P                  ! 4       9   g!   \        P                  ! \        4      '       d   \        P                  ! \        4      MRR\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;p;p;p	;p;p
;p;p;r\        V \        4       EFK  w  pp\!        \        4       UUu0 uF  w  ppVVP"                  9   g   K  VkK  	  ppp\$        P&                  qf! V4      p\)        V4      pVV8H  q'       Eg   \        P
                  ! R V3R&VV34      RR\        P                  ! 4       9   g!   \        P                  ! \(        4      '       d   \        P                  ! \(        4      MRR
R\        P                  ! 4       9   g!   \        P                  ! \$        4      '       d   \        P                  ! \$        4      MRR\        P                  ! V4      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR\        P                  ! V4      R\        P                  ! V4      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MR/,          pRRV/,          p\        \        P                  ! V4      4      hR;p;p;ppEKN  	  R# u uppi )'   hidden_sizepy0maskpy2py5assert %(py7)spy7Naxispy1py3py10tuplepy12py14py17py18lenpy19r
   py21zassert %(py24)spy24setnppy4rowpy6py8expectedassert %(py12)s==z-%(py2)s
{%(py2)s = %(py0)s.shape
} == %(py5)s)T)>)zN%(py7)s
{%(py7)s = %(py3)s
{%(py3)s = %(py1)s.sum
}(axis=%(py5)s)
} > %(py10)s)zb%(py14)s
{%(py14)s = %(py0)s(%(py12)s)
} == (%(py17)s * %(py21)s
{%(py21)s = %(py18)s(%(py19)s)
}))zp%(py8)s
{%(py8)s = %(py0)s(%(py6)s
{%(py6)s = %(py3)s
{%(py3)s = %(py1)s.flatnonzero
}(%(py4)s)
})
} == %(py10)s)r   r
   shaper"   
@pytest_ar_call_reprcompare@py_builtinslocals_should_repr_global_name	_safereprAssertionError_format_explanationsumr   zipr   	enumeratefeaturesr'   flatnonzeror&   )r   @py_assert1@py_assert4@py_assert3@py_format6@py_format8@py_assert2@py_assert6@py_assert9@py_assert8@py_assert13@py_assert16@py_assert20@py_assert22@py_assert15@py_format11@py_format23@py_format25r)   familyifeaturer,   @py_assert5@py_assert7@py_format13s                             I/Users/jameslopez/projects/TradingBot25/tests/test_mlp_input_structure.pyCtest_grouped_mask_routes_each_first_layer_unit_to_one_signal_familyrX      s;   #LbAD::0"c,/00000000:000000400004000:000000000000EqEq!EAEA%E5E&E'EC4EE4E*EE*EEEEEE!EEEEEEEEEEEEEEEEqEEE!EEEAEEEE&EEEEEE5EEEE5EEEE&EEE'EEEEEECEEEECEEEEEEEEEEEEEE4EEEEEEEEEEE4!89V(1,(?^(?*!W7fooC]AA(?^>>3>#&3s&'3'833333'8333333s3333s3333333233332333>333333#3333#333&333'333333833338333333333 :^s   'X X c                  T   \         P                  ! \        R R7      ;_uu_ 4        \        \        ^R7       RRR4       \         P                  ! \        RR7      ;_uu_ 4        \        . \        ORN^R7       RRR4       R#   + '       g   i     LT; i  + '       g   i     R# ; i)16matchr   Nunknownfuture_feature)pytestraises
ValueErrorr   r
        rW   @test_grouped_mask_rejects_unsupported_width_and_unknown_featuresrd      se    	z	.	. 1= 
/	z	3	3 !B<!B1A!BPRS 
4	3 
/	.	3	3	3s   B#BB	B'	c                  ^	   \        \        ^R7      p \        \        ^RR7      p\        \        ^RR7      p\        \        ^RR7      pVP                  p^\	        \        4      3qTV8H  qf'       g   \
        P                  ! RV3RWE34      RR\        P                  ! 4       9   g   \
        P                  ! V4      '       d   \
        P                  ! V4      MRR\
        P                  ! V4      R\
        P                  ! V4      /,          pR	R
V/,          p\        \
        P                  ! V4      4      hR;p;reVP                  qD! 4       q`P                  q! 4       qV
8H  p^qV8H  q'       d
   V'       EgX   \
        P                  ! RW3RWjV34      RR\        P                  ! 4       9   g   \
        P                  ! V4      '       d   \
        P                  ! V4      MRR\
        P                  ! V4      R\
        P                  ! V4      R
R\        P                  ! 4       9   g   \
        P                  ! V 4      '       d   \
        P                  ! V 4      MRR\
        P                  ! V	4      R\
        P                  ! V
4      R\
        P                  ! V4      /,          pRRV/,          p\        \
        P                  ! V4      4      hR;p;p;p;p;p	;r\        P                  P!                  VP                  ^R7      V P                  ^R7      4       \        P                  P!                  W4       \        P"                  qD! W4      q'       * pV'       EgG   RRR\        P                  ! 4       9   g!   \
        P                  ! \        4      '       d   \
        P                  ! \        4      MRR\
        P                  ! V4      RR\        P                  ! 4       9   g   \
        P                  ! V4      '       d   \
        P                  ! V4      MRRR\        P                  ! 4       9   g   \
        P                  ! V4      '       d   \
        P                  ! V4      MRR\
        P                  ! V4      /,          p\        \
        P                  ! V4      4      hR;p;ppR# )r   r   2  r   	mask_seedi.3  r   firstr   r   r   r   Nr(   groupedpy9py11py13zassert %(py15)spy15r   zZassert not %(py6)s
{%(py6)s = %(py2)s
{%(py2)s = %(py0)s.array_equal
}(%(py3)s, %(py4)s)
}r'   r   	differentr*   r.   r0   )r/   r/   )zt%(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.sum
}()
} == %(py11)s
{%(py11)s = %(py9)s
{%(py9)s = %(py7)s.sum
}()
}zE%(py11)s
{%(py11)s = %(py9)s
{%(py9)s = %(py7)s.sum
}()
} == %(py13)s)r   r
   r   r2   r"   r3   r4   r5   r6   r7   r8   r9   r:   r;   r'   testingassert_array_equalarray_equal)rj   ri   againro   r@   rA   rB   rC   rD   rH   @py_assert10rT   @py_assert12rF   @py_format14@py_format16rU   s                    rW   Htest_random_sparse_mask_matches_grouped_row_sparsity_and_is_reproduciblerx   $   s   &|DG*<RSXYE*<RSXYE.|W\]I;;12s<011111111;111111511115111;11111111111199.9;.++.+-.-..3.3......;3......5....5...9...;......'....'...+...-...3.........JJ!!%)))"3W[[a[5HIJJ!!%/~~/~e////////////r////r///~//////e////e///////Y////Y///////////rc   c                     \        \        ^RR7      p V R,          pRq!V8H  q3'       gy   \        P                  ! RV3RW34      R\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR	;p;r2V R
,          pRq!V8H  q3'       gy   \        P                  ! RV3RW34      R\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR	;p;r2V R,          p^q!V8H  q3'       gy   \        P                  ! RV3RW34      R\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR	;p;r2V R,          p. ROq!V8H  q3'       gy   \        P                  ! RV3RW34      R\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR	;p;r2V R,          p\        V4      p^qrV8H  q'       g   \        P                  ! RV3RW'34      RR\        P                  ! 4       9   g!   \        P                  ! \        4      '       d   \        P                  ! \        4      MRR\        P                  ! V4      R\        P                  ! V4      R\        P                  ! V4      /,          p	RRV	/,          p
\        \        P                  ! V
4      4      hR	;p;p;rR	# )r   rf   rg   namerandom_sparse_first_layer_v1r   r(   assert %(py6)sr*   Nrh   active_edgesrow_active_edgesrow_feature_indicesr   r"   r   r   assert %(py9)srk   r.   z%(py1)s == %(py4)s)   r   r   
   r   r      r   r      r   r   r      r      z0%(py4)s
{%(py4)s = %(py0)s(%(py2)s)
} == %(py7)s)r	   r
   r3   r4   r8   r9   r:   r"   r5   r6   r7   )metadata@py_assert0rB   rE   @py_format5@py_format7r@   rF   rT   rD   @py_format10s              rW   @test_random_sparse_metadata_records_reproducible_mask_provenancer   1   s   /"X]^HF========================K )E)E))))) ))) )))E))))))))N#*s*s*****#***#***s********&'g+gg+gggggg'ggg'ggg+ggggggggg-.53./525255555/555555355553555.555/555255555555rc   c                  B   \        \        ^R7      p V P                  p^\        \        4      3q!V8H  q3'       g   \        P
                  ! R!V3R"W34      RR\        P                  ! 4       9   g   \        P                  ! V 4      '       d   \        P                  ! V 4      MRR\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;r2V P                  qf! 4       p\        V4      pR	qV8H  q'       EgI   \        P
                  ! R!V	3R#Wx34      RR
\        P                  ! 4       9   g!   \        P                  ! \        4      '       d   \        P                  ! \        4      MR
RR\        P                  ! 4       9   g   \        P                  ! V 4      '       d   \        P                  ! V 4      MRR\        P                  ! V4      R\        P                  ! V4      R\        P                  ! V4      R\        P                  ! V4      /,          p
RRV
/,          p\        \        P                  ! V4      4      hR;p;p;p;rV P                  q`P                  q! 4       qV,
          p\        V4      pRqV8H  pV'       Eg   \        P
                  ! R!V3R$W34      RR
\        P                  ! 4       9   g!   \        P                  ! \        4      '       d   \        P                  ! \        4      MR
RR\        P                  ! 4       9   g   \        P                  ! V 4      '       d   \        P                  ! V 4      MRR\        P                  ! V4      RR\        P                  ! 4       9   g   \        P                  ! V 4      '       d   \        P                  ! V 4      MRR\        P                  ! V4      R\        P                  ! V4      R\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;p;p;p;p;pp\        \         4       EF  w  pp\        \        4       UUu0 uF  w  ppVVP"                  9   g   K  VkK  	  ppp\$        P&                  q`V,          q&! V4      p\)        V4      qV8H  q'       Eg   \        P
                  ! R!V3R%V	V34      RR\        P                  ! 4       9   g!   \        P                  ! \(        4      '       d   \        P                  ! \(        4      MRRR\        P                  ! 4       9   g!   \        P                  ! \$        4      '       d   \        P                  ! \$        4      MRR\        P                  ! V4      R\        P                  ! V4      R\        P                  ! V4      R\        P                  ! V	4      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MR/,          pRRV/,          p\        \        P                  ! V4      4      hR;p;p;p;rEK  	  \*         F  pV V,          pVP,                  qf! 4       q"'       gk   RR\        P                  ! V4      R\        P                  ! V4      R\        P                  ! V4      /,          p\        \        P                  ! V4      4      hR;p;rbK  	  \.        P0                  ! \2        RR 7      ;_uu_ 4        \        \        ^R7       RRR4       R# u uppi   + '       g   i     R# ; i)&r   r   r   r   r   r   r   r   N  intr   r   r   r-   r   t  r(   r*   r+   rl   r   zassert %(py16)spy16r&   r'   rk   r,   assert %(py13)srm   z>assert %(py5)s
{%(py5)s = %(py3)s
{%(py3)s = %(py1)s.all
}()
}rZ   r[   r.   r0   )za%(py7)s
{%(py7)s = %(py0)s(%(py5)s
{%(py5)s = %(py3)s
{%(py3)s = %(py1)s.sum
}()
})
} == %(py10)s)z%(py11)s
{%(py11)s = %(py0)s((%(py3)s
{%(py3)s = %(py1)s.size
} - %(py8)s
{%(py8)s = %(py6)s
{%(py6)s = %(py4)s.sum
}()
}))
} == %(py14)s)zp%(py9)s
{%(py9)s = %(py0)s(%(py7)s
{%(py7)s = %(py3)s
{%(py3)s = %(py1)s.flatnonzero
}(%(py5)s)
})
} == %(py11)s)r   r
   r2   r"   r3   r4   r5   r6   r7   r8   r9   r:   r;   r   sizer=   r   r>   r'   r?   r&   r   allr_   r`   ra   )r   r@   rA   rB   rC   rD   rE   rF   rG   rH   rN   rV   rT   rU   rt   rI   ru   @py_format15@py_format17r)   rQ   rR   rS   r,   @py_format12rv   r   s                              rW   Jtest_hybrid_grouped_mask_preserves_specialists_and_dense_cross_family_rowsr   ;   s   *<RHD::0"c,/00000000:000000400004000:000000000000xx!xz!3z?!c!c!!!!!?!!!!!!3!!!!3!!!!!!!t!!!!t!!!x!!!z!!!?!!!c!!!!!!!!yy-88-8:-:%-3%&-#-#-----&------3----3-------t----t---y------4----4---8---:---&---#--------- !EFV(1,(?^(?*!W7fooC]AA(?^>>9s)9>),9s,-999999-999999s9999s9999999299992999>999)999,999-9999999999999999999 G 0Cyy}}}y} 0	z	.	.'!D 
/	.	 _ 
/	.	.s   "^=^+^^	c                     \        \        ^R7      p V R,          pRq!V8H  q3'       gy   \        P                  ! R0V3R1W34      R\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;r2V R	,          p^q!V8H  q3'       gy   \        P                  ! R0V3R1W34      R\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;r2V R
,          pRRRRRRRRRRRRRRRR/q!V8H  q3'       gy   \        P                  ! R0V3R1W34      R\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;r2V R,          p^p^p\        Wg4      p\        V4      qV	8H  q3'       Egg   \        P                  ! R0V3R2W34      R\        P                  ! V4      RR\        P                  ! 4       9   g!   \        P                  ! \        4      '       d   \        P                  ! \        4      MRRR\        P                  ! 4       9   g!   \        P                  ! \        4      '       d   \        P                  ! \        4      MRR\        P                  ! V4      R\        P                  ! V4      R\        P                  ! V4      R \        P                  ! V	4      /,          p
R!R"V
/,          p\        \        P                  ! V4      4      hR;p;p;p;p;rV R#,          pR$q!V8H  q3'       gy   \        P                  ! R0V3R1W34      R\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;r2V R%,          pR&q!V8H  q3'       gy   \        P                  ! R0V3R1W34      R\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;r2V R',          p. R3Op^7.p^qvV,          qV,           qV8H  q3'       g   \        P                  ! R0V3R4W34      R\        P                  ! V4      R\        P                  ! V4      R\        P                  ! V4      R\        P                  ! V4      /,          pR(R V/,          p
\        \        P                  ! V
4      4      hR;p;p;p;p;p;rV R),          p\        V4      p^@qV8H  qf'       g   \        P                  ! R0V3R5W/34      R*R+\        P                  ! 4       9   g!   \        P                  ! \        4      '       d   \        P                  ! \        4      MR+R,\        P                  ! V4      R\        P                  ! V4      R-\        P                  ! V4      /,          pR.R/V/,          p\        \        P                  ! V4      4      hR;p;p;roR# )6r   r   rz   hybrid_grouped_first_layer_v1r   r(   r|   r*   Nversionspecialist_row_families0local_technical12on_chain3macro4candlesticks5rsid_structure6market_flow7cross_assetdense_row_indicesr   listranger+   r   r   zassert %(py14)sr   r}   r   blocked_edgesr   r~   r-   feature_cols_sha256r   r"   r   r   r   rk   r.   r   )z[%(py1)s == %(py12)s
{%(py12)s = %(py3)s(%(py10)s
{%(py10)s = %(py4)s(%(py6)s, %(py8)s)
})
})r   r   r   r   r   r   r   r   )z*%(py1)s == (%(py4)s + (%(py6)s * %(py8)s))r   )r   r
   r3   r4   r8   r9   r:   r   r   r5   r6   r7   r"   )r   r   rB   rE   r   r   rT   rU   rG   @py_assert11rV   r   rt   rN   r@   rF   rD   r   s                     rW   1test_hybrid_grouped_metadata_audits_exact_v1_maskr   J   s   02NHF>>>>>>>>>>>>>>>>>>>>>>>>I#!#!###########!########-. %6ZWc>30@]C3  3    	.   	.   	 3      	 
 '(>q>">q>D,>>,>>>>>>(>>>(>>>>>>D>>>>D>>>>>>>>>>>>>>q>>>">>>>>>,>>>>>>>>>>N#*s*s*****#***#***s********O$+++++++$+++$+++++++++++&'S+HSB4SRSSRS8S8+SS+SSSSSS'SSS'SSS+HSSS4SSSRSSSSSSSSSS-.53./525255555/555555355553555.555/555255555555rc   c                     \        \        ^R7      p \        P                  P	                  ^4      pVP                  ^\        \        4      3R7      VP                  ^R7      3VP                  RR7      VP                  ^R7      3VP                  RR7      VP                  ^R7      3.pV \        P                  ! R\        R7      \        P                  ! R\        R7      .p\        W#4      p\        V. ROV4      p\        P                  qe^ ,          ^ ,          V ( ,          pRqV8H  q! V	4      q'       g   \        P                  ! RV	3RWx34      R\        P                  ! V4      R\        P                  ! V4      /,          pRRR	\        P                   ! 4       9   g!   \        P"                  ! \        4      '       d   \        P                  ! \        4      MR	R
\        P                  ! V4      RVR\        P                  ! V
4      /,          p\%        \        P&                  ! V4      4      hR;p;p;p	;r\        P(                  P+                  V^ ,          ^ ,          V ,          V^ ,          ^ ,          V ,          4       R# )r   r   )r   )dtypeg        r(   r   zGassert %(py11)s
{%(py11)s = %(py2)s
{%(py2)s = %(py0)s.all
}(%(py9)s)
}r   r'   r   rk   rl   N)   r   )r   r   )7   r   r   r   r.   )z%(py4)s == %(py7)s)r   r
   r'   randomdefault_rngnormalr"   onesboolr   r   r   r3   r4   r8   r5   r6   r7   r9   r:   rp   rq   )r   rnglayersmasksthetarestoredr@   rB   rF   rT   rt   rD   r   s                rW   Btest_masked_parameter_roundtrip_never_restores_blocked_connectionsr   [   s   #LbAD
))


"C	"c,/0	13::2:3FG		!3::1:#56		 #**!*"45F
 2777$/t1LME6)E~u=H66/1+a.$'/3/3./6///////'///'///3///////2////2///6///////////JJ!!(1+a."6q	!T8JKrc   c                     R p RpRp\        WV4      pRqCV8H  qU'       Eg   \        P                  ! RV3RW434      RR\        P                  ! 4       9   g!   \        P
                  ! \         4      '       d   \        P                  ! \         4      MRR\        P                  ! V 4      R\        P                  ! V4      R\        P                  ! V4      R	\        P                  ! V4      R
\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p ;p;p;p;rTR p RpRp\        WV4      pRqCV8H  qU'       Eg   \        P                  ! RV3RW434      RR\        P                  ! 4       9   g!   \        P
                  ! \         4      '       d   \        P                  ! \         4      MRR\        P                  ! V 4      R\        P                  ! V4      R\        P                  ! V4      R	\        P                  ! V4      R
\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p ;p;p;p;rTRp RpRp\        WV4      pRqCV8H  qU'       Eg   \        P                  ! RV3RW434      RR\        P                  ! 4       9   g!   \        P
                  ! \         4      '       d   \        P                  ! \         4      MRR\        P                  ! V 4      R\        P                  ! V4      R\        P                  ! V4      R	\        P                  ! V4      R
\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p ;p;p;p;rTR p RpRp\        WV4      pR qCV8H  qU'       Eg   \        P                  ! RV3RW434      RR\        P                  ! 4       9   g!   \        P
                  ! \         4      '       d   \        P                  ! \         4      MRR\        P                  ! V 4      R\        P                  ! V4      R\        P                  ! V4      R	\        P                  ! V4      R
\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p ;p;p;p;rTR p RpRp\        WV4      pRqCV8H  qU'       Eg   \        P                  ! RV3RW434      RR\        P                  ! 4       9   g!   \        P
                  ! \         4      '       d   \        P                  ! \         4      MRR\        P                  ! V 4      R\        P                  ! V4      R\        P                  ! V4      R	\        P                  ! V4      R
\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p ;p;p;p;rTR p RpRp\        WV4      pRqCV8H  qU'       Eg   \        P                  ! RV3RW434      RR\        P                  ! 4       9   g!   \        P
                  ! \         4      '       d   \        P                  ! \         4      MRR\        P                  ! V 4      R\        P                  ! V4      R\        P                  ! V4      R	\        P                  ! V4      R
\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p ;p;p;p;rTRp RpRp\        WV4      pRqCV8H  qU'       Eg   \        P                  ! RV3RW434      RR\        P                  ! 4       9   g!   \        P
                  ! \         4      '       d   \        P                  ! \         4      MRR\        P                  ! V 4      R\        P                  ! V4      R\        P                  ! V4      R	\        P                  ! V4      R
\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p ;p;p;p;rTR p RpRp\        WV4      pRqCV8H  qU'       Eg   \        P                  ! RV3RW434      RR\        P                  ! 4       9   g!   \        P
                  ! \         4      '       d   \        P                  ! \         4      MRR\        P                  ! V 4      R\        P                  ! V4      R\        P                  ! V4      R	\        P                  ! V4      R
\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p ;p;p;p;rTR p RpRp\        WV4      pRqCV8H  qU'       Eg   \        P                  ! RV3RW434      RR\        P                  ! 4       9   g!   \        P
                  ! \         4      '       d   \        P                  ! \         4      MRR\        P                  ! V 4      R\        P                  ! V4      R\        P                  ! V4      R	\        P                  ! V4      R
\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p ;p;p;p;rTRp RpRp\        WV4      pRqCV8H  qU'       Eg   \        P                  ! RV3RW434      RR\        P                  ! 4       9   g!   \        P
                  ! \         4      '       d   \        P                  ! \         4      MRR\        P                  ! V 4      R\        P                  ! V4      R\        P                  ! V4      R	\        P                  ! V4      R
\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p ;p;p;p;rT\        P                  ! \        RR7      ;_uu_ 4        \        RRR4       RRR4       \        P                  ! \        RR7      ;_uu_ 4        \        RRR4       RRR4       R#   + '       g   i     LL; i  + '       g   i     R# ; i)bb50r   rj   bb50_groupedr   r   r   r(   r*   r+   rl   r   rm   Nbullbb50_grouped_bull
grouped_v1denserandom_sparsebb50_random_sparsebb50_random_sparse_bullhybrid_groupedbb50_hybrid_groupedbb50_hybrid_grouped_bullhybrid_grouped_v1reservedr[   random_sparse_v1r.   )zC%(py8)s
{%(py8)s = %(py0)s(%(py2)s, %(py4)s, %(py6)s)
} == %(py11)s)r   r3   r4   r5   r6   r7   r8   r9   r:   r_   r`   ra   )r@   rB   rT   rU   rt   rG   r   rv   s           rW   ;test_grouped_training_uses_an_isolated_default_artifact_tagr   l   s>   "(M%MM!&;M~M~MMMMM;MMMMMM!MMMM!MMM&MMM%MMMMMM;MMM~MMMMMMMMM"(S&S)S!&)<S@SS@SSSSSS<SSSSSS!SSSS!SSS&SSS&SSS)SSS<SSS@SSSSSSSSSS".QQyQ!,yAQ\Q\QQQQQAQQQQQQ!QQQQ!QQQ,QQQQQQyQQQAQQQ\QQQQQQQQQ"(C%CC!&9CVCVCCCCC9CCCCCC!CCCC!CCC&CCC%CCCCCC9CCCVCCCCCCCCC"(Y%YY!&AYEYYEYYYYYYAYYYYYY!YYYY!YYY&YYY%YYYYYYAYYYEYYYYYYYYYY"(_&_/_!&/B_F__F______B______!____!___&___&___/___B___F__________".WWW!,GW<W<WWWWWGWWWWWW!WWWW!WWW,WWWWWWWWWGWWW<WWWWWWWWW"([%[1A[!&1AB[F[[F[[[[[[B[[[[[[![[[[![[[&[[[%[[[1A[[[B[[[F[[[[[[[[[["(a&a2Ba!&2BCaGaaGaaaaaaCaaaaaa!aaaa!aaa&aaa&aaa2BaaaCaaaGaaaaaaaaaa"5fuf>Nf!"5>NOfSffSffffffOffffff!ffff!fff"5fffufff>NfffOfffSffffffffff	z	4	4|U4DE 
5	z	4	415:JK 
5	4 
5	4	4	4	4s   3s-ss	s)	)!builtinsr5   _pytest.assertion.rewrite	assertionrewriter3   numpyr'   r_   strategies.mlp_feature_groupsr   r   r   r   r   r   r   r	   strategies.strategy_mlp_scoresr
   tools.train_mlpr   r   tools.run_mlp_trainr   rX   rd   rx   r   r   r   r   r   rb   rc   rW   <module>r      sV        	 	 	 8 < 64T
06E6"L"Lrc   