// RUN: concretecompiler --action=dump-llvm-ir --optimizer-strategy=dag-multi %s
// Just ensure that compile
// https://github.com/zama-ai/concrete-internal/issues/277
func.func @main(%arg0: tensor<1x!FHE.eint<4>>) -> tensor<1x!FHE.esint<9>> {
  %cst = arith.constant dense<[0, 1, 4, 9, 16, 25, 36, 49, 64, 81, 100, 121, 144, 169, 196, 225]> : tensor<16xi64>
  %0 = "FHELinalg.apply_lookup_table"(%arg0, %cst) : (tensor<1x!FHE.eint<4>>, tensor<16xi64>) -> tensor<1x!FHE.eint<9>>
  %c1_i10 = arith.constant 1 : i10
  %1 = "FHELinalg.to_signed"(%0) : (tensor<1x!FHE.eint<9>>) -> tensor<1x!FHE.esint<9>>
  %cst_0 = tensor.from_elements %c1_i10 : tensor<1xi10>
  %2 = "FHELinalg.sub_eint_int"(%1, %cst_0) : (tensor<1x!FHE.esint<9>>, tensor<1xi10>) -> tensor<1x!FHE.esint<9>>
  %cst_1 = arith.constant dense<"[encoded data, 8194 characters]"> : tensor<512xi64>
  %3 = "FHELinalg.apply_lookup_table"(%2, %cst_1) : (tensor<1x!FHE.esint<9>>, tensor<512xi64>) -> tensor<1x!FHE.eint<9>>
  %4 = "FHELinalg.to_signed"(%3) : (tensor<1x!FHE.eint<9>>) -> tensor<1x!FHE.esint<9>>
  %5 = "FHELinalg.sub_eint"(%1, %4) : (tensor<1x!FHE.esint<9>>, tensor<1x!FHE.esint<9>>) -> tensor<1x!FHE.esint<9>>
  return %5 : tensor<1x!FHE.esint<9>>
}
