(
(declare %kqp%tx_result_binding_0_0 (OptionalType (StructType '('Count0 (DataType 'Uint64)) '('CountIf0 (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 '('"key" '"subkey" '"value"))
(let $7 (YtReadTable! world (DataSource '"yt" '"/Root/plato") '((YtSection '((YtPath $5 $6 (Void) (Void))) '()))))
(let $8 (DqReadWideWrap $7 '()))
(let $9 (Uint64 '1))
(let $10 (Uint32 '0))
(let $11 (Uint32 '1))
(let $12 (Uint32 '2))
(let $13 (Uint64 '0))
(let $14 (Bool 'false))
(let $15 '('"_logical_id" '6663))
(let $16 (DataType 'Uint64))
(let $17 '('_yql_agg_0 $16))
(let $18 '('_yql_agg_1 $16))
(let $19 '($15 '('"_id" '"c645e962-51eb6024-fd94058e-5980664a") '('"_wide_channels" (StructType $17 $18))))
(let $20 (DqPhyStage '() (lambda '() (block '(
  (let $65 (lambda '($70) (block '(
    (let $71 (Substring $70 $10 $11))
    (let $72 (Substring $70 $12 $11))
    (let $73 (If (== $71 $72) $9 $13))
    (return $9 $73)
  ))))
  (let $66 (lambda '($77 $78 $79) (block '(
    (let $80 (Substring $77 $10 $11))
    (let $81 (Substring $77 $12 $11))
    (let $82 (If (== $80 $81) $9 $13))
    (return (AggrAdd $78 $9) (AggrAdd $79 $82))
  ))))
  (return (FromFlow (WideCondense1 (WideMap $8 (lambda '($67 $68 $69) $69)) $65 (lambda '($74 $75 $76) $14) $66)))
))) $19))
(let $21 (DqCnUnionAll (TDqOutput $20 '0)))
(let $22 (OptionalType (StructType '('Count0 $16) '('CountIf0 $16))))
(let $23 (DqPhyStage '($21) (lambda '($83) (block '(
  (let $84 (lambda '($87 $88) $87 $88))
  (let $85 (lambda '($93 $94 $95 $96) (AggrAdd $93 $95) (AggrAdd $94 $96)))
  (let $86 (WideCondense1 (ToFlow $83) $84 (lambda '($89 $90 $91 $92) $14) $85))
  (return (FromFlow (Condense (NarrowMap (Take $86 $9) (lambda '($97 $98) (AsStruct '('Count0 $97) '('CountIf0 $98)))) (Nothing $22) (lambda '($99 $100) $14) (lambda '($101 $102) (Just $101)))))
))) '('('"_logical_id" '6850) '('"_id" '"2c5e5076-cf639398-1d61c18a-107696a8"))))
(let $24 (DqCnValue (TDqOutput $23 '0)))
(let $25 (KqpPhysicalTx '($20 $23) '($24) '() '('('"type" '"compute"))))
(let $26 (lambda '($127 $128 $129 $130) $129 $130 $127 $128))
(let $27 (DataType 'String))
(let $28 '('"key" $27))
(let $29 (StructType $17 $18 $28 '('"subkey" $27)))
(let $30 '($15 '('"_id" '"ae7af970-50946673-6afca6cb-590f4790") '('"_wide_channels" $29)))
(let $31 (DqPhyStage '() (lambda '() (block '(
  (let $103 (lambda '($106 $107 $108) $106 $107))
  (let $104 (lambda '($109 $110 $111 $112 $113) (block '(
    (let $114 (Substring $113 $10 $11))
    (let $115 (Substring $113 $12 $11))
    (let $116 (If (== $114 $115) $9 $13))
    (return $9 $116)
  ))))
  (let $105 (lambda '($117 $118 $119 $120 $121 $122 $123) (block '(
    (let $124 (Substring $121 $10 $11))
    (let $125 (Substring $121 $12 $11))
    (let $126 (If (== $124 $125) $9 $13))
    (return (AggrAdd $122 $9) (AggrAdd $123 $126))
  ))))
  (return (DqPhyHashCombine (WideToBlocks (FromFlow $8)) '-1073741824 $103 $104 $105 $26))
))) $30))
(let $32 (DqCnHashShuffle (TDqOutput $31 '0) '('2 '"3") '0 '"HashV2"))
(let $33 (DataType 'Double))
(let $34 '('"_partition_mode" '"aggregate"))
(let $35 (OptionalType $27))
(let $36 (StructType '('"approved" $16) '('"approved_share" $33) '('"key" $35) '('"subkey" $35) '('"total" $16)))
(let $37 '('"_wide_channels" $36))
(let $38 '('('"_logical_id" '6489) '('"_id" '"7eb519c3-43b91d24-13c1e8c7-f5b86770") $34 $37))
(let $39 (DqPhyStage '($32) (lambda '($131) (block '(
  (let $132 (lambda '($137 $138 $139 $140) $139 $140))
  (let $133 (lambda '($141 $142 $143 $144 $145 $146) $143 $144))
  (let $134 (lambda '($147 $148 $149 $150 $151 $152 $153 $154) (AggrAdd $149 $153) (AggrAdd $150 $154)))
  (let $135 (WideCombiner (ToFlow (WideFromBlocks $131)) '"" $132 $133 $134 $26))
  (let $136 (lambda '($155 $156 $157 $158) $156 (/ (SafeCast $156 $33) $155) (Just $157) (Just $158) $155))
  (return (FromFlow (WideMap $135 $136)))
))) $38))
(let $40 (lambda '($181 $182 $183) $182 $183 $181))
(let $41 (StructType $17 $18 $28))
(let $42 '($15 '('"_id" '"ef170567-34a6fdbd-b7696ac0-81cb15f1") '('"_wide_channels" $41)))
(let $43 (DqPhyStage '() (lambda '() (block '(
  (let $159 (lambda '($162 $163 $164) $162 $164))
  (let $160 (lambda '($167 $168 $169) (block '(
    (let $170 (Substring $169 $10 $11))
    (let $171 (Substring $169 $12 $11))
    (let $172 (If (== $170 $171) $9 $13))
    (return $9 $172)
  ))))
  (let $161 (lambda '($173 $174 $175 $176 $177) (block '(
    (let $178 (Substring $175 $10 $11))
    (let $179 (Substring $175 $12 $11))
    (let $180 (If (== $178 $179) $9 $13))
    (return (AggrAdd $176 $9) (AggrAdd $177 $180))
  ))))
  (return (DqPhyHashCombine (WideToBlocks (FromFlow (WideMap $8 $159))) '-1073741824 (lambda '($165 $166) $165) $160 $161 $40))
))) $42))
(let $44 (DqCnHashShuffle (TDqOutput $43 '0) '('2) '0 '"HashV2"))
(let $45 (Nothing $35))
(let $46 '('('"_logical_id" '6216) '('"_id" '"cecdfff7-e17c7090-8f728e82-838b0d68") $34 $37))
(let $47 (DqPhyStage '($44) (lambda '($184) (block '(
  (let $185 (lambda '($192 $193 $194 $195) $193 $194))
  (let $186 (lambda '($196 $197 $198 $199 $200 $201) (AggrAdd $197 $200) (AggrAdd $198 $201)))
  (let $187 (WideCombiner (ToFlow (WideFromBlocks $184)) '"" (lambda '($189 $190 $191) $191) $185 $186 $40))
  (let $188 (lambda '($202 $203 $204) $203 (/ (SafeCast $203 $33) $202) (Just $204) $45 $202))
  (return (FromFlow (WideMap $187 $188)))
))) $46))
(let $48 '"%kqp%tx_result_binding_0_0")
(let $49 '('('"_logical_id" '7009) '('"_id" '"d295a64a-b0dcbac8-34d2621b-e5bfbb0d") $37))
(let $50 (DqPhyStage '() (lambda '() (block '(
  (let $205 %kqp%tx_result_binding_0_0)
  (let $206 (Coalesce (Member $205 'CountIf0) $13))
  (let $207 (Coalesce (Member $205 'Count0) $13))
  (let $208 (lambda '($209) (Member $209 '"approved") (Member $209 '"approved_share") (Member $209 '"key") (Member $209 '"subkey") (Member $209 '"total")))
  (return (FromFlow (ExpandMap (ToFlow (AsList (AsStruct '('"approved" $206) '('"approved_share" (/ (SafeCast $206 $33) $207)) '('"key" $45) '('"subkey" $45) '('"total" $207)))) $208)))
))) $49))
(let $51 (DqCnParallelUnionAll (TDqOutput $39 '0)))
(let $52 (DqCnParallelUnionAll (TDqOutput $47 '0)))
(let $53 (DqCnParallelUnionAll (TDqOutput $50 '0)))
(let $54 '($51 $52 $53))
(let $55 (lambda '($217 $218 $219 $220 $221) (AsStruct '('"approved" $217) '('"approved_share" $218) '('"key" $219) '('"subkey" $220) '('"total" $221))))
(let $56 '('('"_logical_id" '7116) '('"_id" '"ff152428-371c31cb-266f23c9-a72d0416") $37))
(let $57 (DqPhyStage $54 (lambda '($210 $211 $212) (block '(
  (let $213 (Extend (NarrowMap (ToFlow $210) $55) (NarrowMap (ToFlow $211) $55) (NarrowMap (ToFlow $212) $55)))
  (let $214 (Bool 'true))
  (let $215 (Sort $213 '($214 $214) (lambda '($222) '((Member $222 '"key") (Member $222 '"subkey")))))
  (let $216 (lambda '($223) (Member $223 '"approved") (Member $223 '"approved_share") (Member $223 '"key") (Member $223 '"subkey") (Member $223 '"total")))
  (return (FromFlow (ExpandMap $215 $216)))
))) $56))
(let $58 (DqCnMerge (TDqOutput $57 '0) '('('2 '"Asc") '('"3" '"Asc"))))
(let $59 (DqPhyStage '($58) (lambda '($224) (FromFlow (NarrowMap (ToFlow $224) $55))) '('('"_logical_id" '7128) '('"_id" '"7130d19c-cca79f7c-baf5f9a-35384ee2"))))
(let $60 '($31 $39 $43 $47 $50 $57 $59))
(let $61 '('"key" '"subkey" '"approved" '"approved_share" '"total"))
(let $62 (DqCnResult (TDqOutput $59 '0) $61))
(let $63 (KqpTxResultBinding $22 '0 '0))
(let $64 (KqpPhysicalTx $60 '($62) '('($48 $63)) '('('"type" '"generic"))))
(return (KqpPhysicalQuery '($25 $64) '((KqpTxResultBinding (ListType $36) '1 '0)) '('('"type" '"query"))))
)
