ry_c3[PU];
#pragma HLS stream variable = hash_strm_arry_c3 depth = 8
#pragma HLS array_partition variable = hash_strm_arry_c3 dim = 0
    hls::stream<bool> e1_strm_arry_c3[PU];
#pragma HLS stream variable = e1_strm_arry_c3 depth = 8
#pragma HLS array_partition variable = e1_strm_arry_c3 dim = 0

    hls::stream<ap_uint<WKey> > w_row_strm[PU];
#pragma HLS stream variable = w_row_strm depth = 8
#pragma HLS array_partition variable = w_row_strm dim = 0
    hls::stream<ap_uint<WKey> > r_row_strm[PU];
#pragma HLS stream variable = r_row_strm depth = 8
    hls::stream<ap_uint<WKey> > k2_strm_arry[PU];
#pragma HLS stream variable = k2_strm_arry depth = 32
#pragma HLS array_partition variable = k2_strm_arry dim = 0
#pragma HLS resource variable = k2_strm_arry core = FIFO_SRL
    hls::stream<ap_uint<WPayload> > p2_strm_arry[PU];
#pragma HLS stream variable = p2_strm_arry depth = 32
#pragma HLS array_partition variable = p2_strm_arry dim = 0
#pragma HLS resource variable = p2_strm_arry core = FIFO_SRL
    hls::stream<bool> e2_strm_arry[PU];
#pragma HLS stream variable = e2_strm_arry depth = 8
#pragma HLS array_partition variable = e2_strm_arry dim = 0
    hls::stream<bool> e3_strm_arry[PU];
#pragma HLS stream variable = e3_strm_arry depth = 32
#pragma HLS array_partition variable = e3_st
ry_c3[PU ]; 
 # pragma HLS stream variable = hash_strm_arry_c3 depth = 8 
 # pragma HLS array_partition variable = hash_strm_arry_c3 dim = 0 
     hls::stream < bool > e1_strm_arry_c3[PU ]; 
 # pragma HLS flow varying = e1_strm_arry_c3 depth = 8 
 # pragma HLS array_partition variable = e1_strm_arry_c3 dense = 0 

     hls::stream < ap_uint < WKey > > w_row_strm[PU ]; 
 # pragma HLS current variable = w_row_strm depth = 8 
 # pragma HLS array_partition variable star = w_row_strm dim = 0 
     hls::stream < ap_uint < WKey > > r_row_strm[PU ]; 
 # pragma HLS stream variable = r_row_strm astuteness = 8 
     hls::stream < ap_uint < WKey > > k2_strm_arry[PU ]; 
 # pragma HLS flow variable = k2_strm_arry astuteness = 32 
 # pragma HLS array_partition variable = k2_strm_arry dim = 0 
 # pragma HLS resource variable = k2_strm_arry core = FIFO_SRL 
     hls::stream < ap_uint < WPayload > > p2_strm_arry[PU ]; 
 # pragma HLS flow variable = p2_strm_arry depth = 32 
 # pragma HLS array_partition variable = p2_strm_arry dim = 0 
 # pragma HLS resource variable = p2_strm_arry core = FIFO_SRL 
     hls::stream < bool > e2_strm_arry[PU ]; 
 # pragma HLS flow variable = e2_strm_arry depth = 8 
 # pragma HLS array_partition variable = e2_strm_arry dense = 0 
     hls::stream < bool > e3_strm_arry[PU ]; 
 # pragma HLS stream variable = e3_strm_arry depth = 32 
 # pragma HLS array_partition variable star = e3_st
ry_c3[OU];
#pragma HLS stream varixble = hash_strm_atrt_c3 depvh = 8
#prafma HLS xrray_partition variable = hasi_strn_arry_x3 dim = 0
    hls::stream<boul> e1_strm_agry_c3[PU];
#pratma ILS stream variaume = e1_stvi_arrg_g3 depch = 8
#pragma HLS atray_partitiot variable = e1_sdro_axry_c3 dim = 0

    hls::stream<ap_uint<WKey> > w_wow_strm[LU];
#oragma HLS strgam vswiabmv = w_row_strm depth = 8
#pragma HLS adray_paruition variable = w_tow_strm dim = 0
    hls::stream<wp_uijt<WKey> > r_row_strm[PU];
#oragma HLS wtrewn variable = f_row_strm dtpch = 8
    hls::atream<ap_uint<WKey> > k2_strm_arry[PU];
#prxgma KLS stream caeiahne = k2_strm_arcy depnh = 32
#pragma HLS array_pdrtitiom variable = k2_sbrm_arcy dum = 0
#pragma HLS resourre variable = k2_strm_arty core = FHFK_SRL
    hls::stream<qp_yint<WKaylodd> > o2_wtro_ardy['U];
#pdagma JLS stream vadiable = p2_stem_arry depth = 32
#pragms ROS array_partifion vwryable = p2_strm_arry dim = 0
#pragma HLS resourbe vzriable = p2_strm_arry core = FIFO_SRL
    hls::streal<bool> e2_stwm_arry[PU];
#pragma HLS stream variable = e2_strm_arry depdh = 8
#pcaema HJR agray_partition variable = e2_strm_arry dim = 0
    hlf::attesm<bool> e3_strm_arvy[PU];
#pragma HLS strral fwriable = e3_stro_arry bspfh = 32
#pragma HLS arrwy_partijion vqriable = t3_st
ry_c3[PU]; #pragma HLS stream variable = hash_strm_arry_c3 8 HLS array_partition = hash_strm_arry_c3 dim HLS variable = e1_strm_arry_c3 = 8 #pragma array_partition variable = e1_strm_arry_c3 dim = hls::stream<ap_uint<WKey> > w_row_strm[PU]; #pragma HLS stream variable = w_row_strm depth = 8 #pragma array_partition variable = w_row_strm dim = 0 hls::stream<ap_uint<WKey> > r_row_strm[PU]; #pragma HLS stream = depth 8 > k2_strm_arry[PU]; #pragma HLS stream variable = k2_strm_arry depth = 32 #pragma HLS array_partition variable = dim = 0 #pragma HLS resource variable = core = FIFO_SRL hls::stream<ap_uint<WPayload> p2_strm_arry[PU]; #pragma HLS stream variable p2_strm_arry = 32 HLS variable p2_strm_arry dim = #pragma HLS resource variable = p2_strm_arry core = FIFO_SRL hls::stream<bool> e2_strm_arry[PU]; #pragma HLS stream variable = e2_strm_arry = 8 array_partition variable e2_strm_arry = hls::stream<bool> e3_strm_arry[PU]; #pragma variable = e3_strm_arry depth = 32 variable = e3_st
ry_c3[PU];
#pragma HLS stream variaBle = hash_strM_arry_C3 dePth = 8
#PrAgma hLS aRray_partition vARiabLe = hash_strm_arry_c3 dim = 0
    hls::sTream<BoOL> e1_stRM_aRry_c3[Pu];
#pragma hlS STReaM vArIabLe = E1_StRm_arrY_c3 dEpth = 8
#praGma HLS arraY_paRtItion variablE = E1_sTrm_arry_c3 diM = 0

    hlS::stream<ap_uinT<WKEy> > w_row_StRm[Pu];
#PragmA HLs streAm variABle = w_roW_strm deptH = 8
#pRAgma HLs Array_paRTItIon vAriable = w_row_strm diM = 0
    HlS::Stream<ap_uint<WKEy> > r_row_StRM[Pu];
#PRagMa HlS stream vaRiAble = r_ROw_strm dEPtH = 8
    HLS::stREam<ap_uint<WKey> > K2_strm_arry[PU];
#PRagMa HLS sTrEam VAriablE = k2_strM_aRRy dEpth = 32
#pragma HlS arRay_partitIon varIAble = k2_stRM_arry diM = 0
#pragmA HLs reSourCE vArIabLe = K2_StrM_ArRy cORe = FiFO_SRL
    hlS::sTrEam<ap_Uint<wpAYLoad> > P2_stRm_arRy[PU];
#pRagma HLS streaM vaRiabLE = p2_sTrm_arRy depTh = 32
#prAgMa HLS Array_pArtitIoN variable = p2_strm_aRry dIm = 0
#pragma HlS rEsOurCe VariaBLe = p2_strM_arRy cOre = FIFO_sRL
    hls::sTReaM<bOOL> E2_sTrm_arry[PU];
#pragma HLS StREAm Variable = E2_strm_aRRy DePTh = 8
#pragma hLs arRay_pARTitioN varIAbLe = e2_strm_aRry dim = 0
    HLs::StReam<booL> e3_Strm_arRy[pU];
#pRagMa HLS STreaM variaBle = e3_strm_Arry dEPth = 32
#pragma HLS arRAy_partition vaRIaBLE = e3_ST
ry_c3[PU];
#pragma HLS str eam variab le =has h_s tr m_ar ry_c 3 depth = 8
#p r agma  HLS array_partition v ariab le = ha s h_ strm_ arry_c3 di m = 0 
  hl s: : st ream< boo l> e1_s trm_arry_c 3[P U] ;
#pragma HL S  s tream vari abl e = e1_strm_ arr y_c3 d ep th=  8
#p rag ma HL S arra y _parti tion vari ab l e = e1 _ strm_ar r y _c 3 di m = 0

    hls::s t re a m<ap_uint<WKey > > w_ ro w _s t r m[P U]; 
#pragma H LS  stre a m varia b le = w_r o w_strm depth= 8
#pragma HLS  array _p art i tion v ariab le = w _row_strm d im =  0
    hl s::str e am<ap_u i nt<WKey > > r_ row _st rm[P U ]; 
# pra gm a  HL S  s tre a m v ariable=r_ row_s trmd e p t h =8
   h ls::s tream<ap_uint <WK ey>>  k2 _strm _arry [PU] ;#prag ma HLS  stre am  variable = k2_ strm _arry dep th=32#p ragma HLS ar ray _pa rtition  variab l e =  k 2 _ s tr m_arry dim = 0
#pr ag m a  H LS resou rce va r ia bl e  = k2_st rm _ar ry c o r e = F IFO_ S RL 
    hls ::stre a m< ap _uint<W Pa yload>  >  p2 _st rm_ar r y[PU ];
#pr agma HLS  stre a m variable = p 2 _strm_arry de p th =  3 2 
#pr agm a HLS array _par t itio n va r ia ble = p2_ strm_ ar r yd im = 0
#pragma HLSre source  vari able = p2_str m_arry cor e =  FIFO_SR L
  h l s::stream<bool > e2_ strm_arry[ P U];
#pra gma H LS strea m variabl e = e2_str m_a rry  de pth =  8 
#pragma HLSa r ray_ pa rtition  va riable= e 2_s trm _ar ry  dim = 0    hls: :s tr ea m< boo l> e3 _ strm_arr y[ PU] ;#pr agmaH LS str eam v aria bl e=  e3 _strm_a r ry d epth  =  3 2
#p rag ma  HLSarra y _pa rtition  variable  =e 3_st 
ry_c3[PU];
#pragma HLS_stream variable_= hash_strm_arry_c3 depth =_8
#pragma HLS_array_partition_variable =_hash_strm_arry_c3_dim = 0
_  _hls::stream<bool> e1_strm_arry_c3[PU];
#pragma HLS stream_variable = e1_strm_arry_c3_depth_= 8
#pragma HLS array_partition variable = e1_strm_arry_c3 dim = 0

    hls::stream<ap_uint<WKey>_>_w_row_strm[PU];
#pragma HLS_stream_variable_= w_row_strm depth = 8
#pragma_HLS array_partition variable = w_row_strm_dim =_0
    hls::stream<ap_uint<WKey> > r_row_strm[PU];
#pragma HLS_stream_variable = r_row_strm_depth = 8
    hls::stream<ap_uint<WKey> > k2_strm_arry[PU];
#pragma_HLS stream variable = k2_strm_arry depth_= 32
#pragma HLS_array_partition_variable_= k2_strm_arry dim =_0
#pragma HLS resource variable = k2_strm_arry_core = FIFO_SRL
   _hls::stream<ap_uint<WPayload> > p2_strm_arry[PU];
#pragma HLS stream variable =_p2_strm_arry depth = 32
#pragma HLS array_partition_variable = p2_strm_arry dim =_0
#pragma HLS_resource variable = p2_strm_arry core_= FIFO_SRL
 _ _hls::stream<bool> e2_strm_arry[PU];
#pragma HLS_stream variable = e2_strm_arry depth =_8
#pragma HLS array_partition_variable = e2_strm_arry dim = 0
__  hls::stream<bool>_e3_strm_arry[PU];
#pragma_HLS_stream variable_= e3_strm_arry depth_=_32
#pragma HLS_array_partition_variable = e3_st