procedure Gnat.Io.P is S:String:="-rwxrwxrwx";begin for I in 0..511 Loop Put(0);Put(I/64);Put(I/8 Mod 8);Put(I mod 8);Put(" is ");for J in 1..10 loop Put(S(J**(I/(2**(10-J))mod 2)));end loop;New_Line;end loop;end;

Note that non-ascii characters in the above source code will be escaped (such as \x9f).