     else
       raise ArgumentError, message: "Unknown digit(s): #{long_binary}"
     end
-  end
-
-  defp validate?(str) do
-    String.match?(str, ~r/^-?[0-9]+$/)
   end
 
   # End case where we run out of words. Oops.

  def parse("18"), do: "eighteen"
  def parse("19"), do: "nineteen"
  def parse("20"), do: "twenty"
  def parse(<<?2, n::utf8>>), do: "twenty #{parse(<<n>>)}"
  def parse("30"), do: "thirty"
  def parse(<<?3, n::utf8>>), do: "thirty #{parse(<<n>>)}"

defmodule NumbersToWords do

  @places ~w[ thousand million billion trillion quadrillion quintillion sextillion septillion octillion nonillion decillion ]

  # the default entry point, when the argument is an int and not a binary string
  def parse(int) when is_integer(int) do
