meta f n 0 = 0
meta f n 1 = n
meta f n m = f n (meta f n (m-1))

wtf _ m = m + 1
add n m = meta wtf n (m+1)
mul = meta add
pow = meta mul
omg = meta pow

main = do
  print $ 2 `pow` 8
