(program
  (host seek (ptr i64) i64 touches_memory)
  (host range_seek (ptr i64) i64)
  (host advance (ptr i64) i64)
  (host lane_fill (ptr i64 i64) i64 touches_memory)
  (host emit_row (ptr ptr ptr i64) i64 touches_memory)
  (host push (ptr) i64 touches_memory)
  (host flush (ptr) i64 touches_memory)
  (host done (ptr) i64 touches_memory)
  (host stopped (ptr) i64 touches_memory)
  (host scratch (ptr i64) ptr touches_memory)
  (host record (ptr ptr i64) ptr touches_memory)
  (host record_consumed (ptr ptr i64) ptr touches_memory)
  (host agg_open (ptr ptr ptr i64 i64) i64 touches_memory)
  (host agg_block (ptr ptr i64 i64) i64 touches_memory)
  (host agg_miss (ptr ptr ptr) i64 touches_memory)
  (host agg_finish (ptr ptr) i64 touches_memory)
  (host agg_absorb (ptr ptr ptr i64 i64) i64 touches_memory)
  (host agg_gather (ptr ptr) ptr touches_memory)
  (host agg_sort (ptr ptr ptr) i64 touches_memory)
  (host topk_open (ptr i64 i64 i64 i64) ptr touches_memory)
  (host topk_insert (ptr ptr ptr i64) i64 touches_memory)
  (host topk_run (ptr) ptr)
  (host topk_order (ptr i64) i64 touches_memory)
  (host sort_open (ptr i64 i64 i64) ptr touches_memory)
  (host sort_full (ptr ptr i64 i64) i64 touches_memory)
  (host sort_last (ptr ptr i64 i64) i64 touches_memory)
  (host sort_begin (ptr ptr) i64 touches_memory)
  (host sort_next (ptr ptr i64 i64) ptr touches_memory)
  (host sort_stop (ptr ptr i64 i64 i64) i64 touches_memory)
  (host spool_open (ptr i64 i64) ptr touches_memory)
  (host spool_begin (ptr ptr) ptr touches_memory)
  (host open_buf (ptr ptr i64) i64 touches_memory)
  (host open_table (ptr ptr) i64 touches_memory)
  (fn agg_fold1 ((v0 ptr)) (i64)
    (slots (64 8))
    (hints (cold b33 b39) (loop b9 b16))
    (block b0 ((v0 ptr))
      (v11 (const i64 0))
      (v12 (const i64 1))
      (v13 (load ptr v0 88))
      (v14 (load ptr v0 96))
      (v15 (stack_addr 0))
      (v16 (load i64 v13 0))
      (v17 (call_host open_buf v0 v15 v16))
      (v18 (load i64 v0 80))
      (v19 (const i64 0))
      (v20 (icmp eq v18 v19))
      (condbr v20 (b8) (b9)))
    (block b1 ((v1 i64) (v2 i64))
      (v196 (load i64 v0 232))
      (v197 (iadd v196 v1))
      ((store v0 232 v197))
      (v198 (itrunc i32 v2))
      ((store v0 256 v198))
      (br b9))
    (block b2 ((v3 i64) (v4 i64) (v5 i64))
      (v199 (load i64 v0 232))
      (v200 (iadd v199 v3))
      ((store v0 232 v200))
      (v201 (itrunc i32 v4))
      ((store v0 256 v201))
      (br b4 v5))
    (block b3 ((v6 i64) (v7 i64))
      (v202 (load i64 v0 232))
      (v203 (iadd v202 v6))
      ((store v0 232 v203))
      (v204 (itrunc i32 v7))
      ((store v0 256 v204))
      (br b5))
    (block b4 ((v8 i64))
      (v205 (icmp slt v8 v11))
      (condbr v205 (b7 v8) (b41)))
    (block b5 ()
      (v212 (call_host done v0))
      (br b7 v212))
    (block b6 ((v9 i64))
      (v207 (const i64 3))
      (v208 (const i64 8))
      (v209 (shl v9 v208))
      (v210 (ior v207 v209))
      (v211 (ineg v210))
      (br b7 v211))
    (block b7 ((v10 i64))
      (return v10))
    (block b8 ()
      (v21 (const i64 1125899906842625))
      ((store v0 80 v21))
      (v22 (const i64 0))
      (v23 (call_host range_seek v0 v22))
      (v24 (icmp slt v23 v11))
      (condbr v24 (b7 v23) (b9)))
    (block b9 ()
      (v26 (const i64 0))
      (v27 (call_host advance v0 v26))
      (v28 (icmp sle v27 v11))
      (condbr v28 (b10 v27) (b11)))
    (block b10 ((v25 i64))
      (v67 (icmp eq v25 v11))
      (condbr v67 (b5) (b7 v25)))
    (block b11 ()
      (v29 (load i32 v0 256))
      (v30 (zext i64 v29))
      (v31 (load i32 v0 252))
      (v32 (zext i64 v31))
      (v33 (load ptr v0 208))
      (v34 (ptrtoint v33))
      (v35 (icmp eq v34 v11))
      (v36 (load i32 v0 260))
      (v37 (zext i64 v36))
      (v38 (select v35 v32 v37))
      (v39 (loadz i8 v0 294))
      (v40 (load ptr v0 160))
      (v41 (load ptr v0 312))
      (v42 (loadz i16 v0 300))
      (v43 (const i64 2))
      (v44 (iand v42 v43))
      (v45 (icmp ne v44 v11))
      (v46 (const i64 3))
      (v47 (iand v42 v46))
      (v48 (icmp eq v47 v46))
      (v49 (load ptr v40 32))
      (condbr v45 (b13) (b12)))
    (block b12 ()
      (v50 (const i64 0))
      (v51 (const i64 0))
      (v52 (call_host lane_fill v0 v51 v50))
      (br b13))
    (block b13 ()
      (v53 (load ptr v40 0))
      (v54 (load ptr v40 8))
      (v55 (ptrtoint v54))
      (v56 (icmp eq v55 v11))
      (v57 (zext i64 v35))
      (v58 (zext i64 v56))
      (v59 (iand v57 v58))
      (v60 (zext i64 v48))
      (v61 (icmp ne v60 v11))
      (v62 (const i64 1))
      (v63 (icmp ne v39 v11))
      (v64 (zext i64 v63))
      (v65 (ior v62 v64))
      (v66 (icmp ne v65 v11))
      (br b15))
    (block b14 ((v68 i64) (v69 i64) (v70 i64))
      (v71 (const i64 3))
      (v72 (const i64 8))
      (v73 (shl v68 v72))
      (v74 (ior v71 v73))
      (v75 (ineg v74))
      (br b2 v69 v70 v75))
    (block b15 ()
      (br b16 v30 v11))
    (block b16 ((v76 i64) (v77 i64))
      (v78 (icmp uge v76 v38))
      (condbr v78 (b1 v77 v38) (b17)))
    (block b17 ()
      (condbr v61 (b19) (b18)))
    (block b18 ()
      (v79 (iadd v76 v12))
      (condbr v45 (b21) (b22)))
    (block b19 ()
      (v157 (iadd v76 v12))
      (v158 (ptr_add v49 v76 2 0))
      (v159 (loadz i16 v158 0))
      (v160 (ptr_add v41 v159 4 20))
      (v161 (loadz i32 v160 0))
      (v162 (const i64 32767))
      (v163 (iand v161 v162))
      (v164 (ptr_add v41 v163 1 0))
      (v165 (loadz i8 v164 22))
      (v166 (const bool true))
      (v167 (ptr_add v164 v165 1 0))
      (v168 (load i32 v167 0))
      (v169 (sext i64 v168))
      (v170 (const bool false))
      (v171 (const bool true))
      (v172 (const bool false))
      (v173 (const i64 0))
      (v174 (const bool false))
      (v175 (const bool true))
      (v176 (itrunc i32 v169))
      (v177 (sext i64 v176))
      (v178 (load ptr v15 0))
      (v179 (load i64 v15 8))
      (v180 (load ptr v15 40))
      (v181 (loadz i32 v180 4))
      (br b36))
    (block b20 ((v80 i64) (v81 bool))
      (v131 (const bool false))
      (v132 (const bool true))
      (v133 (const bool false))
      (v134 (const i64 0))
      (v135 (const bool false))
      (v136 (const bool true))
      (v137 (itrunc i32 v80))
      (v138 (sext i64 v137))
      (v139 (load ptr v15 0))
      (v140 (load i64 v15 8))
      (v141 (load ptr v15 40))
      (v142 (loadz i32 v141 4))
      (condbr v81 (b30) (b32)))
    (block b21 ()
      (v82 (ptr_add v49 v76 2 0))
      (v83 (loadz i16 v82 0))
      (v84 (ptr_add v41 v83 4 20))
      (v85 (loadz i32 v84 0))
      (v86 (const i64 32767))
      (v87 (iand v85 v86))
      (v88 (ptr_add v41 v87 1 0))
      (v89 (loadz i8 v88 22))
      (v90 (loadz i16 v88 20))
      (v91 (const i64 1))
      (v92 (iand v90 v91))
      (v93 (icmp ne v92 v11))
      (condbr v93 (b24) (b23)))
    (block b22 ()
      (condbr v35 (b26 v76) (b25)))
    (block b23 ()
      (v94 (const bool true))
      (v95 (ptr_add v88 v89 1 0))
      (v96 (load i32 v95 0))
      (v97 (sext i64 v96))
      (br b20 v97 v94))
    (block b24 ()
      (v98 (loadz i8 v88 23))
      (v99 (const i64 0))
      (v100 (ushr v98 v99))
      (v101 (iand v100 v12))
      (v102 (icmp ne v101 v11))
      (v103 (const i64 3))
      (v104 (const i64 -4))
      (v105 (iand v103 v104))
      (v106 (iadd v105 v89))
      (v107 (select v102 v106 v11))
      (v108 (ptr_add v88 v107 1 0))
      (v109 (load i32 v108 0))
      (v110 (sext i64 v109))
      (v111 (const i64 4))
      (v112 (iadd v105 v111))
      (v113 (select v102 v112 v11))
      (br b20 v110 v102))
    (block b25 ()
      (v115 (ptr_add v33 v76 4 0))
      (v116 (load i32 v115 0))
      (v117 (zext i64 v116))
      (br b26 v117))
    (block b26 ((v114 i64))
      (v118 (ptr_add v53 v114 8 0))
      (v119 (load i64 v118 0))
      (v120 (const i64 6))
      (v121 (ushr v114 v120))
      (v122 (ptr_add v54 v121 8 0))
      (v124 (const bool true))
      (condbr v56 (b28 v124) (b27)))
    (block b27 ()
      (v125 (load i64 v122 0))
      (v126 (const i64 63))
      (v127 (iand v114 v126))
      (v128 (ushr v125 v127))
      (v129 (iand v128 v12))
      (v130 (icmp ne v129 v11))
      (br b28 v130))
    (block b28 ((v123 bool))
      (br b20 v119 v123))
    (block b29 ()
      (br b16 v79 v77))
    (block b30 ()
      (v146 (itrunc i32 v138))
      (v147 (sext i64 v146))
      (br b31 v147 v11))
    (block b31 ((v143 i64) (v144 i64))
      (v148 (itrunc i32 v143))
      (v149 (icmp uge v142 v140))
      (v151 (ior v12 v144))
      (condbr v149 (b33) (b34 v11)))
    (block b32 ()
      (v145 (const i64 4))
      (br b31 v142 v145))
    (block b33 ()
      (v152 (const i64 -518))
      (br b7 v152))
    (block b34 ((v150 i64))
      (v153 (ptr_add v139 v142 16 0))
      (v154 (itrunc i32 v151))
      ((store v153 0 v154))
      ((store v153 4 v148))
      ((store v153 8 v150))
      (v155 (iadd v142 v12))
      (v156 (itrunc i32 v155))
      ((store v141 4 v156))
      (br b29))
    (block b35 ()
      (br b16 v157 v77))
    (block b36 ()
      (v185 (itrunc i32 v177))
      (v186 (sext i64 v185))
      (br b37 v186 v11))
    (block b37 ((v182 i64) (v183 i64))
      (v187 (itrunc i32 v182))
      (v188 (icmp uge v181 v179))
      (v190 (ior v12 v183))
      (condbr v188 (b39) (b40 v11)))
    (block b38 ()
      (v184 (const i64 4))
      (br b37 v181 v184))
    (block b39 ()
      (v191 (const i64 -518))
      (br b7 v191))
    (block b40 ((v189 i64))
      (v192 (ptr_add v178 v181 16 0))
      (v193 (itrunc i32 v190))
      ((store v192 0 v193))
      ((store v192 4 v187))
      ((store v192 8 v189))
      (v194 (iadd v181 v12))
      (v195 (itrunc i32 v194))
      ((store v180 4 v195))
      (br b35))
    (block b41 ()
      (v206 (call_host stopped v0))
      (br b7 v206))
  )
  (fn agg_fold2 ((v0 ptr)) (i64)
    (slots (128 8) (32 8) (40 8) (64 8) (8 8) (8 8) (8 8))
    (hints (cold b42 b68) (loop b14 b22 b40 b66))
    (block b0 ((v0 ptr))
      (v11 (const i64 0))
      (v12 (const i64 1))
      (v13 (load ptr v0 88))
      (v14 (load ptr v0 96))
      (v15 (stack_addr 0))
      (v16 (stack_addr 2))
      (v17 (const i64 16777730))
      ((store v16 0 v17))
      (v18 (const i64 0))
      ((store v16 8 v18))
      (v19 (const i64 403701760))
      ((store v16 16 v19))
      (v20 (const i64 103114866688))
      ((store v16 24 v20))
      (v21 (const i64 0))
      ((store v16 32 v21))
      (v22 (const i64 23))
      (v23 (call_host agg_open v0 v15 v16 v11 v22))
      (v24 (icmp slt v23 v11))
      (condbr v24 (b8) (b9)))
    (block b1 ((v1 i64) (v2 i64))
      (v697 (load i64 v0 424))
      (v698 (iadd v697 v1))
      ((store v0 424 v698))
      (v699 (itrunc i32 v2))
      ((store v0 448 v699))
      (br b14))
    (block b2 ((v3 i64) (v4 i64) (v5 i64))
      (v700 (load i64 v0 424))
      (v701 (iadd v700 v3))
      ((store v0 424 v701))
      (v702 (itrunc i32 v4))
      ((store v0 448 v702))
      (br b4 v5))
    (block b3 ((v6 i64) (v7 i64))
      (v703 (load i64 v0 424))
      (v704 (iadd v703 v6))
      ((store v0 424 v704))
      (v705 (itrunc i32 v7))
      ((store v0 448 v705))
      (br b5))
    (block b4 ((v8 i64))
      (v706 (icmp slt v8 v11))
      (condbr v706 (b7 v8) (b101)))
    (block b5 ()
      (v713 (call_host done v0))
      (br b7 v713))
    (block b6 ((v9 i64))
      (v708 (const i64 3))
      (v709 (const i64 8))
      (v710 (shl v9 v709))
      (v711 (ior v708 v710))
      (v712 (ineg v711))
      (br b7 v712))
    (block b7 ((v10 i64))
      (return v10))
    (block b8 ()
      (return v23))
    (block b9 ()
      (v25 (icmp ne v23 v11))
      (condbr v25 (b10) (b11)))
    (block b10 ()
      (return v11))
    (block b11 ()
      ((store v15 96 v11))
      (v26 (load ptr v15 0))
      (v27 (loadz i8 v26 13))
      (v28 (const i64 1))
      (v29 (iand v27 v28))
      ((store v15 104 v29))
      (v30 (const i64 -7046029254386353131))
      ((store v15 112 v30))
      (v31 (stack_addr 3))
      (v32 (call_host open_table v0 v31))
      (v33 (icmp slt v32 v11))
      (condbr v33 (b7 v32) (b12)))
    (block b12 ()
      (v34 (load ptr v31 0))
      (v35 (load i64 v31 16))
      (v36 (load i64 v31 24))
      (v37 (load i64 v31 32))
      (v38 (stack_addr 4))
      (v39 (stack_addr 5))
      (v40 (stack_addr 6))
      (v41 (load i64 v0 80))
      (v42 (const i64 0))
      (v43 (icmp ne v41 v42))
      (v44 (load i64 v0 432))
      (v45 (select v43 v44 v11))
      ((store v40 0 v45))
      (v46 (load i64 v0 80))
      (v47 (const i64 0))
      (v48 (icmp eq v46 v47))
      (condbr v48 (b13) (b14)))
    (block b13 ()
      (v49 (const i64 1125899906842625))
      ((store v0 80 v49))
      (v50 (const i64 1))
      (v51 (call_host range_seek v0 v50))
      (v52 (icmp slt v51 v11))
      (condbr v52 (b7 v51) (b14)))
    (block b14 ()
      (v54 (const i64 1))
      (v55 (call_host advance v0 v54))
      (v56 (icmp sle v55 v11))
      (condbr v56 (b15 v55) (b16)))
    (block b15 ((v53 i64))
      (v104 (icmp eq v53 v11))
      (condbr v104 (b5) (b7 v53)))
    (block b16 ()
      (v57 (load i32 v0 448))
      (v58 (zext i64 v57))
      (v59 (load i32 v0 444))
      (v60 (zext i64 v59))
      (v61 (load ptr v0 400))
      (v62 (ptrtoint v61))
      (v63 (icmp eq v62 v11))
      (v64 (load i32 v0 452))
      (v65 (zext i64 v64))
      (v66 (select v63 v60 v65))
      (v67 (loadz i8 v0 486))
      (v68 (load ptr v0 352))
      (v69 (load ptr v0 504))
      (v70 (loadz i16 v0 492))
      (v71 (const i64 2))
      (v72 (iand v70 v71))
      (v73 (icmp ne v72 v11))
      (v74 (const i64 3))
      (v75 (iand v70 v74))
      (v76 (icmp eq v75 v74))
      (v77 (load ptr v68 64))
      (condbr v73 (b18) (b17)))
    (block b17 ()
      (v78 (const i64 0))
      (v79 (const i64 1))
      (v80 (call_host lane_fill v0 v79 v78))
      (v81 (const i64 1))
      (v82 (const i64 1))
      (v83 (call_host lane_fill v0 v82 v81))
      (br b18))
    (block b18 ()
      (v84 (load ptr v68 0))
      (v85 (load ptr v68 8))
      (v86 (ptrtoint v85))
      (v87 (icmp eq v86 v11))
      (v88 (load ptr v68 32))
      (v89 (load ptr v68 40))
      (v90 (ptrtoint v89))
      (v91 (icmp eq v90 v11))
      (v92 (zext i64 v63))
      (v93 (zext i64 v87))
      (v94 (iand v92 v93))
      (v95 (zext i64 v91))
      (v96 (iand v94 v95))
      (v97 (zext i64 v76))
      (v98 (icmp ne v97 v11))
      (v99 (const i64 1))
      (v100 (icmp ne v67 v11))
      (v101 (zext i64 v100))
      (v102 (ior v99 v101))
      (v103 (icmp ne v102 v11))
      (v113 (const i64 0))
      (br b21))
    (block b19 ((v105 i64) (v106 i64) (v107 i64))
      (v108 (const i64 3))
      (v109 (const i64 8))
      (v110 (shl v105 v109))
      (v111 (ior v108 v110))
      (v112 (ineg v111))
      (br b2 v106 v107 v112))
    (block b20 ((v114 i64) (v115 i64) (v116 i64) (v117 i64) (v118 i64))
      (v616 (icmp ne v115 v11))
      (condbr v616 (b89) (b90)))
    (block b21 ()
      (br b22 v58 v11 v11 v11 v11 v113))
    (block b22 ((v119 i64) (v120 i64) (v121 i64) (v122 i64) (v123 i64) (v124 i64))
      (v125 (icmp uge v119 v66))
      (condbr v125 (b20 v120 v121 v122 v123 v124) (b23)))
    (block b23 ()
      (condbr v98 (b25) (b24)))
    (block b24 ()
      (v126 (iadd v119 v12))
      (condbr v73 (b27) (b28)))
    (block b25 ()
      (v406 (iadd v119 v12))
      (v407 (ptr_add v77 v119 2 0))
      (v408 (loadz i16 v407 0))
      (v409 (ptr_add v69 v408 4 20))
      (v410 (loadz i32 v409 0))
      (v411 (const i64 32767))
      (v412 (iand v410 v411))
      (v413 (ptr_add v69 v412 1 0))
      (v414 (loadz i8 v413 22))
      (v415 (const bool true))
      (v416 (ptr_add v413 v414 1 0))
      (v417 (load i32 v416 0))
      (v418 (sext i64 v417))
      (v419 (load i32 v416 4))
      (v420 (sext i64 v419))
      (v421 (const bool false))
      (v422 (const bool true))
      (v423 (const bool false))
      (v424 (const i64 0))
      (v425 (const bool true))
      (v426 (const bool false))
      (v427 (const i64 0))
      (v428 (const bool false))
      (v434 (isub v406 v12))
      (v435 (const bool true))
      (v436 (itrunc i32 v420))
      (v437 (sext i64 v436))
      (br b64))
    (block b26 ((v127 i64) (v128 bool) (v129 i64) (v130 bool))
      (v211 (const bool false))
      (v212 (const bool true))
      (v213 (const bool false))
      (v214 (const i64 0))
      (v215 (const bool true))
      (v216 (const bool false))
      (v217 (const i64 0))
      (v218 (const bool false))
      (v224 (isub v126 v12))
      (v225 (const bool true))
      (v226 (itrunc i32 v129))
      (v227 (sext i64 v226))
      (condbr v130 (b38) (b39)))
    (block b27 ()
      (v131 (ptr_add v77 v119 2 0))
      (v132 (loadz i16 v131 0))
      (v133 (ptr_add v69 v132 4 20))
      (v134 (loadz i32 v133 0))
      (v135 (const i64 32767))
      (v136 (iand v134 v135))
      (v137 (ptr_add v69 v136 1 0))
      (v138 (loadz i8 v137 22))
      (v139 (loadz i16 v137 20))
      (v140 (const i64 1))
      (v141 (iand v139 v140))
      (v142 (icmp ne v141 v11))
      (condbr v142 (b30) (b29)))
    (block b28 ()
      (condbr v63 (b32 v119) (b31)))
    (block b29 ()
      (v143 (const bool true))
      (v144 (ptr_add v137 v138 1 0))
      (v145 (load i32 v144 0))
      (v146 (sext i64 v145))
      (v147 (load i32 v144 4))
      (v148 (sext i64 v147))
      (br b26 v146 v143 v148 v143))
    (block b30 ()
      (v149 (loadz i8 v137 23))
      (v150 (const i64 0))
      (v151 (ushr v149 v150))
      (v152 (iand v151 v12))
      (v153 (icmp ne v152 v11))
      (v154 (const i64 3))
      (v155 (const i64 -4))
      (v156 (iand v154 v155))
      (v157 (iadd v156 v138))
      (v158 (select v153 v157 v11))
      (v159 (ptr_add v137 v158 1 0))
      (v160 (load i32 v159 0))
      (v161 (sext i64 v160))
      (v162 (const i64 4))
      (v163 (iadd v156 v162))
      (v164 (select v153 v163 v11))
      (v165 (const i64 1))
      (v166 (ushr v149 v165))
      (v167 (iand v166 v12))
      (v168 (icmp ne v167 v11))
      (v169 (const i64 3))
      (v170 (const i64 -4))
      (v171 (iadd v164 v169))
      (v172 (iand v171 v170))
      (v173 (iadd v172 v138))
      (v174 (select v168 v173 v11))
      (v175 (ptr_add v137 v174 1 0))
      (v176 (load i32 v175 0))
      (v177 (sext i64 v176))
      (v178 (const i64 4))
      (v179 (iadd v172 v178))
      (v180 (select v168 v179 v164))
      (br b26 v161 v153 v177 v168))
    (block b31 ()
      (v182 (ptr_add v61 v119 4 0))
      (v183 (load i32 v182 0))
      (v184 (zext i64 v183))
      (br b32 v184))
    (block b32 ((v181 i64))
      (v185 (ptr_add v84 v181 8 0))
      (v186 (load i64 v185 0))
      (v187 (const i64 6))
      (v188 (ushr v181 v187))
      (v189 (ptr_add v85 v188 8 0))
      (v191 (const bool true))
      (condbr v87 (b34 v191) (b33)))
    (block b33 ()
      (v192 (load i64 v189 0))
      (v193 (const i64 63))
      (v194 (iand v181 v193))
      (v195 (ushr v192 v194))
      (v196 (iand v195 v12))
      (v197 (icmp ne v196 v11))
      (br b34 v197))
    (block b34 ((v190 bool))
      (v198 (ptr_add v88 v181 8 0))
      (v199 (load i64 v198 0))
      (v200 (const i64 6))
      (v201 (ushr v181 v200))
      (v202 (ptr_add v89 v201 8 0))
      (v204 (const bool true))
      (condbr v91 (b36 v204) (b35)))
    (block b35 ()
      (v205 (load i64 v202 0))
      (v206 (const i64 63))
      (v207 (iand v181 v206))
      (v208 (ushr v205 v207))
      (v209 (iand v208 v12))
      (v210 (icmp ne v209 v11))
      (br b36 v210))
    (block b36 ((v203 bool))
      (br b26 v186 v190 v199 v203))
    (block b37 ((v219 i64) (v220 i64) (v221 i64) (v222 i64) (v223 i64))
      (br b22 v126 v219 v220 v221 v222 v223))
    (block b38 ()
      (v228 (itrunc i32 v227))
      (v229 (sext i64 v228))
      (v230 (const i64 4294967295))
      (v231 (iand v229 v230))
      (v232 (const i64 2654435769))
      (v233 (imul v231 v232))
      (v234 (iand v233 v230))
      (v235 (bitrev v234))
      (v236 (const i64 32))
      (v237 (ushr v235 v236))
      (v238 (iand v237 v37))
      (v239 (imul v238 v35))
      (v240 (iand v234 v36))
      (v241 (iadd v36 v12))
      (v256 (load i64 v40 0))
      (v257 (const i64 0))
      (v258 (const i64 4294967295))
      (v259 (ushr v256 v257))
      (v260 (iand v259 v258))
      (v261 (icmp ne v260 v11))
      (condbr v261 (b42) (b43)))
    (block b39 ()
      (br b37 v120 v121 v122 v123 v124))
    (block b40 ((v242 i64) (v243 i64) (v244 i64) (v245 i64) (v246 i64) (v247 i64) (v248 i64) (v249 i64))
      (v269 (icmp eq v243 v11))
      (condbr v269 (b41 v244 v245 v246 v247 v248 v249) (b44)))
    (block b41 ((v250 i64) (v251 i64) (v252 i64) (v253 i64) (v254 i64) (v255 i64))
      (br b37 v251 v252 v253 v254 v255))
    (block b42 ()
      (v262 (const i64 -4294967296))
      (v263 (iand v256 v262))
      ((store v40 0 v263))
      (v264 (const bool true))
      (v265 (const i64 1))
      (v266 (isub v260 v12))
      (v267 (iadd v266 v265))
      (v268 (iand v267 v36))
      (br b40 v268 v241 v265 v120 v121 v122 v123 v124))
    (block b43 ()
      (br b40 v240 v241 v11 v120 v121 v122 v123 v124))
    (block b44 ()
      (v270 (iadd v239 v242))
      (v271 (ptr_add v34 v270 16 0))
      (v272 (loadz i32 v271 0))
      (v273 (icmp eq v272 v11))
      (v274 (iadd v242 v12))
      (v275 (iand v274 v36))
      (v276 (isub v243 v12))
      (condbr v273 (b41 v244 v245 v246 v247 v248 v249) (b45)))
    (block b45 ()
      (v277 (load i32 v271 4))
      (v278 (sext i64 v277))
      (v279 (icmp eq v278 v229))
      (v280 (const i64 4))
      (v281 (iand v272 v280))
      (v282 (icmp eq v281 v11))
      (v283 (iand v279 v282))
      (condbr v283 (b46) (b47)))
    (block b46 ()
      (v284 (const i8 0))
      (v285 (const i64 2))
      (v286 (const i64 4))
      (v287 (iand v272 v286))
      (v288 (icmp ne v287 v11))
      (v289 (zext i64 v288))
      (v290 (itrunc i8 v289))
      ((store v38 0 v278))
      ((store v39 0 v290))
      (v291 (const i64 1073741824))
      (v292 (ior v272 v291))
      (v293 (itrunc i32 v292))
      ((store v271 0 v293))
      (v294 (iadd v242 v12))
      (v295 (load i64 v0 432))
      (v296 (const i64 0))
      (v297 (const i64 -4294967296))
      (v298 (iand v295 v297))
      (v299 (shl v294 v296))
      (v300 (ior v298 v299))
      ((store v0 432 v300))
      (v301 (const bool true))
      (v302 (const bool false))
      (v303 (const i64 0))
      (v304 (load i64 v38 0))
      (v305 (loadz i8 v39 0))
      (v306 (icmp eq v305 v303))
      (v307 (const bool true))
      (v308 (const bool false))
      (v309 (const i64 0))
      (v310 (const bool false))
      (v311 (const i64 1))
      (v312 (select v306 v11 v311))
      (v313 (select v306 v304 v11))
      (v314 (iadd v245 v12))
      (v315 (const bool true))
      (v316 (icmp eq v247 v313))
      (v317 (icmp eq v248 v312))
      (v318 (iand v316 v317))
      (condbr v318 (b48) (b49)))
    (block b47 ()
      (br b40 v275 v276 v244 v245 v246 v247 v248 v249))
    (block b48 ()
      (v324 (iadd v246 v12))
      (v325 (zext i64 v128))
      (v326 (iadd v249 v325))
      (br b52 v314 v324 v247 v248 v326))
    (block b49 ()
      (v327 (icmp ne v246 v11))
      (condbr v327 (b50) (b51)))
    (block b50 ()
      (v331 (load i64 v15 112))
      (v332 (const i64 2))
      (v333 (ixor v331 v332))
      (v334 (const i64 29))
      (v335 (ixor v333 v247))
      (v336 (imul v335 v331))
      (v337 (ushr v336 v334))
      (v338 (ixor v336 v337))
      (v339 (ixor v338 v248))
      (v340 (imul v339 v331))
      (v341 (ushr v340 v334))
      (v342 (ixor v340 v341))
      (v343 (const i64 32))
      (v344 (ushr v342 v343))
      (v345 (ixor v342 v344))
      (v346 (const i64 4294967295))
      (v347 (iand v345 v346))
      (v348 (load i64 v15 104))
      (v349 (icmp ne v348 v11))
      (condbr v349 (b53) (b56)))
    (block b51 ()
      (v404 (const i64 0))
      (v405 (zext i64 v128))
      (br b52 v314 v12 v313 v312 v405))
    (block b52 ((v319 i64) (v320 i64) (v321 i64) (v322 i64) (v323 i64))
      (br b40 v275 v276 v12 v319 v320 v321 v322 v323))
    (block b53 ()
      (v350 (load i64 v15 48))
      (v351 (const i64 32))
      (v352 (bitrev v347))
      (v353 (ushr v352 v351))
      (v354 (iand v353 v350))
      (v355 (load ptr v15 8))
      (v356 (ptr_add v355 v354 8 0))
      (v357 (load i64 v356 0))
      (v358 (const i64 9007199254740992))
      (v359 (icmp ult v357 v358))
      (condbr v359 (b54) (b55 v357)))
    (block b54 ()
      (v360 (load i64 v15 96))
      (v361 (call_host agg_block v0 v15 v354 v360))
      ((store v15 96 v11))
      (v362 (icmp sle v361 v11))
      (condbr v362 (b62 v361) (b55 v361)))
    (block b55 ((v328 i64))
      (v363 (const i64 32))
      (v364 (iadd v328 v363))
      (v365 (isub v364 v358))
      ((store v356 0 v365))
      (v366 (const i64 281474976710655))
      (v367 (iand v328 v366))
      (v368 (inttoptr v367))
      (v369 (iadd v246 v12))
      ((store v368 0 v247))
      ((store v368 8 v248))
      ((store v368 16 v249))
      ((store v368 24 v369))
      (v370 (load i64 v15 96))
      (v371 (iadd v370 v12))
      ((store v15 96 v371))
      (br b51))
    (block b56 ()
      (v372 (load ptr v15 16))
      (v373 (load i64 v15 24))
      (v374 (iand v347 v373))
      (v375 (ptr_add v372 v374 32 0))
      (v376 (load i64 v375 24))
      (v377 (icmp eq v376 v11))
      (condbr v377 (b61) (b57)))
    (block b57 ()
      (v378 (const bool true))
      (v379 (load i64 v375 0))
      (v380 (icmp eq v379 v247))
      (v381 (load i64 v375 8))
      (v382 (icmp eq v381 v248))
      (v383 (iand v380 v382))
      (condbr v383 (b60 v375) (b58)))
    (block b58 ()
      (v384 (iadd v374 v12))
      (v385 (iand v384 v373))
      (v386 (ptr_add v372 v385 32 0))
      (v387 (load i64 v386 24))
      (v388 (icmp eq v387 v11))
      (condbr v388 (b61) (b59)))
    (block b59 ()
      (v389 (const bool true))
      (v390 (load i64 v386 0))
      (v391 (icmp eq v390 v247))
      (v392 (load i64 v386 8))
      (v393 (icmp eq v392 v248))
      (v394 (iand v391 v393))
      (condbr v394 (b60 v386) (b61)))
    (block b60 ((v329 ptr))
      (v395 (const i64 1))
      (v396 (load i64 v329 16))
      (v397 (iadd v396 v249))
      ((store v329 16 v397))
      (v398 (load i64 v329 24))
      (v399 (iadd v398 v246))
      ((store v329 24 v399))
      (v400 (const i64 3))
      (br b51))
    (block b61 ()
      (v401 (stack_addr 1))
      ((store v401 0 v247))
      ((store v401 8 v248))
      ((store v401 16 v249))
      ((store v401 24 v246))
      (v402 (call_host agg_miss v0 v15 v401))
      (v403 (icmp slt v402 v11))
      (condbr v403 (b62 v402) (b51)))
    (block b62 ((v330 i64))
      (return v330))
    (block b63 ((v429 i64) (v430 i64) (v431 i64) (v432 i64) (v433 i64))
      (br b22 v406 v429 v430 v431 v432 v433))
    (block b64 ()
      (v438 (itrunc i32 v437))
      (v439 (sext i64 v438))
      (v440 (const i64 4294967295))
      (v441 (iand v439 v440))
      (v442 (const i64 2654435769))
      (v443 (imul v441 v442))
      (v444 (iand v443 v440))
      (v445 (bitrev v444))
      (v446 (const i64 32))
      (v447 (ushr v445 v446))
      (v448 (iand v447 v37))
      (v449 (imul v448 v35))
      (v450 (iand v444 v36))
      (v451 (iadd v36 v12))
      (v466 (load i64 v40 0))
      (v467 (const i64 0))
      (v468 (const i64 4294967295))
      (v469 (ushr v466 v467))
      (v470 (iand v469 v468))
      (v471 (icmp ne v470 v11))
      (condbr v471 (b68) (b69)))
    (block b65 ()
      (br b63 v120 v121 v122 v123 v124))
    (block b66 ((v452 i64) (v453 i64) (v454 i64) (v455 i64) (v456 i64) (v457 i64) (v458 i64) (v459 i64))
      (v479 (icmp eq v453 v11))
      (condbr v479 (b67 v454 v455 v456 v457 v458 v459) (b70)))
    (block b67 ((v460 i64) (v461 i64) (v462 i64) (v463 i64) (v464 i64) (v465 i64))
      (br b63 v461 v462 v463 v464 v465))
    (block b68 ()
      (v472 (const i64 -4294967296))
      (v473 (iand v466 v472))
      ((store v40 0 v473))
      (v474 (const bool true))
      (v475 (const i64 1))
      (v476 (isub v470 v12))
      (v477 (iadd v476 v475))
      (v478 (iand v477 v36))
      (br b66 v478 v451 v475 v120 v121 v122 v123 v124))
    (block b69 ()
      (br b66 v450 v451 v11 v120 v121 v122 v123 v124))
    (block b70 ()
      (v480 (iadd v449 v452))
      (v481 (ptr_add v34 v480 16 0))
      (v482 (loadz i32 v481 0))
      (v483 (icmp eq v482 v11))
      (v484 (iadd v452 v12))
      (v485 (iand v484 v36))
      (v486 (isub v453 v12))
      (condbr v483 (b67 v454 v455 v456 v457 v458 v459) (b71)))
    (block b71 ()
      (v487 (load i32 v481 4))
      (v488 (sext i64 v487))
      (v489 (icmp eq v488 v439))
      (v490 (const i64 4))
      (v491 (iand v482 v490))
      (v492 (icmp eq v491 v11))
      (v493 (iand v489 v492))
      (condbr v493 (b72) (b73)))
    (block b72 ()
      (v494 (const i8 0))
      (v495 (const i64 2))
      (v496 (const i64 4))
      (v497 (iand v482 v496))
      (v498 (icmp ne v497 v11))
      (v499 (zext i64 v498))
      (v500 (itrunc i8 v499))
      ((store v38 0 v488))
      ((store v39 0 v500))
      (v501 (const i64 1073741824))
      (v502 (ior v482 v501))
      (v503 (itrunc i32 v502))
      ((store v481 0 v503))
      (v504 (iadd v452 v12))
      (v505 (load i64 v0 432))
      (v506 (const i64 0))
      (v507 (const i64 -4294967296))
      (v508 (iand v505 v507))
      (v509 (shl v504 v506))
      (v510 (ior v508 v509))
      ((store v0 432 v510))
      (v511 (const bool true))
      (v512 (const bool false))
      (v513 (const i64 0))
      (v514 (load i64 v38 0))
      (v515 (loadz i8 v39 0))
      (v516 (icmp eq v515 v513))
      (v517 (const bool true))
      (v518 (const bool false))
      (v519 (const i64 0))
      (v520 (const bool false))
      (v521 (const i64 1))
      (v522 (select v516 v11 v521))
      (v523 (select v516 v514 v11))
      (v524 (iadd v455 v12))
      (v525 (const bool true))
      (v526 (icmp eq v457 v523))
      (v527 (icmp eq v458 v522))
      (v528 (iand v526 v527))
      (condbr v528 (b74) (b75)))
    (block b73 ()
      (br b66 v485 v486 v454 v455 v456 v457 v458 v459))
    (block b74 ()
      (v534 (iadd v456 v12))
      (v535 (const i64 1))
      (v536 (iadd v459 v535))
      (br b78 v524 v534 v457 v458 v536))
    (block b75 ()
      (v537 (icmp ne v456 v11))
      (condbr v537 (b76) (b77)))
    (block b76 ()
      (v541 (load i64 v15 112))
      (v542 (const i64 2))
      (v543 (ixor v541 v542))
      (v544 (const i64 29))
      (v545 (ixor v543 v457))
      (v546 (imul v545 v541))
      (v547 (ushr v546 v544))
      (v548 (ixor v546 v547))
      (v549 (ixor v548 v458))
      (v550 (imul v549 v541))
      (v551 (ushr v550 v544))
      (v552 (ixor v550 v551))
      (v553 (const i64 32))
      (v554 (ushr v552 v553))
      (v555 (ixor v552 v554))
      (v556 (const i64 4294967295))
      (v557 (iand v555 v556))
      (v558 (load i64 v15 104))
      (v559 (icmp ne v558 v11))
      (condbr v559 (b79) (b82)))
    (block b77 ()
      (v614 (const i64 0))
      (v615 (const i64 1))
      (br b78 v524 v12 v523 v522 v615))
    (block b78 ((v529 i64) (v530 i64) (v531 i64) (v532 i64) (v533 i64))
      (br b66 v485 v486 v12 v529 v530 v531 v532 v533))
    (block b79 ()
      (v560 (load i64 v15 48))
      (v561 (const i64 32))
      (v562 (bitrev v557))
      (v563 (ushr v562 v561))
      (v564 (iand v563 v560))
      (v565 (load ptr v15 8))
      (v566 (ptr_add v565 v564 8 0))
      (v567 (load i64 v566 0))
      (v568 (const i64 9007199254740992))
      (v569 (icmp ult v567 v568))
      (condbr v569 (b80) (b81 v567)))
    (block b80 ()
      (v570 (load i64 v15 96))
      (v571 (call_host agg_block v0 v15 v564 v570))
      ((store v15 96 v11))
      (v572 (icmp sle v571 v11))
      (condbr v572 (b88 v571) (b81 v571)))
    (block b81 ((v538 i64))
      (v573 (const i64 32))
      (v574 (iadd v538 v573))
      (v575 (isub v574 v568))
      ((store v566 0 v575))
      (v576 (const i64 281474976710655))
      (v577 (iand v538 v576))
      (v578 (inttoptr v577))
      (v579 (iadd v456 v12))
      ((store v578 0 v457))
      ((store v578 8 v458))
      ((store v578 16 v459))
      ((store v578 24 v579))
      (v580 (load i64 v15 96))
      (v581 (iadd v580 v12))
      ((store v15 96 v581))
      (br b77))
    (block b82 ()
      (v582 (load ptr v15 16))
      (v583 (load i64 v15 24))
      (v584 (iand v557 v583))
      (v585 (ptr_add v582 v584 32 0))
      (v586 (load i64 v585 24))
      (v587 (icmp eq v586 v11))
      (condbr v587 (b87) (b83)))
    (block b83 ()
      (v588 (const bool true))
      (v589 (load i64 v585 0))
      (v590 (icmp eq v589 v457))
      (v591 (load i64 v585 8))
      (v592 (icmp eq v591 v458))
      (v593 (iand v590 v592))
      (condbr v593 (b86 v585) (b84)))
    (block b84 ()
      (v594 (iadd v584 v12))
      (v595 (iand v594 v583))
      (v596 (ptr_add v582 v595 32 0))
      (v597 (load i64 v596 24))
      (v598 (icmp eq v597 v11))
      (condbr v598 (b87) (b85)))
    (block b85 ()
      (v599 (const bool true))
      (v600 (load i64 v596 0))
      (v601 (icmp eq v600 v457))
      (v602 (load i64 v596 8))
      (v603 (icmp eq v602 v458))
      (v604 (iand v601 v603))
      (condbr v604 (b86 v596) (b87)))
    (block b86 ((v539 ptr))
      (v605 (const i64 1))
      (v606 (load i64 v539 16))
      (v607 (iadd v606 v459))
      ((store v539 16 v607))
      (v608 (load i64 v539 24))
      (v609 (iadd v608 v456))
      ((store v539 24 v609))
      (v610 (const i64 3))
      (br b77))
    (block b87 ()
      (v611 (stack_addr 1))
      ((store v611 0 v457))
      ((store v611 8 v458))
      ((store v611 16 v459))
      ((store v611 24 v456))
      (v612 (call_host agg_miss v0 v15 v611))
      (v613 (icmp slt v612 v11))
      (condbr v613 (b88 v612) (b77)))
    (block b88 ((v540 i64))
      (return v540))
    (block b89 ()
      (v620 (load i64 v15 112))
      (v621 (const i64 2))
      (v622 (ixor v620 v621))
      (v623 (const i64 29))
      (v624 (ixor v622 v116))
      (v625 (imul v624 v620))
      (v626 (ushr v625 v623))
      (v627 (ixor v625 v626))
      (v628 (ixor v627 v117))
      (v629 (imul v628 v620))
      (v630 (ushr v629 v623))
      (v631 (ixor v629 v630))
      (v632 (const i64 32))
      (v633 (ushr v631 v632))
      (v634 (ixor v631 v633))
      (v635 (const i64 4294967295))
      (v636 (iand v634 v635))
      (v637 (load i64 v15 104))
      (v638 (icmp ne v637 v11))
      (condbr v638 (b91) (b94)))
    (block b90 ()
      (v693 (load ptr v15 0))
      (v694 (load i64 v15 96))
      (v695 (load i64 v693 88))
      (v696 (iadd v695 v694))
      ((store v693 88 v696))
      ((store v15 96 v11))
      (br b1 v114 v66))
    (block b91 ()
      (v639 (load i64 v15 48))
      (v640 (const i64 32))
      (v641 (bitrev v636))
      (v642 (ushr v641 v640))
      (v643 (iand v642 v639))
      (v644 (load ptr v15 8))
      (v645 (ptr_add v644 v643 8 0))
      (v646 (load i64 v645 0))
      (v647 (const i64 9007199254740992))
      (v648 (icmp ult v646 v647))
      (condbr v648 (b92) (b93 v646)))
    (block b92 ()
      (v649 (load i64 v15 96))
      (v650 (call_host agg_block v0 v15 v643 v649))
      ((store v15 96 v11))
      (v651 (icmp sle v650 v11))
      (condbr v651 (b100 v650) (b93 v650)))
    (block b93 ((v617 i64))
      (v652 (const i64 32))
      (v653 (iadd v617 v652))
      (v654 (isub v653 v647))
      ((store v645 0 v654))
      (v655 (const i64 281474976710655))
      (v656 (iand v617 v655))
      (v657 (inttoptr v656))
      (v658 (iadd v115 v12))
      ((store v657 0 v116))
      ((store v657 8 v117))
      ((store v657 16 v118))
      ((store v657 24 v658))
      (v659 (load i64 v15 96))
      (v660 (iadd v659 v12))
      ((store v15 96 v660))
      (br b90))
    (block b94 ()
      (v661 (load ptr v15 16))
      (v662 (load i64 v15 24))
      (v663 (iand v636 v662))
      (v664 (ptr_add v661 v663 32 0))
      (v665 (load i64 v664 24))
      (v666 (icmp eq v665 v11))
      (condbr v666 (b99) (b95)))
    (block b95 ()
      (v667 (const bool true))
      (v668 (load i64 v664 0))
      (v669 (icmp eq v668 v116))
      (v670 (load i64 v664 8))
      (v671 (icmp eq v670 v117))
      (v672 (iand v669 v671))
      (condbr v672 (b98 v664) (b96)))
    (block b96 ()
      (v673 (iadd v663 v12))
      (v674 (iand v673 v662))
      (v675 (ptr_add v661 v674 32 0))
      (v676 (load i64 v675 24))
      (v677 (icmp eq v676 v11))
      (condbr v677 (b99) (b97)))
    (block b97 ()
      (v678 (const bool true))
      (v679 (load i64 v675 0))
      (v680 (icmp eq v679 v116))
      (v681 (load i64 v675 8))
      (v682 (icmp eq v681 v117))
      (v683 (iand v680 v682))
      (condbr v683 (b98 v675) (b99)))
    (block b98 ((v618 ptr))
      (v684 (const i64 1))
      (v685 (load i64 v618 16))
      (v686 (iadd v685 v118))
      ((store v618 16 v686))
      (v687 (load i64 v618 24))
      (v688 (iadd v687 v115))
      ((store v618 24 v688))
      (v689 (const i64 3))
      (br b90))
    (block b99 ()
      (v690 (stack_addr 1))
      ((store v690 0 v116))
      ((store v690 8 v117))
      ((store v690 16 v118))
      ((store v690 24 v115))
      (v691 (call_host agg_miss v0 v15 v690))
      (v692 (icmp slt v691 v11))
      (condbr v692 (b100 v691) (b90)))
    (block b100 ((v619 i64))
      (return v619))
    (block b101 ()
      (v707 (call_host stopped v0))
      (br b7 v707))
  )
  (fn pipeline ((v0 ptr)) (i64)
    (slots (128 8) (32 8) (40 8) (64 8) (8 8) (8 8))
    (hints (loop b14 b20))
    (block b0 ((v0 ptr))
      (v11 (const i64 0))
      (v12 (const i64 1))
      (v13 (load ptr v0 88))
      (v14 (load ptr v0 96))
      (v15 (stack_addr 0))
      (v16 (stack_addr 2))
      (v17 (const i64 16777730))
      ((store v16 0 v17))
      (v18 (const i64 0))
      ((store v16 8 v18))
      (v19 (const i64 403701760))
      ((store v16 16 v19))
      (v20 (const i64 103114866688))
      ((store v16 24 v20))
      (v21 (const i64 0))
      ((store v16 32 v21))
      (v22 (load i64 v13 24))
      (v23 (const i64 23))
      (v24 (call_host agg_open v0 v15 v16 v22 v23))
      (v25 (icmp slt v24 v11))
      (condbr v25 (b8) (b9)))
    (block b1 ((v1 i64) (v2 i64))
      (v286 (load i64 v0 424))
      (v287 (iadd v286 v1))
      ((store v0 424 v287))
      (v288 (itrunc i32 v2))
      ((store v0 448 v288))
      (br b5))
    (block b2 ((v3 i64) (v4 i64) (v5 i64))
      (v289 (load i64 v0 424))
      (v290 (iadd v289 v3))
      ((store v0 424 v290))
      (v291 (itrunc i32 v4))
      ((store v0 448 v291))
      (br b4 v5))
    (block b3 ((v6 i64) (v7 i64))
      (v292 (load i64 v0 424))
      (v293 (iadd v292 v6))
      ((store v0 424 v293))
      (v294 (itrunc i32 v7))
      ((store v0 448 v294))
      (br b5))
    (block b4 ((v8 i64))
      (v295 (icmp slt v8 v11))
      (condbr v295 (b7 v8) (b51)))
    (block b5 ()
      (v302 (call_host agg_finish v0 v15))
      (v303 (icmp slt v302 v11))
      (condbr v303 (b7 v302) (b52)))
    (block b6 ((v9 i64))
      (v297 (const i64 3))
      (v298 (const i64 8))
      (v299 (shl v9 v298))
      (v300 (ior v297 v299))
      (v301 (ineg v300))
      (br b7 v301))
    (block b7 ((v10 i64))
      (return v10))
    (block b8 ()
      (return v24))
    (block b9 ()
      (v26 (const i64 1))
      (v27 (call_host agg_absorb v0 v15 v16 v26 v11))
      (v28 (icmp slt v27 v11))
      (condbr v28 (b10) (b11)))
    (block b10 ()
      (return v27))
    (block b11 ()
      ((store v15 96 v11))
      (v29 (load ptr v15 0))
      (v30 (loadz i8 v29 13))
      (v31 (const i64 1))
      (v32 (iand v30 v31))
      ((store v15 104 v32))
      (v33 (const i64 -7046029254386353131))
      ((store v15 112 v33))
      (v34 (stack_addr 3))
      (v35 (call_host open_table v0 v34))
      (v36 (icmp slt v35 v11))
      (condbr v36 (b7 v35) (b12)))
    (block b12 ()
      (v37 (load ptr v34 0))
      (v38 (load i64 v34 16))
      (v39 (load i64 v34 24))
      (v40 (load i64 v34 32))
      (v41 (stack_addr 4))
      (v42 (stack_addr 5))
      (v43 (load i64 v0 80))
      (v44 (const i64 0))
      (v45 (icmp eq v43 v44))
      (condbr v45 (b13) (b14)))
    (block b13 ()
      (v46 (const i64 1125899906842625))
      ((store v0 80 v46))
      (v47 (const i32 0))
      ((store v0 448 v47))
      (v48 (icmp slt v11 v11))
      (condbr v48 (b7 v11) (b14)))
    (block b14 ()
      (v50 (load i64 v34 8))
      (v51 (load i32 v0 448))
      (v52 (zext i64 v51))
      (v53 (icmp uge v52 v50))
      (condbr v53 (b15 v11) (b16)))
    (block b15 ((v49 i64))
      (v56 (icmp eq v49 v11))
      (condbr v56 (b5) (b7 v49)))
    (block b16 ()
      (v54 (const bool true))
      (v55 (const bool false))
      (v65 (const i64 0))
      (br b19))
    (block b17 ((v57 i64) (v58 i64) (v59 i64))
      (v60 (const i64 3))
      (v61 (const i64 8))
      (v62 (shl v57 v61))
      (v63 (ior v60 v62))
      (v64 (ineg v63))
      (br b2 v58 v59 v64))
    (block b18 ((v66 i64) (v67 i64) (v68 i64) (v69 i64) (v70 i64))
      (v205 (icmp ne v67 v11))
      (condbr v205 (b39) (b40)))
    (block b19 ()
      (br b20 v52 v11 v11 v11 v11 v65))
    (block b20 ((v71 i64) (v72 i64) (v73 i64) (v74 i64) (v75 i64) (v76 i64))
      (v77 (icmp uge v71 v50))
      (condbr v77 (b18 v72 v73 v74 v75 v76) (b21)))
    (block b21 ()
      (v78 (iadd v71 v12))
      (v79 (ptr_add v37 v71 16 0))
      (v80 (const bool false))
      (v86 (loadz i32 v79 0))
      (v87 (const i64 1073741824))
      (v88 (iand v86 v87))
      (v89 (icmp eq v88 v11))
      (v90 (icmp ne v86 v11))
      (v91 (iand v89 v90))
      (condbr v91 (b22) (b23 v72 v73 v74 v75 v76)))
    (block b22 ()
      (v92 (load i32 v79 4))
      (v93 (sext i64 v92))
      (v94 (const i8 0))
      (v95 (const i64 2))
      (v96 (const i64 4))
      (v97 (iand v86 v96))
      (v98 (icmp ne v97 v11))
      (v99 (zext i64 v98))
      (v100 (itrunc i8 v99))
      ((store v41 0 v93))
      ((store v42 0 v100))
      (v101 (const bool true))
      (v102 (const bool false))
      (v103 (const i64 0))
      (v104 (load i64 v41 0))
      (v105 (loadz i8 v42 0))
      (v106 (icmp eq v105 v103))
      (v107 (const bool true))
      (v108 (const bool false))
      (v109 (const i64 0))
      (v110 (const bool false))
      (v111 (const i64 1))
      (v112 (select v106 v11 v111))
      (v113 (select v106 v104 v11))
      (v114 (iadd v72 v12))
      (v115 (const bool true))
      (v116 (icmp eq v74 v113))
      (v117 (icmp eq v75 v112))
      (v118 (iand v116 v117))
      (condbr v118 (b24) (b25)))
    (block b23 ((v81 i64) (v82 i64) (v83 i64) (v84 i64) (v85 i64))
      (br b20 v78 v81 v82 v83 v84 v85))
    (block b24 ()
      (v124 (iadd v73 v12))
      (v125 (const i64 0))
      (br b28 v114 v124 v74 v75 v76))
    (block b25 ()
      (v126 (icmp ne v73 v11))
      (condbr v126 (b26) (b27)))
    (block b26 ()
      (v130 (load i64 v15 112))
      (v131 (const i64 2))
      (v132 (ixor v130 v131))
      (v133 (const i64 29))
      (v134 (ixor v132 v74))
      (v135 (imul v134 v130))
      (v136 (ushr v135 v133))
      (v137 (ixor v135 v136))
      (v138 (ixor v137 v75))
      (v139 (imul v138 v130))
      (v140 (ushr v139 v133))
      (v141 (ixor v139 v140))
      (v142 (const i64 32))
      (v143 (ushr v141 v142))
      (v144 (ixor v141 v143))
      (v145 (const i64 4294967295))
      (v146 (iand v144 v145))
      (v147 (load i64 v15 104))
      (v148 (icmp ne v147 v11))
      (condbr v148 (b29) (b32)))
    (block b27 ()
      (v203 (const i64 0))
      (v204 (const i64 0))
      (br b28 v114 v12 v113 v112 v203))
    (block b28 ((v119 i64) (v120 i64) (v121 i64) (v122 i64) (v123 i64))
      (br b23 v119 v120 v121 v122 v123))
    (block b29 ()
      (v149 (load i64 v15 48))
      (v150 (const i64 32))
      (v151 (bitrev v146))
      (v152 (ushr v151 v150))
      (v153 (iand v152 v149))
      (v154 (load ptr v15 8))
      (v155 (ptr_add v154 v153 8 0))
      (v156 (load i64 v155 0))
      (v157 (const i64 9007199254740992))
      (v158 (icmp ult v156 v157))
      (condbr v158 (b30) (b31 v156)))
    (block b30 ()
      (v159 (load i64 v15 96))
      (v160 (call_host agg_block v0 v15 v153 v159))
      ((store v15 96 v11))
      (v161 (icmp sle v160 v11))
      (condbr v161 (b38 v160) (b31 v160)))
    (block b31 ((v127 i64))
      (v162 (const i64 32))
      (v163 (iadd v127 v162))
      (v164 (isub v163 v157))
      ((store v155 0 v164))
      (v165 (const i64 281474976710655))
      (v166 (iand v127 v165))
      (v167 (inttoptr v166))
      (v168 (iadd v73 v12))
      ((store v167 0 v74))
      ((store v167 8 v75))
      ((store v167 16 v76))
      ((store v167 24 v168))
      (v169 (load i64 v15 96))
      (v170 (iadd v169 v12))
      ((store v15 96 v170))
      (br b27))
    (block b32 ()
      (v171 (load ptr v15 16))
      (v172 (load i64 v15 24))
      (v173 (iand v146 v172))
      (v174 (ptr_add v171 v173 32 0))
      (v175 (load i64 v174 24))
      (v176 (icmp eq v175 v11))
      (condbr v176 (b37) (b33)))
    (block b33 ()
      (v177 (const bool true))
      (v178 (load i64 v174 0))
      (v179 (icmp eq v178 v74))
      (v180 (load i64 v174 8))
      (v181 (icmp eq v180 v75))
      (v182 (iand v179 v181))
      (condbr v182 (b36 v174) (b34)))
    (block b34 ()
      (v183 (iadd v173 v12))
      (v184 (iand v183 v172))
      (v185 (ptr_add v171 v184 32 0))
      (v186 (load i64 v185 24))
      (v187 (icmp eq v186 v11))
      (condbr v187 (b37) (b35)))
    (block b35 ()
      (v188 (const bool true))
      (v189 (load i64 v185 0))
      (v190 (icmp eq v189 v74))
      (v191 (load i64 v185 8))
      (v192 (icmp eq v191 v75))
      (v193 (iand v190 v192))
      (condbr v193 (b36 v185) (b37)))
    (block b36 ((v128 ptr))
      (v194 (const i64 1))
      (v195 (load i64 v128 16))
      (v196 (iadd v195 v76))
      ((store v128 16 v196))
      (v197 (load i64 v128 24))
      (v198 (iadd v197 v73))
      ((store v128 24 v198))
      (v199 (const i64 3))
      (br b27))
    (block b37 ()
      (v200 (stack_addr 1))
      ((store v200 0 v74))
      ((store v200 8 v75))
      ((store v200 16 v76))
      ((store v200 24 v73))
      (v201 (call_host agg_miss v0 v15 v200))
      (v202 (icmp slt v201 v11))
      (condbr v202 (b38 v201) (b27)))
    (block b38 ((v129 i64))
      (return v129))
    (block b39 ()
      (v209 (load i64 v15 112))
      (v210 (const i64 2))
      (v211 (ixor v209 v210))
      (v212 (const i64 29))
      (v213 (ixor v211 v68))
      (v214 (imul v213 v209))
      (v215 (ushr v214 v212))
      (v216 (ixor v214 v215))
      (v217 (ixor v216 v69))
      (v218 (imul v217 v209))
      (v219 (ushr v218 v212))
      (v220 (ixor v218 v219))
      (v221 (const i64 32))
      (v222 (ushr v220 v221))
      (v223 (ixor v220 v222))
      (v224 (const i64 4294967295))
      (v225 (iand v223 v224))
      (v226 (load i64 v15 104))
      (v227 (icmp ne v226 v11))
      (condbr v227 (b41) (b44)))
    (block b40 ()
      (v282 (load ptr v15 0))
      (v283 (load i64 v15 96))
      (v284 (load i64 v282 88))
      (v285 (iadd v284 v283))
      ((store v282 88 v285))
      ((store v15 96 v11))
      (br b1 v66 v50))
    (block b41 ()
      (v228 (load i64 v15 48))
      (v229 (const i64 32))
      (v230 (bitrev v225))
      (v231 (ushr v230 v229))
      (v232 (iand v231 v228))
      (v233 (load ptr v15 8))
      (v234 (ptr_add v233 v232 8 0))
      (v235 (load i64 v234 0))
      (v236 (const i64 9007199254740992))
      (v237 (icmp ult v235 v236))
      (condbr v237 (b42) (b43 v235)))
    (block b42 ()
      (v238 (load i64 v15 96))
      (v239 (call_host agg_block v0 v15 v232 v238))
      ((store v15 96 v11))
      (v240 (icmp sle v239 v11))
      (condbr v240 (b50 v239) (b43 v239)))
    (block b43 ((v206 i64))
      (v241 (const i64 32))
      (v242 (iadd v206 v241))
      (v243 (isub v242 v236))
      ((store v234 0 v243))
      (v244 (const i64 281474976710655))
      (v245 (iand v206 v244))
      (v246 (inttoptr v245))
      (v247 (iadd v67 v12))
      ((store v246 0 v68))
      ((store v246 8 v69))
      ((store v246 16 v70))
      ((store v246 24 v247))
      (v248 (load i64 v15 96))
      (v249 (iadd v248 v12))
      ((store v15 96 v249))
      (br b40))
    (block b44 ()
      (v250 (load ptr v15 16))
      (v251 (load i64 v15 24))
      (v252 (iand v225 v251))
      (v253 (ptr_add v250 v252 32 0))
      (v254 (load i64 v253 24))
      (v255 (icmp eq v254 v11))
      (condbr v255 (b49) (b45)))
    (block b45 ()
      (v256 (const bool true))
      (v257 (load i64 v253 0))
      (v258 (icmp eq v257 v68))
      (v259 (load i64 v253 8))
      (v260 (icmp eq v259 v69))
      (v261 (iand v258 v260))
      (condbr v261 (b48 v253) (b46)))
    (block b46 ()
      (v262 (iadd v252 v12))
      (v263 (iand v262 v251))
      (v264 (ptr_add v250 v263 32 0))
      (v265 (load i64 v264 24))
      (v266 (icmp eq v265 v11))
      (condbr v266 (b49) (b47)))
    (block b47 ()
      (v267 (const bool true))
      (v268 (load i64 v264 0))
      (v269 (icmp eq v268 v68))
      (v270 (load i64 v264 8))
      (v271 (icmp eq v270 v69))
      (v272 (iand v269 v271))
      (condbr v272 (b48 v264) (b49)))
    (block b48 ((v207 ptr))
      (v273 (const i64 1))
      (v274 (load i64 v207 16))
      (v275 (iadd v274 v70))
      ((store v207 16 v275))
      (v276 (load i64 v207 24))
      (v277 (iadd v276 v67))
      ((store v207 24 v277))
      (v278 (const i64 3))
      (br b40))
    (block b49 ()
      (v279 (stack_addr 1))
      ((store v279 0 v68))
      ((store v279 8 v69))
      ((store v279 16 v70))
      ((store v279 24 v67))
      (v280 (call_host agg_miss v0 v15 v279))
      (v281 (icmp slt v280 v11))
      (condbr v281 (b50 v280) (b40)))
    (block b50 ((v208 i64))
      (return v208))
    (block b51 ()
      (v296 (call_host stopped v0))
      (br b7 v296))
    (block b52 ()
      (v304 (call_host done v0))
      (br b7 v304))
  )
)
