- BlackBox:
    name: Clash.Sized.RTree.treplicate
    kind: Expression
    type: 'replicate :: SNat
      n -> a -> RTree d a'
    template: ~TYPMO'(0 to (2**~LIT[0])-1 => ~IF~VIVADO~THEN~TOBV[~ARG[1]][~TYP[1]]~ELSE~ARG[1]~FI)
    workInfo: Never
- BlackBox:
    name: Clash.Sized.RTree.textract
    kind: Expression
    type: 'textract :: RTree
      0 a -> a'
    template: ~IF ~VIVADO ~THEN ~FROMBV[~VAR[t][0](0)][~TYPO] ~ELSE ~VAR[t][0](0)
      ~FI
    workInfo: Never
- BlackBox:
    name: Clash.Sized.RTree.tsplit
    kind: Expression
    type: 'tsplit:: RTree
      (d+1) a -> (RTree d a,RTree d a)'
    template: (~VAR[t][0](0 to (2**(~DEPTH[~TYP[0]]-1))-1) ,~VAR[t][0](2**(~DEPTH[~TYP[0]]-1)
      to (2**~DEPTH[~TYP[0]])-1))
    workInfo: Never
