file got weirdly truncated, here is the rest of the program