i/p check
error check
inner check implemented
winner func
split func
error correction