by@kurgm
AC
:for i in range(51) let l=getline(i) call setline(i,!(float2nr(sqrt(1+64*(l[0]*16+l[1]*8+l[2]*4+l[3]*2+l[4])+l[5]*32+l[6]*16+l[7]*8)*99)%99)) endfor ZZ
:for i in range(51)<NL>let l=getline(i)<NL>call setline(i,!(float2nr(sqrt(1+64*(l[0]*16+l[1]*8+l[2]*4+l[3]*2+l[4])+l[5]*32+l[6]*16+l[7]*8)*99)%99))<NL>endfor<NL>ZZ<NL>
01001011 00010010 11111101 00000110 10110011 11101000 10101011 11101110 00100100 11001111 01001110 10111110 01101100 01111000 00010001 01110111 11010010 00001111 00011000 01010110 00001010 01000101 01111110 00000001 00101101 11010011 11000011 01000010 00000000 00100100 11000101 00001000 11011001 01101001 00010101 10100110 10011001 11101010 01111001 10001000 10111000 00110111 00111110 00100100 00000011 00011100 11100111 01011011 11101101 10110001
0 0 1 1 0 0 1 0 1 0 1 1 0 1 0 0 1 1 0 0 1 0 0 1 1 0 0 1 1 1 0 0 0 1 1 0 1 0 0 1 0 1 0 1 1 1 1 1 0 0