test.input revision 1.1.1.1
1^alpha:0123456789 ~!@#$%^&*(){}[]':;"<>,./?\+=_-`@alpha@ 2^digit:abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ ~!@#$%^&*(){}[]':;"<>,./?\+=_-`@digit@ 3^alnum:~!@#$%^&*(){}[]':;"<>,./?\+=_-`@alnum@ 4^upper:abcdefghijklmnopqrstuvwxyz0123456789 ~!@#$%^&*(){}[]':;"<>,./?\+=_-`@upper@ 5^lower:ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEF ~!@#$%^&*(){}[]':;"<>,./?\+=_-`@lower@ 6^space:abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEF~!@#$%^&*(){}[]':;"<>,./?\+=_-`@space@ 7^blank:abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEF~!@#$%^&*(){}[]':;"<>,./?\+=_-`@blank@ 8^punct:abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEF Z@punct@ 9^cntrl:abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEF~!@#$%^&*(){}[]':;"<>,./?\+=_-`@cntrl@ 10^xdigit:ghijklmnopqrstuvwxyzGHIJKLMNOPQRSTUVWXYZ ~!@#$%^&*(){}[]':;"<>,./?\+=_-`@xdigit@ 11a-d:abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ@a-d@ 12l-xyz:abcdefghijklmnopqrstuvw@l-xyz@ 13abcd-bc:aaaaddddaaaa@abcd-bc@ 14abcde-b-c:aaaaddddeeee@abcde-b-c@ 15^XY-^XYZ:ZZZZZZZZZZZ@^XY-^XYZ@ 16a+d:abc0123xyz789@a+d@ 17a-u+Q:abcQQQQxyz@a-u+Q@ 18ia:AaAa@ia@ 19iabc:ABCabcAbCaBc@iabc@ 20ia-c:ABCabcAbCaBc@ia-c@ 21check-a:a@ 22dot-all-1:XXX junk 23 junk 24 junk 25 @dot-all-1@ 26x1:abaabb@x1@ 27x2:abaabb@x2@ 28