#!/usr/bin/perl

sub trans {
  return "ZERO" if ($_[0] == 0);
  return "ONE" if ($_[0] == 1);
  return "TWO" if ($_[0] == 2);
  return "THREE" if ($_[0] == 3);
  return "FOUR" if ($_[0] == 4);
  return "FIVE" if ($_[0] == 5);
  return "SIX" if ($_[0] == 6);
  return "SEVEN" if ($_[0] == 7);
  return "EIGHT" if ($_[0] == 8);
  return "NINE" if ($_[0] == 9);
  return "TEN" if ($_[0] == 10);
  return "ELEVEN" if ($_[0] == 11);
  return "TWELVE" if ($_[0] == 12);
  return "THIRTEEN" if ($_[0] == 13);
  return "FOURTEEN" if ($_[0] == 14);
  return "FIFTEEN" if ($_[0] == 15);
  return "SIXTEEN" if ($_[0] == 16);
  return "SEVENTEEN" if ($_[0] == 17);
  return "EIGHTEEN" if ($_[0] == 18);
  return "NINETEEN" if ($_[0] == 19);
  return "TWENTY" if ($_[0] == 20);
  return "THIRTY" if ($_[0] == 30);
  return "FORTY" if ($_[0] == 40);
  return "FIFTY" if ($_[0] == 50);
  return "SIXTY" if ($_[0] == 60);
  return "SEVENTY" if ($_[0] == 70);
  return "EIGHTY" if ($_[0] == 80);
  return "NINETY" if ($_[0] == 90);
  return "HUNDRED" if ($_[0] == 100);
  return (trans($_[0]-($_[0] % 10)).trans($_[0] % 10)) if ($_[0] < 100);
}

for $a (0..20) {
  for $b ($a..20) {
    next if ($a+$b > 100);
print STDERR "$a $b\n";
    unlink "temp";
    open FHAND, ">temp";
    print FHAND trans($a);
    print FHAND " ";
    print FHAND trans($b);
    print FHAND "\n";
    print FHAND trans($a+$b);
    print FHAND "\n";
    close FHAND;
    @foo = `./cryptsum.pl < temp`;
    if (scalar(@foo) != 0) {
      print join(" ",scalar(@foo),trans($a),"+",trans($b),"=",trans($a+$b));
      print "\n";
    }
  }
}
