(
(declare %kqp%tx_result_binding_0_0 (OptionalType (StructType '('Count0 (DataType 'Uint64)))))
(let $1 '@@["StructType";[["key";["DataType";"String"]];["subkey";["DataType";"String"]];["value";["DataType";"String"]]]]@@)
(let $2 (YqlRowSpec '('NativeYtTypeFlags '0) '('StrictSchema '1) '('UniqueKeys '0) '('Type $1)))
(let $3 (YtMeta '('CanWrite '1) '('DoesExist '1) '('YqlCompatibleScheme '1) '('InferredScheme '0) '('IsDynamic '0) '('Attrs '('('"native_strict_schema" 'false)))))
(let $4 (YtStat '('Id '"Input") '('RecordsCount '"14") '('DataSize '"614") '('ChunkCount '1) '('ModifyTime '0) '('Revision '0)))
(let $5 (YtTable '"Input" $2 $3 $4 '() (Void) (Void) '"/Root/plato"))
(let $6 (YtReadTable! world (DataSource '"yt" '"/Root/plato") '((YtSection '((YtPath $5 '('key '"value") (Void) (Void))) '()))))
(let $7 (DqReadWideWrap $6 '()))
(let $8 (Uint64 '1))
(let $9 (Bool 'false))
(let $10 (lambda '($67) $67))
(let $11 '('"_logical_id" '4882))
(let $12 (DataType 'Uint64))
(let $13 '('_yql_agg_0 $12))
(let $14 '($11 '('"_id" '"2913b6da-8ab8b42-65be0ef6-1f8c1b69") '('"_wide_channels" (StructType $13))))
(let $15 (DqPhyStage '() (lambda '() (block '(
  (let $59 (Condense1 (NarrowMap $7 (lambda '($60 $61) (AsStruct))) (lambda '($62) $8) (lambda '($63 $64) $9) (lambda '($65 $66) (AggrAdd $66 $8))))
  (return (FromFlow (ExpandMap $59 $10)))
))) $14))
(let $16 (DqCnUnionAll (TDqOutput $15 '0)))
(let $17 (OptionalType (StructType '('Count0 $12))))
(let $18 (DqPhyStage '($16) (lambda '($68) (block '(
  (let $69 (WideCondense1 (ToFlow $68) $10 (lambda '($70 $71) $9) (lambda '($72 $73) (AggrAdd $72 $73))))
  (return (FromFlow (Condense (NarrowMap (Take $69 $8) (lambda '($74) (AsStruct '('Count0 $74)))) (Nothing $17) (lambda '($75 $76) $9) (lambda '($77 $78) (Just $77)))))
))) '('('"_logical_id" '5042) '('"_id" '"2e800c3b-35f6719e-9967588d-d0fc9ded"))))
(let $19 (DqCnValue (TDqOutput $18 '0)))
(let $20 (KqpPhysicalTx '($15 $18) '($19) '() '('('"type" '"compute"))))
(let $21 (lambda '($93 $94 $95) $95 $93 $94))
(let $22 (DataType 'String))
(let $23 '('key $22))
(let $24 (StructType $13 $23 '('prefix $22)))
(let $25 '($11 '('"_id" '"a5716034-bc6a164e-9dbce7c2-a52eb82a") '('"_wide_channels" $24)))
(let $26 (DqPhyStage '() (lambda '() (block '(
  (let $79 (lambda '($80 $81) (block '(
    (let $82 (Uint32 '1))
    (let $83 (Substring $81 $82 $82))
    (return $80 $83)
  ))))
  (return (DqPhyHashCombine (WideToBlocks (FromFlow $7)) '-1073741824 $79 (lambda '($84 $85 $86 $87) $8) (lambda '($88 $89 $90 $91 $92) (AggrAdd $92 $8)) $21))
))) $25))
(let $27 (DqCnHashShuffle (TDqOutput $26 '0) '('1 '"2") '0 '"HashV2"))
(let $28 (Uint64 '0))
(let $29 '('"_partition_mode" '"aggregate"))
(let $30 (OptionalType $22))
(let $31 (StructType '('"agrouping" $12) '('"cnt" $12) '('key $30) '('prefix $30)))
(let $32 '('"_wide_channels" $31))
(let $33 '('('"_logical_id" '4725) '('"_id" '"8ad5fccc-5de63b2e-cb111769-eb5b6d1b") $29 $32))
(let $34 (DqPhyStage '($27) (lambda '($96) (block '(
  (let $97 (lambda '($100 $101 $102) $101 $102))
  (let $98 (WideCombiner (ToFlow (WideFromBlocks $96)) '"" $97 (lambda '($103 $104 $105 $106 $107) $105) (lambda '($108 $109 $110 $111 $112 $113) (AggrAdd $110 $113)) $21))
  (let $99 (lambda '($114 $115 $116) $28 $114 (Just $115) (Just $116)))
  (return (FromFlow (WideMap $98 $99)))
))) $33))
(let $35 (lambda '($125 $126) $126 $125))
(let $36 '($11 '('"_id" '"dca04887-ff0f5ff7-4e60dcef-9bd5823f") '('"_wide_channels" (StructType $13 $23))))
(let $37 (DqPhyStage '() (lambda '() (DqPhyHashCombine (WideToBlocks (FromFlow (WideMap $7 (lambda '($117 $118) $117)))) '-1073741824 (lambda '($119) $119) (lambda '($120 $121) $8) (lambda '($122 $123 $124) (AggrAdd $124 $8)) $35)) $36))
(let $38 (DqCnHashShuffle (TDqOutput $37 '0) '('1) '0 '"HashV2"))
(let $39 (Nothing $30))
(let $40 '('('"_logical_id" '4490) '('"_id" '"3442788e-b16b41cd-41c19dd8-38a54c56") $29 $32))
(let $41 (DqPhyStage '($38) (lambda '($127) (block '(
  (let $128 (WideCombiner (ToFlow (WideFromBlocks $127)) '"" (lambda '($130 $131) $131) (lambda '($132 $133 $134) $133) (lambda '($135 $136 $137 $138) (AggrAdd $136 $138)) $35))
  (let $129 (lambda '($139 $140) $8 $139 (Just $140) $39))
  (return (FromFlow (WideMap $128 $129)))
))) $40))
(let $42 '"%kqp%tx_result_binding_0_0")
(let $43 '('('"_logical_id" '5169) '('"_id" '"630ddef3-9a42b062-62354f97-b56eaab0") $32))
(let $44 (DqPhyStage '() (lambda '() (block '(
  (let $141 (lambda '($142) (Member $142 '"agrouping") (Member $142 '"cnt") (Member $142 'key) (Member $142 'prefix)))
  (return (FromFlow (ExpandMap (ToFlow (AsList (AsStruct '('"agrouping" (Uint64 '3)) '('"cnt" (Coalesce (Member %kqp%tx_result_binding_0_0 'Count0) $28)) '('key $39) '('prefix $39)))) $141)))
))) $43))
(let $45 (DqCnParallelUnionAll (TDqOutput $34 '0)))
(let $46 (DqCnParallelUnionAll (TDqOutput $41 '0)))
(let $47 (DqCnParallelUnionAll (TDqOutput $44 '0)))
(let $48 '($45 $46 $47))
(let $49 (lambda '($150 $151 $152 $153) (AsStruct '('"agrouping" $150) '('"cnt" $151) '('key $152) '('prefix $153))))
(let $50 '('('"_logical_id" '5262) '('"_id" '"37c6c82f-8bca6d0b-4d2db0ef-7b811d3") $32))
(let $51 (DqPhyStage $48 (lambda '($143 $144 $145) (block '(
  (let $146 (Extend (NarrowMap (ToFlow $143) $49) (NarrowMap (ToFlow $144) $49) (NarrowMap (ToFlow $145) $49)))
  (let $147 (Bool 'true))
  (let $148 (Sort $146 '($147 $147) (lambda '($154) '((Member $154 'key) (Member $154 'prefix)))))
  (let $149 (lambda '($155) (Member $155 '"agrouping") (Member $155 '"cnt") (Member $155 'key) (Member $155 'prefix)))
  (return (FromFlow (ExpandMap $148 $149)))
))) $50))
(let $52 (DqCnMerge (TDqOutput $51 '0) '('('"2" '"Asc") '('3 '"Asc"))))
(let $53 (DqPhyStage '($52) (lambda '($156) (FromFlow (NarrowMap (ToFlow $156) $49))) '('('"_logical_id" '5274) '('"_id" '"35039acf-a3b33a58-f13d065e-60322a9"))))
(let $54 '($26 $34 $37 $41 $44 $51 $53))
(let $55 '('key 'prefix '"cnt" '"agrouping"))
(let $56 (DqCnResult (TDqOutput $53 '0) $55))
(let $57 (KqpTxResultBinding $17 '0 '0))
(let $58 (KqpPhysicalTx $54 '($56) '('($42 $57)) '('('"type" '"generic"))))
(return (KqpPhysicalQuery '($20 $58) '((KqpTxResultBinding (ListType $31) '1 '0)) '('('"type" '"query"))))
)
