tdata :: Parser Constree
tdata
  = try (encode <$> int)
  <|> try (encode <$> command)
  <|> try (encode <$> instr)
  <|> try constree
  <|> try treeTuple
  <|> try (encode <$> listOf tdata)
  <?> "valid data"
tdata :: Parser Constree
tdata
  = try (encode <$> int)
  <|> try (encode <$> command)
  <|> try (encode <$> instr)
  <|> try constree
  <|> try treeTuple
  <|> try (encode <$> listOf tdata)
  <?> "valid data"
tdata
  = try (encode <$> int)
  <|> try (encode <$> command)
  <|> try (encode <$> instr)
  <|> try constree
  <|> try treeTuple
  <|> try (encode <$> listOf tdata)
  <?> "valid data"