200000 11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 677725855 965805741 61580392 676285860 504035290 497478606 429567647 472906088 704436256 817550479 980936785 702229468 839471784 515440785 892853316 903453781 471102480 26537266 339368739 775139518 944978252 277484850 385177329 496932736 727168274 52670890 911933548 60567637 587167419 580986803 17373644 506393429 969362709 307058815 528830899 554263664 836033508 830253172 965721494 900428598 408570647 724105119 26585979 142568096 647800405 742774531 252779854 294707775 880044592 212784362 965285305 408883376 665162134 145469789 118157493 49512102 453067879 216072224 660497263 849928131 572122372 162896736 334905067 668601452 97454529 34318329 879240175 331674744 123152077 524244158 171227602 797553558 906316668 634416096 252368927 841457544 94814449 611618041 538354197 966688593 591695050 718479644 593680816 869154896 1343393 603508867 807405311 235856663 628890259 549730094 360994749 693552316 739118448 198644712 848843765 829024342 364669312 368392928 328505384 709919435 162030762 29716817 830585700 154380994 409971058 999134091 32459113 923275516 547904750 652417956 927647948 454606688 809870458 627483179 923490163 121739948 278641292 114214637 343565161 249589291 605491523 227319290 520390054 472398199 752088091 666833540 703972863 866727971 864776826 780001277 952835343 419905281 383390924 136951393 947783445 409028984 526972077 507803170 275432183 734585861 203624237 45917622 232135907 714550002 494710451 239153668 997253318 807986824 892133103 407316318 579861331 177181165 616332599 140906446 453467921 644156550 1298318 708444506 537000362 157765502 683752223 577138310 395204805 395785507 742749657 225891562 24260247 731631137 617191795 767150257 121132963 937710498 763933368 986954431 245051321 366823962 787645513 320303804 212094451 995154735 142346813 220490507 541474514 338795758 261463631 520790554 794394343 680075992 605707283 718630752 76894606 192129172 50432127 383550512 419175409 835430175 679059417 249318877 237096267 930204660 488439538 412136801 135121774 699313779 569929125 402862818 290972990 516348767 473296494 235979702 642195299 109722858 365130025 456083357 381408749 793084501 983097201 668652790 814437596 168117446 307686878 434700777 689322646 820779294 315377554 760280246 595963354 967842580 710980428 204786270 933771733 567159316 199146742 349595598 762388470 686317691 59948665 180262458 166980294 900779296 499736642 600215794 9620536 628833803 352930701 66505191 237574616 388209897 954736903 639619015 485155443 720157323 540759600 707194533 936915506 350167853 508368380 655875865 391218527 150920650 933534054 695846399 566477382 336120459 450763348 165717547 783518997 984213986 878014237 783796694 162323047 609506352 471645829 163228100 57432888 528369387 136311488 755416834 706900913 867097348 373269381 192289443 604081878 950877329 39675829 529100277 852520788 799999307 523015574 595676806 816668726 77477314 235795845 836194300 656008199 888824029 709563775 405081125 997017904 6889975 257470633 972795466 521174512 596351964 539812413 157253917 695868754 127309532 843542567 736111867 704758522 414149784 622520707 737911751 248589038 744303346 470691182 880947956 420512894 502253814 332396963 896184304 210766615 630503507 977808014 628831638 138885134 810320182 913968613 390540411 934028067 941173428 521470442 543006412 525363323 861478504 739982704 186654828 870598914 29232145 509728977 84171132 496058948 466995822 468482053 370261358 697089061 709178815 405992680 54052335 75470338 221679821 550886906 859595385 467529295 824926086 789843185 82565240 573321123 666401206 216130095 433628987 162028687 756817427 494415782 99221704 778355815 686076899 47529058 41541896 320667763 492859929 415666862 10010926 676497151 884596313 31938431 245303713 769600209 171753874 735106238 252490660 241742924 938917585 589590854 283714565 505692769 576037271 910397418 45929660 338047984 955731540 936153833 567564421 803366434 770879538 7900052 972017246 977618172 296176742 669733723 527174871 157371995 116123051 314930559 5244141 514003920 283372490 189801344 981206363 161865214 581190393 155036330 108027043 190081154 610773484 325275938 543212010 556346719 5637896 491217460 626339994 322644383 156222230 442164605 282647012 947440979 769744672 541458279 792044119 74972496 182817023 989663803 959595496 334453810 604218567 643535469 389122436 20346954 70692473 665228868 290354567 346601531 732246464 768398414 478931344 230468302 137422305 382093186 945373049 386028362 343854720 330679628 925496611 745246017 936953095 869494866 293281269 221886781 812124225 721898212 390621536 261091718 823294474 310168951 452691467 333333980 405892284 241440143 972134975 742162406 376827049 320117015 78532684 140375339 8641268 85264179 249171916 81831890 542595881 114153916 697005439 419461262 37168717 593678469 696724959 359086576 71547326 915333242 659221322 148822442 260179048 551865006 162881076 713712761 476566903 692934645 241969930 640860953 600404602 696548508 183265259 960862822 562371522 112869564 552241648 276821103 427304728 863672758 701565416 199655651 570014384 309815288 542156477 55498758 507502838 491283115 446547341 158559751 954687264 899689982 754976402 538439401 597376099 933572203 30912518 694742847 468743245 646516410 143912131 899754688 315463018 25396471 537698559 112718715 374627219 155065734 129334158 87352125 981912993 689676084 478073704 621539889 734136779 362909062 698762426 916648954 846668377 296841765 26192152 347464097 301657098 139074567 261842746 157452692 928810415 775521063 514240483 812763784 719123885 829580013 407935132 899777679 803681108 533773036 887437744 434715868 999656092 127125364 556461442 393538797 190367601 336685448 793633958 702877373 647245314 665740379 815971711 166488008 821317760 960474164 843415967 387956363 437385423 788375315 874093579 407742545 675988186 560965462 984257688 344698254 722449001 965194797 538309012 788809196 131698245 626631574 498032996 123683997 366618830 985429128 586549868 380623996 793276364 453639740 673015676 645250121 543306377 893331600 50787046 619978740 106516208 958891423 229184053 579683520 222984279 715613305 729471786 785999813 307250973 335973331 206345162 473111983 146627704 171601999 794227306 686320720 933389098 212774464 465815492 260733522 694382454 910606221 623949843 898661316 593235649 542512246 176234494 622364040 437330061 448706276 728056966 933959468 413996253 929284396 478640236 62152094 570034618 971085722 336497820 158824485 479424376 452987948 100733405 983445817 458295089 760773815 94712478 496533874 302890564 388735534 437242414 984866036 104437606 623322729 243304991 118615510 893658304 868255794 174276839 709021083 585545006 503635920 849788038 638540348 666378268 40440543 4983320 365583560 928404967 188699057 104116876 832865589 387557630 47642216 211652139 94307861 734734716 764654452 309884843 300577085 177733789 123807921 901609999 557611143 553230832 276546276 329660394 49944441 550789347 789564050 144726889 187828082 266861345 385427482 266533286 32268955 946920364 178742904 664500499 415963552 776431304 158361498 998161512 549668112 247720136 100281008 636669529 743595197 551960804 528630722 457104406 632784822 622747117 524942018 8622984 768345367 886859528 611909268 3054626 949163860 998471966 838824637 379259739 527129566 952696911 536234570 602859866 393771477 615694575 303356544 705056933 231227519 686756152 530715009 316100201 533290355 75408421 326121914 455674477 569774978 554339838 382368651 483185808 984964032 536404504 347307618 803874999 773875360 119609133 616077031 483080777 334278677 75168099 494069824 85999763 1397191 653921947 639793565 395334153 617045385 98183134 256020698 718619296 20505713 194528877 824464753 975519370 806712161 372485244 381932696 28570086 53496980 802442162 597874148 889841368 715126392 13016266 467297266 145498233 941885950 813467133 97634786 22790361 818961290 257206766 716627827 690951552 690196524 138247300 318955701 914660996 835318450 183796115 201960951 432769264 619444134 837805236 291251774 728338947 101827242 956012630 715905213 128781953 680764471 898444227 333699500 319584099 152508400 748846207 55486211 198277715 459455901 798472928 874608216 937073604 573573256 885995047 467981114 281724859 171064426 473725244 240320672 722764315 91246794 290484997 12589655 363978692 183974697 366301131 660631913 866100995 370656050 901495192 894397139 58455026 710505020 208917296 488932168 645014750 449185684 885810416 301542979 181358529 622253155 487471049 487702909 946295159 200700821 210181705 630558902 495642553 45410559 592740738 195280781 485909499 782131242 42540013 546019878 638657591 194744206 741873542 931923356 86289200 770099317 213059337 234443272 398434615 183966496 463005421 254309024 853239434 981707743 748923072 978619526 825571941 834556470 26908495 292513202 410339457 510551839 452191987 828927588 611759168 820582917 814828684 889628797 846373565 604335936 790090474 79560855 492576073 552631897 630971603 997161610 122291769 667184464 573380682 676472248 751486751 696180827 254964985 807450191 740901578 617223800 904059288 702355445 569725148 557406473 427473332 479251549 659787227 188109655 650281437 560497406 583598848 752121780 914292950 21988751 44347660 334161819 628175781 666763548 148033106 836420573 890962759 265459173 572758439 325726140 326004423 628361937 200665663 881879787 960627311 191579386 836040915 662563658 717417166 493042471 517030598 457567869 715054271 676415981 17196798 286789327 845692940 827921047 756076663 711754457 698293797 338443517 864214811 230477359 476962577 745686718 695836930 86967798 423732446 467685647 478253500 660331684 109102235 126848584 740081744 640414951 711165221 791751576 621349496 869102776 799053794 987059600 430353640 744829443 602418067 657227942 350059247 961351314 714608947 384957880 902863903 788568880 86012493 273736147 632666285 602959935 283675157 577445098 477466040 536922278 375766058 166690431 244765933 563113111 81249931 688630949 175852041 341641987 116215755 944151316 528562914 595896159 375617275 640490269 158608143 936309995 246276297 895326542 671778914 322611894 535008668 178568315 133042121 139271268 430147563 255818455 266106112 482542517 602759443 180864651 295623238 994297336 384784244 728356622 79483679 990845983 123141771 761966366 153824446 836830407 440713443 710787865 59872826 102118584 916654112 597158200 972419946 20432336 826841316 516359408 938395433 321156691 724307872 598729990 884254150 870218643 727685586 820892044 610879757 468976828 402363458 182550875 966218095 875350241 969863743 686671828 878005928 271170692 995552257 280789905 38911849 645204470 778048373 840352332 389965156 512927134 209964636 982793536 772744676 943260470 326126405 844007107 867773196 435208021 579925126 375522966 929140519 290217968 123033499 51387367 8439057 577335211 595702016 54613358 181449113 217885665 37903722 342651372 664546042 843257111 39472881 947768560 669497850 982052873 943643720 935988376 589715426 6267413 573325955 241220207 114317522 860095222 807700550 170909663 483395011 773195767 433191605 99416444 168822663 621789707 677269837 159348055 738391961 35096648 260417804 256987701 473700880 868229929 116444867 958162323 578461033 328295627 274822626 859648200 819857078 393084180 946410461 501535098 537458098 68921378 174679675 909320474 545744440 152605848 31564432 175035345 788549189 546966223 574671008 404466664 842132120 64672002 848120844 732046429 333432895 996145862 701276961 183355024 759877054 961933987 534269062 414158389 776570418 91343062 943809948 971476176 291377373 209853267 148876479 667773924 328035306 521167038 115930969 694270658 783884167 460523537 655857181 156382919 181733628 569520240 175991774 256874148 668412971 933205315 293680654 547781177 991233984 759586323 655457571 311350198 116311849 288658329 867704422 928234332 49946153 194007593 706600285 40794111 567653843 961875068 971568112 464739476 376255478 903441682 200187117 949119349 408704587 648388652 129973534 116095169 320220834 311547798 355939935 482917719 735271344 177264366 917516935 313996827 876275657 875483996 826014753 567736958 149768714 255656926 595431941 517600835 490388963 71742077 781000732 654535647 347325990 504437362 589099195 452741931 809802541 516594843 836198172 310388826 618418144 547570696 993783835 803341858 885924577 64331783 761461484 336227784 249528124 138437228 712102517 337436072 545303068 698028993 809806930 31087184 985486574 679256164 16090837 156880319 692873422 24175714 197889080 449411862 368283024 884787776 713605710 901205009 218320961 727082012 256418962 508347262 892575816 847492983 889817476 140323112 884211284 688798626 120961014 724356685 737511407 31098501 75083339 940352915 601463767 385149354 16760886 865158305 42732745 62316112 661845381 656077728 188111272 838971983 650547877 852785301 300203664 336372167 251619705 570654026 234294889 950617360 606409742 696611221 105958016 25340347 575629113 799231430 703226025 236312450 955094281 508352892 945696232 325696395 658620886 571206468 365177396 192763375 867849919 551225131 890472010 306950372 542915005 3755977 228884523 65643063 572790746 140371301 849939704 329980877 284436975 222396042 675597917 78272139 328266635 77308984 974329641 123898880 750055010 349114029 996191093 389989046 68357063 413632252 704493558 235250347 662380633 981075726 175764994 742904326 697404131 738735057 780905800 666659551 298159952 900832658 938668762 546861047 654091318 628162442 433907912 542517338 50957757 977030241 188286477 132089246 254780368 712696462 162929744 477282110 387916091 326411096 152559014 792732034 810107360 83236250 409227520 869341774 248681659 796579051 651812998 399570378 792563498 654885998 727984652 394642332 896803834 506046790 906653618 746475866 930011867 298730505 218345709 988875606 10598098 423835723 120567487 359738956 242004363 873233579 759559865 485700084 649060680 571341660 732392629 914308439 17527469 374557055 352054365 829521929 296609474 730714379 876682196 563143526 77883838 163061311 384735652 770999788 960870080 184742109 186587109 672755506 27051342 648583685 858710193 863649573 860531957 65811660 487997077 313642676 995921833 458285498 326283765 993957861 976444773 79544823 549868447 270416539 971372104 68290909 425205268 639617772 472151388 3937616 668414933 495711334 907152774 848880803 101404341 523457244 58448111 433833505 535394935 540153199 476993215 713716922 977440216 862811922 879195403 443823037 235907465 425752023 869677453 311447004 83845335 924483552 269714438 297455645 246852471 311225371 220238159 76596640 219922665 966882350 781247232 298072297 235044207 694799278 858832317 326869502 832875471 486377143 692472148 360309574 853272398 55535887 165383073 60156222 537536886 796622027 889039334 251394937 105103151 620629448 371238136 236173617 247513391 840684844 165368087 790564039 117048953 623190945 888697552 71653915 82987177 296165196 95588943 972749717 467550140 267975258 952374268 620996830 424891938 736424615 39790383 967662484 288111920 101455041 802511341 366020256 579669571 370825310 685617731 810877832 351489134 871701784 933625410 311927757 378706572 150442872 361716957 588965013 224639273 727980493 81344588 518639378 188081317 132310178 181732573 698762614 818137629 578202669 458260185 582822827 18970501 123144396 633186973 888919211 676108290 738704139 466119939 614486460 409863760 610824305 387779635 700105207 631816310 560574277 924042348 358909528 273000202 497858906 21949086 944221414 616334983 683657408 220765987 395255818 571708586 842786184 979187786 595644502 721727092 53169837 379610084 3520343 143498717 911022771 170040661 43325567 70358870 569996182 597416013 587743732 537980800 121029742 721531306 932756016 49159769 657590053 827117184 972875845 742133155 152130132 151610387 346152092 419830424 997122327 17962260 810284470 277279450 108593791 724217998 43695603 908163124 153125210 423557393 63847204 358831411 620719256 204144118 22250768 123831685 986585528 748662488 9977693 311960737 164988533 496423100 771223802 457810111 553306040 854620949 225567084 641291895 992279336 459671059 13027791 46749314 398479781 696526977 763929696 670333040 151182776 36740025 357907656 995143560 797630166 831656228 942208636 897229668 907781450 55680160 498745938 565793620 393602518 254654173 44813253 409175460 929309590 202955748 605038603 198068321 68246742 612683721 158327504 417705985 164555186 984694809 186263450 996513699 451967316 462776718 926927288 870361283 478364610 923648933 950111996 822946470 846997174 146455418 408487328 30970850 909048588 598260023 588830294 909891596 965978750 349890753 639766102 295237857 262703497 931147288 43525533 306094057 901755444 935643782 881325064 941428117 654343378 89286859 871397906 319550320 184807073 583153704 204258614 8390601 67764443 414124550 520164840 871928340 400390886 11057879 442341064 984943255 247716122 881638363 530448143 577125991 123132198 897673249 534360964 330802573 909344988 978840116 527263948 891618029 361157614 495621359 24177507 869677481 584414570 723166422 181916439 844375377 621040812 241503919 329905186 717634862 331027654 590045982 136791683 831705481 502185000 852891543 889640246 376635409 7832345 124573731 38262527 406136957 912425110 874026285 796759366 674521071 765625081 241347497 80782393 766076697 777174899 887163583 62704835 76515056 510527886 948714897 200503270 162625450 101007776 569924428 12150975 117394604 772694182 417382758 970765454 795576988 483753631 159626144 743673157 407345976 860357395 10739806 346551385 760423439 901985758 617763348 795131963 651124099 418348040 368977535 45320129 429412646 872536182 260819590 264516423 681231097 988867182 620041151 803302032 983239129 961566297 329403737 34380808 523417617 874169446 755839195 565552928 23435701 12826427 982280900 30962247 56219621 256270433 678716592 27483848 196580497 214621047 749129624 73847703 576332260 443896359 393132437 85353744 229783512 74725887 598988686 446510322 633189757 759346361 100126232 992859535 989261997 578263488 131828763 709460360 628605424 322131973 256049912 921121741 992094188 766018646 76944118 964269999 33414533 399428709 830553960 787903475 735505191 643640456 930576445 658555009 533392609 271626880 751307376 474205803 674838894 501031530 121983339 996160558 744197330 104182186 406564191 126489894 479990541 461202334 172256998 410104273 781085361 509804196 888110490 161561341 528977370 5719911 39546319 901061426 874566203 540735574 498114076 44856919 611154679 988687232 872680699 762959164 442641705 610636558 679600905 243331745 543846038 71851467 524978459 652180884 811015939 37933934 646798274 930229234 951288965 342306640 131056005 186367793 614287882 840003207 998688204 245905014 109931053 990367219 376057499 679304253 195299831 914269506 848341186 979471636 923064501 595820265 640915329 935499628 300260973 872430362 721735145 70942355 358093134 844170089 376247415 762938727 562075878 394960096 752190194 33567944 787537399 835672986 605168295 905124663 766859827 486338873 62066643 820591912 521587579 431105219 956018661 417003900 89453239 775085634 40812765 71413468 120555464 143469733 380903575 542141686 946346550 319286216 884889516 830516938 536705245 791757434 970319037 444267774 486359890 66629677 316554751 46383447 778590744 759125951 748093429 400568659 717237006 806541069 224007951 982975475 894318632 903899443 699086443 17698035 892499314 334427623 319884303 961071423 963165578 538059283 732974276 191302951 226180249 151959418 206331394 339921635 597087829 264638742 527885198 23334851 592243911 100973889 933217820 278138751 684463335 698623521 464797384 616648127 961124684 601747287 81275031 979260153 278987154 853697032 579962566 233949064 331144761 52858680 148413322 451351251 838474572 847242590 520257702 512929372 313188050 725566094 321740063 291442315 265535700 469160837 242780609 224742174 592795436 84813231 153594744 646446209 17711452 804474319 130123942 479563274 667663104 670124695 277786654 117678465 101549266 723116036 667863667 783950556 824921705 21715568 567346917 522333983 385109116 99099666 618292950 153959967 213910704 570617241 982316107 227962468 144010106 624821373 626662732 367164288 504834858 446898883 309236130 710996382 623819724 851167695 947702978 834530881 504541965 523564831 553039346 238809415 166479196 154144357 274094760 896039203 262905234 148937937 851849672 928077952 795143134 3246 987085829 493397405 833221971 48045087 553252035 742747526 933218518 462323508 366937704 413951929 789874118 13211995 982645961 30478008 485258179 460358999 32853798 338841145 543315708 227185638 59704963 31708537 537703337 912558975 435222996 491136865 37885876 513067977 225234497 263866640 259264752 780305137 435222219 828090586 969956839 729846656 507279452 330157293 791151642 491641605 961182447 269236958 414731970 334060932 784259941 964958318 520938019 759511039 434209883 76296185 410030989 225360115 276008453 69237834 127583191 66410984 929395647 232751368 394146472 799925793 739142731 260256926 666706896 336355367 8071566 244176843 923381029 46321459 358210336 245789736 186894503 691159837 863983042 680455316 994246198 702175396 780405358 788527318 56411745 361456364 377764691 579746475 676494428 199351395 515415290 901035087 830517802 266346041 555334221 641471667 853804224 445717653 86981498 881168636 515865899 261329763 397638512 299220688 196395625 416627454 556525277 321730024 294625422 897982963 990266837 579505588 404776548 64130040 341122619 744587771 635767065 679168400 108629492 404960963 684554078 740125299 79375986 105900784 923168545 957334842 729555839 701428985 307373822 339523954 76845223 298409693 469232372 441854208 730602691 576131827 136228818 755764036 622115754 483385493 478943988 971318718 228341760 727907533 511889193 424129795 605097443 533689809 352347101 58816453 842824939 25038828 871411301 198399871 973540783 976270359 279786841 918777630 681770938 549859265 308911332 47280104 318515426 923693646 142748387 143264128 413103815 22708822 712019119 331835280 848707198 842731904 246185449 289452811 338702797 292856685 665133349 6414441 185609795 6738550 797641908 421413335 583619845 421468211 604522511 833627743 962884092 881939077 228736228 490236529 678231887 861358807 224618122 846112844 865731208 173556015 372198054 620451647 487030904 102987256 159859780 233293255 706925053 871511881 437805074 493230449 336526318 504872485 207358031 288623434 414254850 908734937 318852911 660130919 108806529 25506647 303006375 889346104 326923254 22553571 21232489 347102393 487956943 772899583 393936377 302117933 622591773 410052635 240149323 604637091 576596034 480340184 474642194 350319857 877895119 425804389 42587234 537812098 324664081 644361466 660047200 332988771 971526099 345933489 61889714 405846723 162387412 776151156 469483305 122023418 56201888 930513912 946655543 325309386 333031565 963016227 613734711 176219804 819718768 338230662 37449237 567494704 70224239 428904330 299201592 378606401 559457909 558524361 345417585 809783179 101430524 548571304 209459402 309142969 225122424 68544575 755492470 823900289 786908024 538665128 645385398 931868698 712868042 216438498 122795793 149419330 476051387 122049902 790906653 675116668 637952125 169333049 439866746 604909358 333397019 929685769 516551563 83964453 203123806 161510419 113254999 33396676 795994688 170716864 583115162 814999053 268782101 581583311 627096503 442148910 280079261 280482852 408340245 9339595 886676856 891637257 418898222 179262335 806285823 264312551 497291926 258542353 219837828 98952235 540837917 373527951 205676151 845095080 914196835 671954028 819127067 564424187 329924543 945486049 497543405 595413593 454552684 497131200 233652455 208165172 73197900 612358693 866409323 106522274 670281407 961036066 808789964 142349888 54755323 187177162 632708480 994914487 575173476 8102319 111426732 127532954 301099357 287243443 209440042 403385905 493333947 106057417 720940096 369610798 656795609 401247260 188803656 428231444 782775173 614182263 367567811 256823803 296482399 139698725 843841179 25758645 902838086 161758746 895672894 482463505 980688976 901859820 330212015 278265760 411369452 140024077 943880908 544420479 154430030 632778415 172836560 751594657 540338649 355615107 628847819 225084430 376737380 375197339 816015525 831147344 594626843 810727137 773476417 449198929 575380474 877151632 401505894 895147420 145147362 901221890 962094510 408812485 745965432 240478507 741875212 742555631 492887301 875789218 461154470 775080183 938811544 720116656 677991429 861636151 771287410 449202097 381480265 113313590 628662678 745276416 315870416 368841533 486439328 267767273 879059162 88743626 18764218 163025225 696531233 808733848 472767087 136479558 470170503 926769662 259544107 862010997 364050261 891359652 834273659 306741999 497896172 138093981 544964762 269624693 717094457 60396678 46878831 857712439 648534169 836471741 83356076 89891505 606284 296841309 444843092 931304970 720604593 263390399 374129999 869851345 854186627 187989626 158797417 297738479 370551451 608195725 103203461 963408991 111110435 179366331 74105434 339363125 191710220 261994438 813261278 587056642 28003095 460251614 438809625 368730008 293822713 781158861 428796007 777964852 968377390 162088720 81772471 39875088 164446760 459354257 820170569 952978505 958682129 370929044 582433769 38279802 664912407 821109978 656482872 451849977 78480051 549506893 184611104 848028669 993554434 257852718 933327130 129070986 107006413 646317865 125961801 819781279 55693928 438210952 610877714 830788296 133462636 364232485 858788274 130115969 394458872 972982344 346576462 971845805 494536314 580993274 854308771 331307816 616756931 287854420 910296340 778764002 956082457 162727085 904585152 582404848 561320306 787368424 773761210 704657969 411415398 358591979 762878090 493355539 3057881 836522522 250048784 798330895 134291509 948083252 432663852 161660783 616167980 926551968 549015532 533891535 956086078 898356184 965192339 942974289 732818534 248825287 804502787 523451442 646396649 620631651 413058231 714919113 62152744 104986282 838526875 89634149 732288173 874065437 471047838 951764225 646439992 611978301 899196454 653049322 263588681 234042379 150016014 574383645 767235537 235515831 931347934 505896079 922101200 534847718 699012755 353539277 34224010 375466943 229750943 236678132 154016114 366036530 47280114 611962249 607795087 731618258 367422956 94298737 117775113 753517744 252592997 698092305 715890628 287795604 784727175 760333315 418584976 196037262 801093078 476126233 70600812 257942649 857977792 35915299 346624965 904448094 954890254 428639549 141632970 791179808 953409353 932083278 347902432 752650135 844246422 387685885 401526132 94516625 772184012 164452920 451079221 549654420 34370394 294439205 247279279 264215675 61773447 787508670 675650749 903610041 799357815 114962131 628862373 838261978 353740088 157570310 530677761 707146340 987259878 532728167 29260639 113477215 967370116 942070245 793656302 351309205 408274305 576968781 902176066 965468029 964268601 810091701 291590439 808504740 165257025 714859510 594032115 526205098 451947475 254556333 629029463 369116259 490723531 446545978 774266769 736909800 629374056 703527270 249710670 637486018 720169781 447179435 856172082 961264822 245496021 587054295 867497364 710660989 125253352 69960310 17271340 179688539 224167708 9654568 790422226 202472495 658970182 919700187 138703114 645202235 558921039 924302016 506967937 6146778 36859529 898980578 436424028 345888593 137769592 234992292 50303567 309534379 325685578 466310442 459327716 443292701 40768461 530058853 412683004 527294119 730641810 514189799 37237759 453319505 122498828 688275555 112999642 600417753 683246397 16008211 664919806 617108898 468217148 141995289 323376116 795722504 995264348 357537055 205452413 890059276 136317321 979931186 599540937 487240310 172252148 912567642 173560398 529255549 533553063 172851282 437898053 542005025 114837704 387798389 8877211 862688396 367891990 983882819 24031213 253249722 857807749 948813446 758113970 730928297 516407829 479595841 829497266 658882404 686372387 652532872 23821673 51375677 704440986 273716683 406786779 548094892 900848022 518897590 405988465 946166664 874771515 964369038 411370970 37083906 903445791 638818852 574670535 427476472 838259129 810752712 686574428 218462455 291237200 808218459 856783720 76673869 722644810 873939046 144504426 372194119 863538475 534688083 113757456 815863863 207627485 646954263 757522910 792536592 683028502 587836576 164493707 925561374 576429891 777410736 835855086 496615317 960265520 270288590 424944868 674038984 59598603 692969957 710031513 627878273 305156133 83001114 66084253 485459354 481844655 778942205 298836496 115540279 284065102 189269266 764545939 166726210 988792970 622997108 470164690 266852230 665262543 228904700 171678972 987229874 250134699 734888257 800332074 855615856 621334527 953865150 423327000 211315475 592656641 533371708 621919393 282978219 370226794 72845352 338856156 102745610 543795327 329776727 375417744 640118189 209875982 226017181 696827840 877321932 560598192 441689896 830058838 705828623 813732012 58729123 92925528 183035378 644558808 581534658 103328777 440310723 607518443 225202068 482446501 920913967 732038883 358491491 598550547 63135934 347956418 600355283 277734991 253146717 899774136 738203982 360740549 278246959 729006522 16647235 794549190 405036882 243284632 84222145 845090683 212120729 557693270 585291552 846403424 549194881 57644103 994851349 106273098 821247368 461944405 749711539 103424223 162405726 878346244 724173957 304443956 397004839 501463209 472077979 349799216 667890143 703894154 34899696 868794411 932607833 289090153 533550017 203540409 146654976 351013021 798225856 861583207 387760646 36316691 472728759 31171534 212814329 88954975 187844427 890192755 734353266 177272296 81123307 330935121 943254525 797793440 895013276 458492063 592738160 62268513 594751929 625923282 32647640 493621060 127760629 21800750 196752237 615644276 576548310 979204161 283921007 968802449 584143655 880583103 199895051 281987336 65690612 541290899 28330789 381006830 503226183 565022369 89931625 84547190 926817259 248113090 930197491 120498772 347446264 89744800 59155626 242884044 209479639 576291506 195968102 563713662 618118730 957023811 749607525 448728092 440019216 765319724 876795185 822228076 863041939 944227873 711737187 333950683 392028928 416330211 121265276 235765747 137841492 440899341 751822248 697508557 403891508 606595772 265279526 724903924 727422133 888903280 827634295 641159098 558380936 162007881 950103053 349886931 78174708 830916304 457655010 824588036 745530598 548827084 458444749 565393499 60179242 335653234 61876446 837943264 829749098 998392983 770685726 254555711 196382563 367887067 873804256 287965671 222381624 492744967 35692647 26758868 984112375 547730119 384095952 2271505 504516116 149588252 774249590 954137666 596096437 330659834 876832043 609021401 429347224 146693440 940524525 761010149 955359256 142087804 238916936 728716303 214075404 911291499 697189287 713803882 138338455 60554052 297807806 576776810 406049325 26261337 774357827 308010124 428527992 987309143 905715950 550513295 158013352 518159253 534360592 495121552 546740831 256064034 857379868 137503943 164016225 375678586 816208645 680648856 356116513 634772737 786375801 684621394 553941166 237376342 696608969 4973364 364816435 574683137 187058804 807267675 274004017 296614829 586904613 286794278 388949656 391078930 527611307 469770537 126753569 345181414 829415667 931034869 227734503 571661246 777573444 479821966 244765990 9755363 731747816 56614731 353760267 990000813 310491708 977385414 401089115 819260409 21572323 921712674 947861867 197219630 792093762 611733420 689758350 940136754 237090168 869414416 988144833 482251603 475012653 747061368 844033570 875815260 387930580 731553214 193955800 8444724 814652393 244995148 452324502 91501338 785841755 196704253 3398322 171223151 389972349 319205647 7542928 737302144 897319815 229040867 341531517 999423463 970913033 258989183 499206849 110679327 985133706 541456599 555467265 272456440 365208902 234039922 993133905 305143908 490414963 49268743 548481176 691250930 368402524 703363567 907530696 367405308 690874331 301367120 656144383 542976498 753614300 65955831 617347206 437944375 625900816 908800425 266644416 616346562 450679457 996668631 401080742 859075064 197131826 862660012 55721405 874310644 98866821 478091657 938906593 955649344 954956033 519927697 107822009 405351178 948132365 202483559 541241969 293789268 615221828 827088201 882845177 712379839 223197801 785125816 82208342 3853661 973585892 26243448 405448659 147555832 991385429 732063178 683660790 853872447 676223990 55144613 322450601 51638828 921165806 82421584 956884797 846000047 387049577 719690393 371416308 833211884 540586954 851997995 470284058 190848465 642152281 553008651 164620780 265351364 955327181 984132704 14873969 420135719 234716293 825682921 203580391 433421516 203430408 177320450 448760361 474376185 565013662 35025466 832108685 192370545 747071403 96188391 471033001 231230278 96657977 743670599 204634518 981745721 650555199 614434347 280109633 782762403 450821673 594112624 78518184 381363239 132165357 730887169 477597217 602663269 311320853 403746430 913472197 825609388 922020904 164250730 339690752 839203229 81042798 940343533 926612066 33671580 790389568 400416183 689319788 783310061 555739899 63256635 728703038 558057106 617377279 363430974 755590327 452092731 906595135 154035308 970169399 287035775 54418523 538718685 623270715 727435152 517417255 752617349 787243192 675142046 511943086 109701453 180161865 725902673 72423269 340051503 188218716 444072860 213669665 789338352 708162589 659232561 57075648 737194101 204091502 968474981 400570124 326154792 366198430 184254344 264031866 329399055 106067764 601781726 750025850 675089697 503950475 891955590 400359523 300376253 544953043 47323485 748770622 82386913 803779618 927437728 613569396 690732374 651501539 436837719 807304922 893891852 417634245 603003082 353863596 734739033 543564709 848851171 356591401 545919729 457216376 84321930 207061465 794796901 339660348 16261602 164547184 579936145 872699047 989909352 790040956 437522792 863454397 343026775 485341620 181350237 961013657 997043642 422026006 913722038 321572776 494945175 171114509 365796906 358358941 468779260 155657293 693036091 332369097 677392725 809982911 366485595 34081673 810940211 257612571 938139711 987062349 958065942 58251949 849927885 764997386 837365161 157498850 792345559 11405077 854584864 486928188 726401575 196401980 825865408 792083473 823346191 210061530 632194204 649466922 707678577 612389697 652329883 763309039 662457255 145437804 748239636 102284702 36550250 844138995 524220040 369676307 734351989 782029501 526657120 775234349 813216561 488796223 315665057 215673982 786469114 49515846 945742801 332042451 850986444 49224930 622502520 423984931 678599330 680148803 26498318 158727838 537536360 942003091 29497265 722296073 488253535 904838896 926553313 476670147 514224619 275175199 3976339 21580572 861077127 76762743 897059642 253519632 56541310 37969144 859221297 848280924 834488605 781393070 508035486 912715470 865231369 975118277 861648772 3582595 245945711 842783848 791518854 959571012 526323207 756379061 682618540 544664985 955700773 310081589 917909457 499105392 834530246 702095734 428420091 194739824 482465650 529717435 533699485 398017520 316834270 879947361 244017970 275004817 938848022 135517411 178358531 502134910 440461990 422263436 897328387 323136697 740167243 458429610 178642019 844599566 760545545 536642401 419397962 106660912 37438356 647963178 423217490 935698879 966606983 48441747 59957851 140941696 116164457 937045706 328690698 294935169 398128929 744352522 662423050 888611910 630777276 576900313 89674677 246296994 18905426 203556682 863012838 577561642 369578280 906891589 985021689 161237463 461191539 899603424 129198607 319404501 853992091 271147099 702215801 279001028 993367096 692556454 963958445 286576255 531994271 748934742 473231931 369110847 380794034 309033753 122930980 461136933 148543173 806530560 169856351 835601169 761638454 500593985 775423670 617672120 706004759 777781877 385226769 886295455 744111957 483433373 603648016 438192468 155376574 953420300 377945635 420013227 830225117 45262329 213578189 757772952 908362602 488440155 818151999 785197119 517963351 255066890 825978307 997978900 758645188 421989710 636872210 373946486 159727506 807548533 27861020 861689186 774298308 957217618 751266210 952073466 184892501 485988353 372711047 489148639 214785236 376474524 777362872 619403193 926915194 238239179 35445485 430739667 571403737 546013794 764175872 599674118 486927478 342932277 368705008 121848949 30161036 542796851 171773556 979344101 603763157 295414933 388616479 732766651 483247819 954795570 318008432 913921591 923870770 706706293 332214683 44578420 642256869 451344953 343532639 268859183 274473308 764788898 463540515 439149635 494839752 717208286 447031754 133297041 98945248 56521811 984955260 322518439 577850069 67199378 34510237 375853338 417503581 969793590 575549649 218577536 406421019 506109842 319044835 198911214 979717881 643330651 257026215 58229646 879872314 237863971 10779830 997712238 474851792 202125778 928874993 920470200 81179057 138677416 249406178 267980142 745590501 580051168 308246711 550167968 548934866 108696747 418498152 457969272 534979696 625503430 334719861 542665858 777100965 537080861 395886826 430227694 357652122 161754041 192965176 406492532 911896161 267250929 932803593 558878002 264075010 752162370 788248007 284829904 668206791 612689708 701057519 267590579 487108077 482499665 477449977 627172259 344138683 865173820 121431359 344850077 684758482 211963700 566724912 434491453 13535586 169953774 823819252 561021485 748560188 701965548 76927906 831486954 38054367 81805642 871527799 964470733 222529939 504135753 64529094 604653198 416443299 433033108 959146225 975974162 911175433 156369426 147991773 223844108 334663599 992855374 483994687 528451876 970290600 337052988 991848259 275481685 99648658 779826177 410842573 26677914 740582671 972716562 803211315 28335434 499397702 592825193 76792744 652478401 900227552 263349649 449655110 348597943 953712754 742380833 952625903 866690073 782645714 735116363 882472080 750189213 674578380 829638207 142783193 730440829 485402561 32098252 140221720 778082998 172587251 392499880 30448621 683683952 800900656 388072136 177347943 74919924 872321886 642122770 132710376 510255017 257187275 710418383 48037037 139005332 451273140 153197380 71752545 241008255 290094857 303451216 970238251 838328962 760049931 733337036 720480894 194993409 406048017 410684182 199687871 244569789 802504308 345264823 130850178 401720226 843647887 29073484 819297401 585449515 623896593 537218043 834711055 163723959 749520769 752622880 35916111 833650908 671795679 557788825 142897831 191342817 903961729 371999691 879494329 376305628 186508009 460341996 617758789 902117806 390333166 626353072 262713394 913333828 451609541 716982171 657371296 794473567 284788797 641639201 425295412 353773964 210215010 231083602 210093743 487707134 559483714 162127419 647369219 16289841 924486323 704867443 347172657 804607354 771829261 499017510 874168467 652511379 619963323 317806656 947328975 215370706 514181908 635171290 610812792 112998238 773114721 338378405 953447432 361876902 377884712 570044903 280728272 862270093 216601332 993079331 606613737 114512266 828517916 640826252 762078025 842799954 118270729 511028709 940212757 753568834 990093472 313416946 363870007 525176794 278101766 915662934 764289736 740262335 738303865 995543677 788990102 501993702 870818641 340584352 706461886 535886429 411041846 852905264 701682048 91518928 691252323 667333736 453857988 383848187 336715713 929374031 347338648 599827241 807174588 274723411 341593463 157984538 472380006 571179135 706513001 710541713 21362530 156637403 372853867 178403514 138689704 995037844 777571826 236569068 689869227 47933666 624764785 110928739 679347969 868638787 254843032 441155176 956277962 383778759 822286774 750706244 436658191 327330231 39310895 297188279 355622409 505299935 407725570 28868618 584353667 558096913 65865338 482252416 91891360 315285510 979798532 938719666 975965667 981677570 284762920 212214651 378041038 500416737 688511865 57961231 235661452 955602087 941736231 826110526 934399474 531166687 200838154 562388086 621463897 20127178 666413944 569568297 589293797 446302107 710365290 757295190 157176123 810101673 719525191 221429126 679234178 412188168 911289848 433609908 843005857 164921128 804307449 72710417 499777303 398709204 807040945 181069989 504845419 620090171 772214297 82867387 813013006 861580013 97699944 635890946 4927144 224986399 882908818 441706054 980291683 233691214 544316123 588101860 926787597 764167892 258034374 5984693 570605217 699691348 89789422 623168797 953442407 981291565 822413603 743979455 489593465 683590829 873273976 571773660 214192919 309176204 882529698 461251167 960796110 516228175 418182435 427425303 162738213 66815348 399200607 724054207 818889705 477645605 745323030 704145331 502917580 729840315 63815766 252474262 142318339 85288096 88800763 399979909 628109550 723093446 894321545 559710040 410523998 374612613 778266635 162900317 693643362 668459703 198781976 54637358 573690192 105867657 640007439 981298290 142193122 234255754 826225411 896530867 810199195 690246339 776539015 622241360 345499027 278848081 882101502 861666931 218568425 289450649 993768792 854032726 596834460 870111655 605245509 365252048 152056065 661368536 407080666 690180803 915214803 283082537 545369231 832105656 26373145 310954547 923975664 601275752 883534634 654433028 93038506 107324342 273349385 657770285 322363035 954557260 278889275 478609065 114485087 43077399 677437276 342984453 731152727 627270863 437445858 709203327 220467935 601655395 950237687 741307474 180077564 109000711 927037613 176215255 69144643 889258247 800965483 282037821 141683053 431055062 62611162 452872821 952959127 848635228 600377833 177727924 57118990 676052549 880774966 443109524 208050340 99401714 617183579 598101683 497000058 508797019 987714854 707415939 103652004 742086953 893929317 385419874 817715192 974422272 571945941 235587686 430530186 718200187 897583682 858100994 966797751 218409856 949823303 284068381 734667144 241620159 424144043 628883159 436290817 608934741 753280746 865807042 349048828 724580346 854921006 705052104 500282985 813820793 65482727 252060925 658892595 777655776 414947937 132882653 344125664 742621457 367415526 265718562 962880441 917264536 942117157 791094962 149699334 167132656 212716926 711163123 511777480 103514702 220387227 163903424 135824835 289724363 427769449 31343343 483153223 782491633 268306930 828558974 218008858 840468329 109008967 904017201 56352839 432996684 140268633 247989000 786363009 895771831 901868259 186656387 436268610 327558190 329218237 364959489 125498116 407676996 611656839 143425822 207729907 708759615 304295613 545612278 56396297 869761316 977585064 359613418 626463987 496733871 763057225 315119770 643402293 899560844 177821373 891587939 777102389 840552232 307912847 273380881 834770318 75168121 292693787 111630983 924923440 157574105 383069932 987886071 759670345 907113036 72188515 523925377 420670268 802683704 243175311 999997717 387303724 526092906 379468959 419518532 571651664 757618905 656335370 291202448 169005055 5608377 210957622 275039542 228831399 690177394 522743850 338183408 101711951 296918627 580985251 168476076 393635123 967794401 6023857 490955688 731121055 924906025 328639416 767968952 923977016 83084399 9159708 448251834 482239616 73790802 378203663 64555846 957954992 448064713 120731419 591616052 164019310 644519434 421480257 989232194 587027902 608170630 911495235 565278344 935280218 37695900 456942504 286901557 454999391 700014109 656116998 440578209 160591905 225608992 194806146 665642954 328240827 485850388 872522024 481862266 733498297 559060024 730454084 87586300 249028625 477254945 184369496 519349402 292699380 673058248 806007375 563334938 779696731 43303640 848284647 318083778 899019130 368715567 672562381 493321999 873079060 509600614 259419359 347227019 965401869 796004380 874088113 560490021 992389265 358788329 857326359 11240981 200630869 680216752 135251160 835944382 654830535 127295975 822514794 767965335 160941033 552218671 439498993 645167273 958769504 411158803 590855965 957264621 283654087 349748433 762062697 354950545 620020419 252434346 355185779 407942261 811138614 535098629 758971232 513749495 186893313 758804019 676306125 605449598 261466083 426890558 634262847 883754903 836160086 977304499 982798335 444661869 201612739 933605052 684683235 238588235 618005394 191671307 256797131 749570707 647787157 689300938 782208741 551568427 957113403 649775461 366250712 22275166 929801668 317311167 395967904 642126979 543187363 401215375 340992482 713944465 580863496 714074398 182185784 391943108 681174803 964144881 898167115 367460412 644181969 135364009 397642401 570863208 384226825 962733664 886399919 615224560 108158213 16567984 224283050 600541934 284806693 584635354 226590218 909681327 851840915 640760937 332892636 233386 76534648 877813333 103547372 197162259 404569861 418018750 234349559 339983155 313354421 189945961 936864776 923251377 922400116 337577547 298234642 56473196 320286933 447165367 983431178 605578548 152484077 657977561 161327103 971964809 965573348 598881664 846593532 631966602 181650732 377526095 685177850 658564364 149978381 698980024 183562570 583766506 759201058 786827062 222127920 805289056 246775951 363898239 694851910 461583104 849329826 584620375 510577035 386488555 96605113 926715146 58154737 134313165 278669179 284082647 871506238 828574408 185809969 599955020 421314985 838058868 925746780 67154242 756983195 856858188 87165074 432299666 649997890 826755792 899544212 449878602 835582753 569752694 644419660 215794354 681985302 698150983 294699294 291221461 39127525 609117070 415646903 484338783 153674187 884179277 266877821 501882488 960772830 220563058 509599431 761587593 957325637 771951810 683644007 135978354 179433441 185474554 30900441 113964242 988549822 658962820 26544351 701730622 818863309 992083132 216840946 98677221 984759931 765340971 707433582 261202333 181152054 73266720 573480252 315422953 17760880 521160088 470338674 620754631 323854598 764820210 709333351 266469220 677258184 595877385 607046032 46983710 248030166 483367331 399695792 485253137 403698374 974944133 836333815 959907600 357485072 837640184 529680017 15534109 497646799 243429778 162953570 522345431 271027641 466177148 552318767 921456571 390817857 997422298 524021123 466353405 378228954 34186074 178893582 991491867 631999989 546492326 571673199 624344869 611654159 91815278 589731023 938523042 877109712 66147443 702294922 165452984 895763017 138672172 97689516 895847546 689527794 70458912 819646701 900675404 89452410 857292812 915105681 828946149 940546415 780296133 234621304 298109361 214435241 686153109 458364168 35288479 886688196 764889532 890779645 623910030 493879966 851080231 803252492 410473103 337553596 577464890 919140563 144838880 561434582 728501641 571333814 745306434 168003640 928956860 620885844 75196430 779136424 104775913 50533513 183855871 194322892 357419597 980448354 129776480 890949068 734231724 877656226 540079890 721295739 469159316 71602346 48974030 663894087 748084555 352499785 980149093 996992670 54306627 716794732 896944924 674702656 249445135 206840998 766129751 366928510 818751571 406607962 134064665 17847765 654448323 559278106 127011030 648992295 430708539 483049728 894241972 591765968 483619684 168953311 765386669 635561968 128505822 239461307 42499671 24809507 180443524 614151693 195952817 174739811 359797035 36948701 214290687 572498498 789133080 189725815 858000307 394027094 694197743 30504950 981595786 442840098 73327447 246564223 113628053 292479113 108937279 825411408 994372397 297767248 337149810 46922997 28786800 845405970 92440043 7880050 255155837 15153279 916093491 383991191 691930362 550803445 632036 262748521 49638920 268993214 527353483 241741754 572041484 427321909 563960140 336520479 69991674 865318699 200114609 267685147 297667646 12598205 473669802 911679048 356131949 547172779 834848378 558594554 368654468 109459580 853638610 833478051 282372505 985460652 764838010 604886898 83898591 329682137 964061620 780421692 226631040 580083246 359592973 832833540 436123774 180913112 41767109 582624289 485980495 931004763 39800777 698968434 454646943 919394644 44096374 253630522 258424373 565457218 550218995 848687474 78310998 983286661 165216855 521341670 618915699 193360632 909849304 313472577 664374690 996446991 692115817 838654120 904617697 581084753 69294542 590190655 75163393 416891689 415812544 790497506 906707495 355644619 31395837 189018573 169399003 96175219 799288540 98257205 238801790 96847150 583266150 884284688 167449930 416228563 748770408 165750925 957445690 803822292 101315935 123795448 964417212 643276409 826227164 10427516 622226122 160271112 190950415 37328617 765634006 86043130 105173739 766512641 808701953 614816635 693995569 33837525 50988116 180198434 486036686 136547510 178954264 231213518 889704917 142062584 967537091 625678105 621568436 697471394 61320405 634519532 891048644 743295283 735710589 953452787 215783488 202644989 959372923 436729644 691653963 319320685 587594740 784011278 866805409 138191620 346111182 414900138 75662201 411673211 140548282 103786358 570381458 98897550 519104074 955420450 961144556 74554123 641358889 195884072 131594420 41717678 511481782 768004689 188126342 552433961 621768783 509685226 630033483 162539261 777411072 624505078 138328398 426392828 10639362 334069866 922597317 100198691 340325932 410982141 716648011 824325451 507780045 150772509 733160250 420715957 436315247 558112958 222955921 915364194 958300167 189821666 163227052 417925992 193381662 581146617 260652423 715126709 982255562 27833420 743516246 560270922 972765244 521649987 68776045 21009213 334951983 642514590 156316924 438379140 801116345 318303461 983726672 943036126 928369258 819909558 430046011 936659072 151246664 569365122 286933297 583952473 857336783 504296034 199824788 769506717 624474587 211537652 453175428 467312776 966372973 199652990 88716613 185382652 76511565 831328580 27936857 96440280 613720344 392154994 982212545 500159168 739304573 199291078 114195715 716300927 956991514 104396228 592297187 655682191 483246831 58423786 771423857 578702730 433520108 219337111 43404928 140233861 804276542 336763454 216302454 149887239 529429659 290000406 272615279 159358509 423949388 311585877 994840906 978739640 846588646 798390478 462015950 104897654 754711323 660792664 507980176 543154276 902401029 88144687 364702317 262494091 262020381 445132665 20507874 545795143 917250008 677399778 347139147 908923094 850475341 373521016 130482622 934134087 459842741 209773633 282976359 162944981 327318900 541360906 957034313 840037686 113663878 167735065 502073015 903791729 337153584 53617965 500603407 988820751 147302211 123180628 942142828 143554752 740861917 393360287 641767406 587958697 572998214 111230985 778374291 818601961 126201668 23309580 504026320 517127737 388492259 29151355 339624302 863705654 211205016 166120722 267094354 689927607 111683147 703903227 784049250 135949380 811260005 944870677 730403188 845237944 931138326 440055301 669360957 561685550 712378680 914905729 458580250 933759446 258134524 858930740 185023715 381695274 454208428 361432095 114640051 823072894 288005531 214523487 879628857 457593914 366760173 477004742 422076073 301210317 119664374 847107459 750155442 941320268 181493014 424990141 729960798 157130236 489565813 612490318 222226976 349965656 528497194 109401149 453700930 575357402 740998215 411079665 971112719 779093471 160182418 924184706 606354135 165714195 676563652 115602410 754295426 827098026 115932609 180643836 72642469 19358834 418747795 960133226 437622172 555845213 184819296 658475629 417839531 932215080 310268371 753385984 178783712 468605625 924873078 972602943 379591325 808190894 478164623 665890808 632333004 518285375 134243398 877166127 157195966 41259819 218694922 679405808 708928106 747540084 331765181 903668445 232885003 460449651 519032329 709707166 982579801 945774883 777282148 877677388 218536401 61102859 279280977 81530170 81424660 948320578 793397112 815197436 767902426 127230033 63483527 116084954 336104387 912001777 302664340 506318494 566583283 165853219 908316834 851754761 289645452 360608558 431291432 571707250 979639079 569922643 622345941 335654055 549559251 920379194 668127581 953633158 370033733 52996634 738234993 719678075 131978518 736353948 944588001 751984523 756791538 680667504 525812280 39300140 233445729 347508087 226433779 882975396 602780008 127383537 773565833 900376736 686044110 541905181 782135762 434308889 804090755 801927606 985688045 101968914 18209162 223962934 557678210 165529160 240460545 654294013 200530731 239040391 179455923 886396441 427979797 86418467 552608651 209750237 525879214 366174499 681681975 745797685 416135355 731736613 214148502 43270273 90588341 248070575 926600533 282485261 539303695 366783581 525914136 930430943 713085645 630202133 429386216 197042799 136558040 805793518 813767503 697586106 108707570 378198069 956910288 210397569 772466159 104011292 616168977 558154983 197219954 533047431 274704960 539178493 708805448 219059872 994764907 766168181 626952946 953418357 800951680 448126146 112579983 902928726 891721440 352453761 422784594 486001692 61733856 379292857 26415015 150894168 628749819 766519182 586695129 664174397 626195940 66302943 565373605 658139645 222486432 768118783 340693197 126546101 854125981 319448308 6833727 509057466 518658508 63927419 719325417 695241207 481963407 288819641 455194463 287466035 73825160 458858798 584624404 553463071 761642693 693688379 761610666 322121113 781922978 342582905 145433826 936871158 59993532 641733277 405144846 631269520 15303463 297307917 157772350 582131318 940220413 152022670 623925777 648240834 448301884 200138207 246825845 526289770 426547074 714552222 645873517 856812697 921766758 652038247 217272832 679628704 50801451 37022213 781052800 166280817 547003385 479069951 56359130 774695283 600665357 624700730 602208490 430849173 119525951 350254801 405084769 846618933 845241831 592357365 679477542 554121747 25450298 859314620 811805214 693115225 678100910 658039539 987036571 666439746 485952273 475277369 896166260 126674454 364933846 638841712 279145380 60469010 883469265 153618868 902699630 422841841 133645710 267632578 674673134 162217892 342872186 638004367 711463502 321396245 29855529 957217103 326594623 199560850 579268062 734950697 966573791 235387475 413021170 405690107 883012844 341011830 458090577 282350577 449277722 743532698 457678635 182111010 93987706 335241860 32863067 647925053 504990497 916098906 173383263 322431188 308360402 581703255 939319311 840665598 458454447 913884626 737948587 682189294 767477511 842082026 721901844 945735760 889333890 823974711 507427471 773251020 575020530 41236977 451798848 532702587 152503215 389694048 469506240 406469481 315869027 589352513 73595196 649266451 803454980 217936726 428501936 347550691 757275655 98221719 702589792 620237348 348842426 397154549 692817076 65045061 758015205 124270133 554863204 212977834 645801791 692329039 7769966 275550327 185769721 223822518 853256806 452844924 652483833 390073513 398288065 655033472 401665959 411120517 731562608 465958923 449515115 730019558 116844034 513531884 731865069 57035884 572285843 474229022 573133486 297673142 12376596 613466489 800543146 294926923 164014807 639683645 684921406 792371189 431948696 446989617 898250856 286106085 392569237 560025321 466124275 21127682 822259779 945583448 953477837 639219857 725267455 462858282 56533374 782389064 889313398 485916214 243423548 739904105 269143624 997305881 853313227 479398169 104993147 368129241 754340701 551871160 452238369 76548606 58359694 435060566 652417704 431755087 660351179 613012545 128059457 971930276 124844347 682381321 238706747 824499753 54758968 935632290 136401698 616310438 760227074 11489865 771638408 862701041 208200470 144926097 485223870 847637772 35468987 498434856 867459545 201822665 863518683 653313914 19844874 721066336 990843824 393801428 6590241 661221038 465960406 985334645 29840889 657924122 497877570 779629369 3849083 563562374 920553106 422699192 433745473 512891436 93701574 879535803 194643143 605675944 397439640 249625962 258062385 99084681 100591378 494372185 170917944 267755895 223381516 22892446 474065455 171891267 927546601 993091311 689752468 830987158 605012668 801221343 350476187 826981425 31679616 447277373 142602422 563428750 806322616 228312208 471025819 30681027 165755230 705988090 643330016 45393785 117708534 57319663 326791237 348470467 307491621 970780509 523863694 64051317 434997536 180234828 484211217 209177899 743456710 659504976 442779279 527411485 508751779 235296907 695219118 312823753 491275171 671580529 514690780 99766678 581653247 827464947 628848465 47791307 22981941 551558804 17072111 916319763 899542181 376410203 357011874 917091206 330339301 23568887 53055582 139196047 981317709 859341078 121593700 861603091 947870451 715322719 401166871 60529756 238591186 51678214 989036609 643293154 722910560 662650954 123980810 698769999 976785137 586981646 483538018 249722621 336053701 882919061 93631862 75342983 352929239 846169721 384128065 989359541 843143079 331073780 354039992 907789699 848859245 450380417 702066258 399872048 867512973 706390241 606356851 256005469 263856906 869117012 429408254 165781167 402540603 392646390 55003682 713792242 959542615 162744764 935563305 714268880 476122499 930939896 418803819 394878982 527330868 982236411 957672515 931586334 142246129 749475034 20523634 615228662 810015521 110814041 31905384 649504187 268966324 37732172 684437216 394139596 304301098 305498737 949149178 610400667 170907160 196755273 950641274 555051257 798783596 77562049 751739918 484664879 528403946 665356226 424047021 437107268 483014924 643976520 710190919 738955460 538203618 585182504 854602502 840753072 304489019 362891946 579258678 721074431 832057959 630548279 870496129 455642087 141664876 552579505 973253703 954649534 629350982 209824708 952411036 320931511 219996455 515327286 279237240 525370563 356731860 483610774 573330045 851628209 614463321 615086480 825433556 554805001 813042404 949243011 377405819 948473186 356435912 365044916 724184372 988188747 393327873 992626243 797906491 833288451 701205529 898139474 223358211 779736698 603934550 83838088 788337838 638703828 82381358 768078269 902981340 132498882 268722264 787556884 304958110 398592994 266887729 364490406 134309680 446409535 700357648 233194710 743283641 210508359 646173416 822257827 481014792 173494751 942989208 691355744 155181570 689531150 196116995 514197611 469484780 26665396 389804178 16017810 846068782 862761448 594951014 332567119 296393362 791695744 8515644 989341165 549066501 454995384 31204159 37411933 289065122 788251475 618810334 348987125 797593593 192529931 53927764 815740485 86450676 895963755 413021144 123855682 200666194 525824551 322647622 250829284 995109696 942002286 595145086 3143977 821398442 903017333 830671525 636740858 311645148 575357134 375783953 118576497 835387673 537335847 450427710 410914760 761321237 770225648 756518783 106671987 452077175 587133549 642936211 862775051 482200491 518989417 664532489 615761192 73872012 538923458 942647291 465399577 514837326 737478159 367275302 649743983 917226779 493334032 761684145 285738295 194042326 885971428 799792925 33435486 425338351 985820756 425723458 980287513 419862177 753970568 530151986 692116640 980043033 126765758 146943651 335597903 392774401 645597707 673699341 443362801 819262484 508242913 158509642 477265821 965410834 989133596 234924715 514620262 923094388 12048356 259596673 456985372 767389616 741388244 868525532 708659414 619657278 676984644 261388154 437768334 248769654 605307654 784444004 17488237 806721715 27132107 587264810 516884931 546902836 482122881 139578240 224586072 391147882 28109092 597406574 731511597 895644507 322880249 952773067 961733105 965585766 255041865 31439521 331353786 719094026 782591126 277188838 973960965 867827844 158833090 841404056 549032693 334229602 708229297 386261901 389716488 323659628 188438533 356606226 589814007 817599673 459045172 528441661 878042794 645406981 626360979 242117572 531955295 648738660 517123308 939507358 385184644 359132835 998088295 428993105 679306048 553968223 678122297 788705570 547180235 971732323 359113728 334791381 813372451 881225163 411187830 191489736 452170272 850498328 694744007 506609693 497155781 813444364 645902429 346689622 508016593 61767040 678987159 833325180 112211937 981061171 725491524 709950601 57260677 400121305 319136551 157590766 645629126 371618300 393153578 517035287 703954838 220467246 50617818 615715284 698787971 901107254 306429638 394270847 848008330 871233000 278657658 404400366 345132508 374112021 160621549 595081650 751163061 32614310 61677147 824239685 299844281 956007444 607473201 322641629 209573936 949538606 500326576 826399025 44648414 632542130 914745488 198853031 704164808 415759377 433867289 32618377 617365163 585446731 28977217 955727858 520623561 278292071 685742180 231776718 852400340 889305472 924845906 68137884 692854001 775276716 999619113 623339723 230328140 125741878 59267581 14488159 497647403 735937148 812288977 945252774 71126279 702462836 307252386 141261883 884354901 226028778 720601 260033602 546666864 668579078 438706760 264477674 605549124 589277049 232665848 817895935 413612997 227816889 116724802 162337220 777255283 238334795 24019048 319433684 357983852 512595853 57785988 131367046 566494874 406430206 561657492 333728588 417623928 689650937 614417006 164132702 526243264 526601866 289648629 367586487 82507016 206033207 812529715 181092816 551545548 784031400 219247776 131596126 93306568 518313801 199471340 143237733 263766153 418657155 203542374 714962498 136931212 78139769 664650875 187714791 696521827 847995345 672411945 402160895 84343553 699116631 361436904 734818284 491957578 314821248 87539654 54942960 240525096 66607845 248940549 201518873 176126690 385521206 531253943 586885046 412394006 484610464 256237838 984409891 797563885 675680832 977780538 846848615 210896438 249694556 957906107 937589375 367016758 119493558 353387211 598985647 695372936 799361482 576778624 816603282 997498432 305354173 485098892 510646186 255895868 469212734 197625007 480691271 434688376 758010185 633843479 135484674 805474555 429210689 571879777 156293451 128066304 479121443 748669902 449447842 404147439 414339390 278219368 455214634 303309701 668926889 746237896 560296383 923499183 718557501 688153063 350034067 250209656 785122241 109004110 611230417 760851425 281603330 32567415 75027434 590521394 570063327 343476711 166502527 851008557 825906401 400002732 652887049 799211570 367710199 561390100 371280142 267259265 89092114 849423945 178064025 908829230 265191574 615808532 795580184 302248652 19997800 649696582 100188623 648028887 277610492 432437421 122814822 135951405 685055272 574869300 50624665 722371169 642221066 775236236 298482440 762598186 539344505 362336691 137177817 601113699 310385798 916872473 871939919 191587087 436328399 930042157 268980155 553082238 556198133 571639166 514908795 138786009 16969978 545403225 26220038 88573136 622379574 738809253 842335941 47372461 410586277 653774020 608618185 640825340 796922991 710109751 68582675 666266105 860678532 648995649 89553807 164128734 78720800 653770822 705492657 534715549 773560016 303189566 598556203 836713577 23732141 612063369 996350043 93896572 439887227 11016474 199532596 770560032 492795937 619222149 990318794 885254741 984186993 504692764 66261666 206786739 586896461 976087357 856145202 927266471 654311621 215477446 951644044 754168652 296546956 874536780 891575914 581171763 1616333 259592738 696345869 9781742 470452335 482814288 298885836 392632233 989945649 119029396 545200468 327013312 721839202 658190439 271683893 344525734 276840328 168880944 454345210 995283397 874164717 540672457 41519063 7373152 784914566 783423881 987245990 291354247 40903237 372545537 484279712 159511119 685025652 815742454 145960787 633695584 826873145 420963633 429478010 344259881 79574178 922198523 104631440 382168001 490787027 502275739 443426166 917975735 346674072 263058923 479988525 52299715 26903776 988657128 45473010 822374271 637217093 537058698 731608617 814896004 816164906 588747342 464174787 994009717 6783187 639705095 902422317 339484968 287371228 740712437 550655608 265815713 480033638 112231570 462162819 186523987 388181688 550272711 750043912 629692883 478297438 710382655 750186167 714191843 106054821 428010131 338749450 425986806 545862378 182200404 803261313 912084357 464466664 350443248 767199474 269613893 83346415 516317381 821365940 924527597 174758756 266964760 766256624 717774917 321947939 682597092 618228558 148787631 956699984 529450627 862773211 949309682 971521906 118689120 958128807 660314958 258898970 802439859 903139139 463612249 301028509 251623399 77676345 169511229 40186687 987497737 771468214 467083310 518893854 106391622 28574592 90829045 26788763 743095950 869127818 743326386 320097679 790728486 784320507 750083462 302682278 163360726 484758200 351689529 814107594 128169825 534887129 476932362 359890113 586031807 496208960 712907861 415599549 346003210 224584861 947041184 408242511 698771276 271219856 520462551 137506455 494694708 561146874 211483948 838698869 394317133 360202239 541491847 192954330 164971529 322847180 490759258 878343737 111738792 787658289 248140508 769900255 770500882 13333081 371779700 356499162 663448285 515870044 4725971 823386691 990051206 884793897 807579839 70695322 361640492 776707102 756241299 575657766 37568206 198755691 449885902 489931464 155115642 905813517 250844786 842853383 476444778 515310939 462865595 132285993 223887005 829799010 381947804 768703931 209461188 909024598 280839228 925655501 367676958 207066895 611140521 865549494 424371743 581056976 731672664 360767103 571775483 231886661 556216884 535857599 37652408 934382003 820230399 139204335 403329289 803520534 480437874 602163151 225095299 880988503 330552708 856770776 584862581 580123136 920515967 203937088 942592136 555155911 422898710 174361310 446957687 725830860 703014585 918007584 606807603 720012176 208280583 755160086 448125053 6886879 522283082 745450465 785726613 551737858 243669404 735630678 509398721 209201329 252447115 711993094 473282375 638199898 357147263 326430519 79316545 156905285 627758665 61803714 961816597 730518919 537780465 957468138 699046349 861240179 101730036 259360798 220708580 581738954 473030209 861033469 264654463 733845728 184783300 484792712 437648346 633936314 682216253 983545847 306858129 141904295 872916807 859525558 796493837 489089240 647259426 730408964 493711117 595563439 712314300 819644025 320195045 350409907 30973449 725281796 623430826 618816157 271018043 897117739 560034127 464641037 565565435 242673370 670581461 590389961 904382193 752147500 467740960 661733099 251850670 240603886 375323666 816513655 1234951 14467874 15946598 454385444 938691060 644542529 171186638 144979857 278365453 767616015 672105680 829103366 293273396 621362886 236280802 161037884 776931551 657464985 471750818 657679951 60665692 150082734 954799769 22377681 50884538 83485786 137709065 829500877 627272927 987557452 898041263 799628055 794014925 911076475 110545409 850526766 644574426 754424974 166657981 417460887 902223115 818459214 873476710 648700602 777559769 179597325 225067266 304380646 730499045 746528510 378817589 255406546 357998485 802123287 389870149 155608109 972545689 543544417 911102993 262638923 100869307 743012416 686843159 677657752 432636392 626015020 811546261 60335657 257457254 493276540 894043163 841281614 562938456 224908537 751928284 325383600 478546617 931115356 635075229 220640503 241328671 966117520 892204321 587103785 848190048 935314953 707389657 497994220 892057462 636514922 141902086 799843277 924221424 305544594 176890440 948208218 773316882 179509003 356876087 401865256 737403270 859237320 496691033 634702408 606731856 512125087 726066194 342615817 635786436 214936776 918937059 332043752 654514946 992246334 7222009 390055412 497131524 25046639 85751247 87584805 283918861 853001754 826734126 788884596 768739518 971366097 999716730 809798075 689407461 250980370 945597925 597569322 706543826 298235546 667159854 661216400 942267346 379444809 111211753 343803451 757784204 622602337 425469664 905119348 620398138 317043991 718128167 811314094 856799245 292285038 589052191 194781833 816188559 98864120 748890463 235086902 544055629 952805459 321637286 994289841 121164255 409644190 651984639 739247515 101800579 769727161 464870571 480956916 567577452 894339411 622248725 574214773 875687488 337916513 82193841 902596249 477304742 333043246 929125770 581483535 79356457 664319384 497892300 953889451 729040603 876633711 828205095 711978732 644322683 472743642 850974819 971226637 526101567 113789204 383927777 473406843 55308801 421907443 635700700 770432804 731265238 122248279 429073462 329915313 314791531 795132788 419298939 454315338 623213530 210850508 263117804 487866820 839686833 695868110 640211464 464351218 379568060 411550178 300952416 426117977 747233205 793078903 550742025 762594104 931200423 578912842 186566554 154714282 444720400 975844261 225544294 124590255 542235574 455192423 739657967 537164912 142322137 687744326 988221910 168538915 762248371 421651531 263722478 821408136 123863291 172778059 547210928 814365755 19329632 170155385 483497655 410750993 50424255 872502590 161904197 907573891 713854694 655915484 343218013 856329711 51189633 612057968 487795463 703033074 505409004 305647336 582290388 499144104 963958042 568433855 92604243 295519602 443243135 724338940 70511762 476994331 312537444 330077071 494544159 431187528 259217215 477209065 178089249 570562877 165791078 708346405 997231170 750849344 295920934 260210846 83656373 405189149 887395559 510686545 128827410 986325531 294253884 998130731 503305459 576472489 447185356 692025719 90286618 585115547 184093178 31048934 793808580 812865331 420322487 202867126 101889162 591544990 943102042 175701272 515037132 546463060 349972031 307796507 854792578 391780669 856194749 36625951 348373245 997539808 646941504 649034502 230301112 187267209 827843858 47420787 165001450 616273794 452143965 205710446 820389635 870396786 79443062 864393647 747977271 148988848 140477755 520861237 137480327 688844006 76234441 964635927 332348725 318142597 939941901 275363547 980638150 86594190 255969151 851978521 383983969 498431522 753345248 64774466 354351902 690910173 606562233 63612939 448583545 830885540 380971272 228824844 211933762 434430343 258006285 851452763 223464944 760950440 895288914 36157729 144482864 400873662 195592837 53846187 720839758 926154390 383949940 342932862 11211202 484114714 553589251 615071996 326886427 259674654 13894652 403662538 699086866 456883064 332791513 133990691 347392131 826313298 548762217 251144002 951484939 796659500 517801833 363929972 478548861 97038937 827206567 730062687 838053226 239764706 934393484 745892014 479035741 100657460 245567951 747368688 154646876 582302236 257995027 138382676 498736303 468885584 121473863 469205721 661947231 677966236 186041860 448458912 293200231 561458344 961345617 148425815 204275499 333737313 402712148 571719717 7763278 272602044 564694303 820510435 796008015 873964455 636668158 900981182 414511359 215842701 713383286 405330940 229092904 304132725 888867930 769925199 345813778 979031033 607967224 439669901 756620242 677215318 512095478 974398091 221603832 150312735 586929772 462139049 532148418 392592267 695221851 109205766 321204550 674724599 26752511 338782648 874339088 457625959 454613316 485488719 435316956 566624574 802101905 626999353 148109145 804575428 875564306 315491068 376410225 948264216 912634425 701480754 160500981 5662916 519743943 835647215 147064877 863212602 675719714 638604630 826015695 149819633 23365847 489178577 293670995 925943926 163113033 718190812 303642640 913222289 658704841 659944689 330825381 853725605 426168464 855464092 578067995 920710829 116383718 564669312 691568891 433323812 744742961 777005677 726137843 118190770 146113599 373141631 334205420 582620042 669659314 692460555 138823227 947893043 749905757 865329345 658566054 482458994 551955151 141059370 393820144 82881010 77442122 199383657 642005972 4907806 684898571 672187445 860369036 370634260 895756038 736245673 72991115 859263455 326719691 293415552 431142788 870313899 917664966 335409840 424328003 40841165 543243621 566408878 169209736 756681048 568844388 736995189 842287898 481729008 900290895 710328248 819158673 529018146 794957974 725115602 333978748 762112287 199940255 119957963 513542892 752293345 880422357 798252634 967283638 230570569 818348118 283819395 373573931 387626518 503461434 155587923 818950370 586108945 766847903 39814176 107497409 82753870 698514786 617226187 821526249 513135222 129482851 385060809 36406320 694735471 87455574 49907500 120878288 499547606 73357062 116977249 584271325 678776665 72032816 135750933 247101208 861843769 875806384 851987717 518864912 10774638 681830873 210519678 942274508 254135846 543280840 763618560 249939226 929888087 160741002 739514607 907602119 562745895 8178596 192131343 435716720 216000849 901234117 616499930 24449729 76238599 862643656 211050746 541616716 336222184 914100497 386739658 223151833 188647783 304847685 182990706 417035994 728344928 162315492 131381221 312404339 497424654 197938605 868157123 414839913 935355587 267968770 520701534 272765501 474867705 783877254 937976863 826049893 463784792 730786128 121657553 138461873 322016354 352023157 471986987 37054475 470057687 649280044 802864270 783152403 907336341 952405291 370768950 107372099 565442871 767166994 630296613 760500110 141437899 597513147 676831538 46442106 37094752 839805629 170125749 849360949 832760265 811608061 588887230 522777776 356061416 332774237 196370331 878167747 5740984 132612310 246411057 535979002 984789559 863382534 221668978 923917777 343030110 202167132 917752132 951767638 148223046 869446931 877467321 813730620 637688521 480054507 165484233 167623767 45280211 752174667 944910051 869255875 10840602 213125189 914043441 378108587 88190306 795566809 959238688 844621976 968116451 497923875 446620780 593230760 566276145 305072579 117193340 315235930 633689874 401924057 921343511 457838354 637115497 754729840 909808614 499675429 52030301 485063684 966722274 673255802 96264617 527112440 806562970 549689827 828691517 307208098 363411133 560092578 842869830 848066403 536347080 251699908 450410705 784946806 609908593 690254370 933575664 359693733 421788293 967525686 663540634 560742249 785266368 220353649 193090592 399990364 690624192 168087497 503644712 99748025 322665948 138605252 31987644 961818443 190029613 273657058 108172810 754654342 646403323 711895597 736450529 199697869 601703257 864828951 893913431 584977695 50898072 7967011 732896946 64645055 396283665 99788896 796119453 820475361 573975576 567274968 118738268 726949902 234642036 939951546 121101964 598421252 242129436 73647078 467919065 825423084 214353387 725020089 313286304 166082524 951201395 106101199 973312020 386929441 46723432 599625241 938305132 148377286 375670055 165312875 644989700 133288577 141955471 282718002 210584223 833851810 174808165 304044874 113747332 470029293 719873494 9792716 929445367 309256436 296451439 851762464 476560691 563149722 701721826 698793489 236335571 209027256 575522333 429946676 88901048 22030564 127081854 188143311 244526511 669068261 124557921 394985891 38875484 452311244 524740644 385736804 551280434 769000564 247983273 494954044 729216432 984754996 850915116 809727969 393840789 750326915 143668197 751608433 344531138 520182492 51162688 984303552 462510490 877926120 935646471 991412115 292074389 395570661 39610163 112841807 781641727 938671926 755047480 882622270 357908128 849593667 880884045 953008357 877581109 265192387 769497975 194955399 365886384 198156224 588393964 865941542 367206390 435425846 698711029 864176569 499510604 135492070 365726271 711140846 647223142 391140515 803575027 173983496 436677512 284968892 439536524 966048939 817743524 788820744 958747218 427897072 253912772 479316529 98985428 287634789 65598133 898215797 103979024 148711118 742215435 382349560 53747598 738021406 401381699 318630888 964808367 231876112 715505311 904412784 359263267 343068213 962449015 334521778 425608403 859863785 804401541 771134461 310205185 456420300 552661742 437919409 273687763 417614365 298706049 985308734 83109001 248682427 225676708 573054521 837977668 786675972 845131747 402575678 262159400 249073369 995570030 464883388 227676490 147269927 586667170 46502395 652304575 140679762 991795170 476815840 153348294 839808587 999891350 902025798 45597690 636285091 669359850 531055041 21434175 549398181 72888004 887922121 811009220 699184678 906788418 809075472 188766547 614590195 995449699 38202926 967065723 27289182 457213921 941996092 779448184 105592054 41724310 730799226 737374955 625770181 687920137 322372435 448921956 724819613 440435401 691101706 510765612 780948034 945269094 60103508 119307981 137950986 495382820 50049812 862334262 296212675 477499344 22542327 74037732 239182359 174995126 410509874 508538796 606492709 243010753 368934590 661374766 386686326 914599266 693595344 937165957 528382470 862416968 355951066 567641749 966769033 923237579 891550982 835838996 310881533 515033878 188517424 372733345 328850839 595165549 892713234 2020210 774518543 733279095 406808520 477032365 841438399 707948141 891150759 691063679 544607668 535864815 923512055 992242006 974265579 241346266 67416738 555720720 148483383 422261942 435138410 53263874 116469768 161805813 482802963 445629865 521025822 30543394 371677808 131369921 722924495 667122941 321900365 154127955 54370828 152778499 734736284 725038622 174180820 434004187 93777342 873241037 25938835 376003186 244228779 981915120 626507404 14786780 146915118 871728766 350356077 157270961 789897379 727136879 746035304 270683512 737856000 764624385 671442661 88882453 457494577 97036943 73729676 828154635 468308515 873641478 107051357 678126000 951897175 491416315 168982229 371989837 261611421 207541379 27252643 733298567 560768 740423469 486008483 578996507 590191629 44593481 196504769 681827325 462741564 469566601 430872189 297781965 639210715 219579262 457824690 587778547 133224216 909752027 295647995 625430796 835362930 549138056 832402728 773157733 793308494 667626544 678688002 92987154 46919388 427308737 228707185 12862558 780690715 581124188 75468921 182089795 638588875 542628475 7842118 872874283 687726349 551396351 696000201 231192579 893668353 625076259 613160536 243104504 759664533 786027169 449521702 512434435 197630514 917107 483461233 253982007 168640432 645511237 646975090 971407775 890172818 579101254 946988311 823606289 688606171 966254087 882155374 858048548 940464462 292047524 258018825 653386371 714298858 407240385 197720766 510118206 596410786 337549652 194599277 872775996 604205956 307140344 230908828 494888072 612498035 582141223 632549570 778275490 636981331 823919868 176709567 280853015 843852214 648067452 302921839 848773625 211315700 490783356 787164878 756293039 887747957 725514747 737789284 314822835 141894116 377150274 518553538 909881898 263866462 800168549 132750516 712907259 731909294 851890799 448779192 103759501 760439040 821078928 915297240 65973164 521368550 404561304 872756909 23321004 622258000 842909780 890688196 234562116 521325739 118225671 550419559 412839766 467716508 11826498 552535857 790340511 210798232 957650671 525281407 208455727 530963922 998052558 494754229 685969427 498747697 956419122 33777667 955799493 727849164 223089945 287846357 477172551 941080454 466685858 840397179 486119649 386033711 434972039 129350649 281130639 74610231 574675134 635975537 961192551 486555932 333222070 366826949 155892427 467211629 84773489 842338410 647107064 150326989 385031382 522499724 204303068 356594641 391783267 957134463 271261287 810411572 804550601 869701170 188405630 774480510 47635528 396879523 428380479 385177874 425464684 114229134 994088420 834873484 79402697 341157464 466202233 247790689 807891462 725159726 722577356 781383436 654146340 864288263 453763684 608741118 16952832 345872738 914156586 392240829 144131684 922672607 727124591 501038658 341340413 939966064 996871636 751103094 747589728 310536408 609185520 493383065 354713399 9646841 5840882 972571632 469921263 697411733 853281682 883455114 144814899 894927939 338940696 91119889 514766068 272459320 202284800 844348737 298385065 854348408 478879590 42240895 262086426 158606809 805315596 221791753 356645181 999603834 961003107 306946255 633329807 290782616 273185636 735884243 875222227 786800409 971757429 402317021 159370243 695198854 816253012 810894414 734369228 644894467 407323564 767082790 924215616 398234505 815116255 553735887 993420501 507604286 618814846 184830338 369270124 861289645 704765258 210015799 572786940 529219523 405255894 927464149 360494019 173080329 142706492 925634929 477386169 395132751 65686772 180182336 171462787 122911271 639793982 449692491 287339560 831364041 174075671 670171245 524079164 702717068 397039836 988810544 134217698 903801879 33049601 194873142 548675677 77154157 819231481 541499153 524110231 190701646 801906148 461538691 21835894 974719588 932406004 548714526 643880097 645794349 890164137 647159327 767119471 489386745 988900693 354545986 80221262 624781882 735109077 890785237 934597478 575715939 304405742 863776907 576483384 654474097 978398061 642662526 118511352 383448628 193043915 559904443 66764430 86218475 672007099 764576136 617902054 344968742 870084284 304733799 669425062 505348903 875245371 47089084 632207009 425988731 180698591 957876184 782844664 271526235 576559127 582360211 726734594 90666239 353676234 51542921 184793985 900596588 227265243 145617913 826165854 655903951 108295751 73328091 987215408 479140386 154461549 863921221 115520866 546492267 194961012 33093802 35122281 733243184 779071874 400794988 697188939 959554569 613140812 356397403 864420211 899893323 902044248 778587974 627004234 757001584 370721706 980188969 553834622 267982702 467043229 105546885 460461390 270676353 562643443 944781301 115181985 733834673 238022938 187408804 773211788 357725877 290537800 812895181 386462390 126369951 477149495 628648160 280761401 193219963 218941517 522225789 60694775 614420437 383270236 69265136 859924222 284930973 911340886 434236929 172256042 698604541 785716181 805302189 72731113 120245520 299887684 929233709 35684948 633140075 705370257 350384926 833418241 295000812 127346624 580800129 533245125 44019550 85746335 468366984 556092115 679545608 410004922 674594640 819804230 336061951 66213677 175179295 711518951 666847509 475852089 204934410 218259822 44308195 120102281 868222853 794788160 117926267 734452061 406675158 538891074 875616714 889093764 496327347 175362828 154509396 887855895 833580443 300014116 622115091 765274619 465719479 23135216 457250404 274939809 929783895 204874835 116464639 784968540 876474981 906052284 461288977 161702483 894573356 316823576 386645915 787902003 415119349 459827322 288392648 842820245 110174125 449303445 896645445 77987836 39936392 81341106 287513521 257904081 909690836 165086494 843732858 537673442 79573881 710603082 362332589 208598163 686454532 431621212 352711414 710579115 382997189 572910682 867642178 579459712 743123756 95205137 887690891 477619095 714301936 129072046 307389073 146178929 691915177 762005785 51577605 694681595 842099087 363347756 358021249 265252776 924992711 826502001 902513777 941249336 30185482 961776507 323753112 629976509 613303505 545127412 868652710 303490510 857119722 470728690 437354496 851422881 853676341 401967316 368931498 467569858 954662810 822581886 479086356 608471532 910113112 942296199 709019391 745220441 388172985 325065248 353171044 203667970 151463412 785073469 114895427 66191712 287290489 516026830 7274825 698576206 50126624 651577791 747588053 109865784 889064528 852037467 431560557 128259560 921110474 883878253 868223188 681644792 189904793 948437801 73947656 221822265 82335279 577033710 633839468 630949217 122960866 292477122 838344979 245530237 182380580 152549096 159683573 480704389 462443808 308031612 921455874 166518991 808911784 497569763 102992336 764606402 509649648 561333445 737886728 18762182 502727714 612623773 261185599 757516056 566780078 336542682 533637235 306966944 878579227 672524013 115325675 200123179 574554303 304541074 374933702 655125069 353721151 323824970 684030379 471324299 795497496 900943291 842680316 509246273 324146941 423503496 279269232 518624708 196745040 356890996 350542153 320802168 511976281 325047387 70724187 879358834 371904100 462072533 371049665 930814296 427139506 381395117 625911235 420024248 349271893 948315220 994723424 564312381 681856509 495550123 618453741 819082326 790188246 275974570 738813399 391614916 166884121 370594819 423854843 159462804 959291695 543151376 959246706 794976954 862289854 19100613 438839985 660671182 61243146 561485493 110953262 229223797 352219807 607002891 981204258 43873774 35269196 581619772 135452990 197472841 343827821 503299117 833578032 159395465 722215840 166687160 60996104 721298482 423771573 66006410 261062940 775883778 445544359 762098985 300330073 389746515 657476235 277716011 693060469 767675799 647177634 504625576 155064984 587037833 416340399 236372719 489434281 617881220 636204862 227244799 840434966 271152279 427367315 517268122 584490210 834922703 123087729 194440385 629193160 740129659 887034412 206447833 891718430 618404728 932460443 728810271 986311530 454251190 342976207 501328030 485962586 837700208 643279039 774722109 106566129 242620130 978457847 35915416 319001340 233116034 865920769 793663786 460273007 902994173 183036905 552805833 348874631 632832233 689433595 904374844 397164987 783047145 966138457 451164441 706401569 658490866 932385461 123720952 56084551 691497818 857362069 90241491 385919050 681911655 692639722 337317832 734726808 562284837 785019068 658549499 609775310 384724552 988957743 412093054 60193696 502511213 595565691 124478589 188723697 11885535 311301753 212473610 596425385 659118774 43130152 213318703 107355539 701053011 217478446 933397011 923178823 122314339 505373461 454359604 334934587 768865765 285817502 142525680 754688859 33471666 318264707 806039103 618766544 967063671 985407064 230105246 552825415 181786434 138248467 696718875 917919747 258426582 524505297 164650624 649085454 784498844 118396050 13717224 993867932 99970149 239193211 733324820 449152754 442276147 572821912 840991524 759140704 979075153 62632507 307119476 779345071 799710680 963651280 73607565 456780486 337781100 400162601 290451767 625944078 201704279 108680161 758190289 668977620 106789123 505175689 290295916 115637747 291336504 519118099 945100851 522748107 554433084 506948305 309555680 136400426 659718536 417033422 133775930 747300331 556808035 397616913 322144495 52022923 183253466 495912322 1769629 834259093 19964411 626771145 155383003 27910962 35158891 848020994 138996291 414016861 217654756 805936622 108220142 150314737 718441654 357474186 540429121 428065515 349979870 765521660 951456957 494489103 84846699 472075736 686957723 637187900 859251016 370242714 644928659 804654594 332734764 597600122 94008765 940013461 391693795 292066811 630628781 540556040 170120232 709941558 826074843 985930194 695696754 957987128 509725724 681867998 545823555 895231526 205385756 939725385 955889239 905715034 339414822 79247558 721203472 420011535 810149237 680765251 16569481 563416380 205958342 856631903 25746070 986988588 937582914 750325956 365169689 123203021 617374025 246940990 488878106 896184831 170280716 321425251 643450747 10875058 957487922 469896291 759883590 468286477 314015695 480832030 923471630 583705328 629582341 496240123 242706681 344223288 557888760 706764041 753943506 656037075 338833348 510859360 119926922 898592930 647047449 825096180 807006626 971914206 609814764 962649119 576392200 254689898 655317212 54003580 243855875 718935924 897379118 605646497 90394884 784469006 189342221 881917372 931524845 142830275 786633107 194401164 898655217 374383309 987959687 229763695 664844654 918298605 105633260 742004387 734439216 133567164 966394603 315825733 664892573 705869069 736571154 203567832 302681765 998779424 788956791 484540786 376064544 534721124 163255076 266177201 459440761 882647045 672715501 869009908 160742972 36169811 956123828 664247852 87465772 234149886 828092908 919826982 623482014 625736252 540782400 29444760 277385847 270509956 970133130 987940358 794937714 626764119 268150420 192983549 441276897 206053379 41298026 425311802 792403305 256833688 969336381 933864806 850021826 652742989 291297910 298486824 633158286 375504524 468877327 233778637 555898198 815003749 497004113 980790962 417483168 981694219 814264181 487256494 39242540 857914488 998523505 382513670 538600402 784896761 741107469 905123778 386984742 544207120 31586552 95280522 493987592 546062425 654523320 343462802 233608816 79655758 721419461 467172229 537183627 163313717 905579554 214136536 522089670 447134839 277643624 657181887 139688027 308342721 292025965 469287765 319078652 898226665 991532504 576988749 550309788 260353412 126924950 535855329 555761502 534809924 497126909 367172699 308509332 186357304 733079340 357120090 57849653 572147128 162854291 756897377 833466126 794069168 643960328 413246671 709033487 902402251 952306897 319182441 288478660 532414692 131137692 840012319 613473266 263953083 622589346 307381651 250151690 56901179 649423881 307814520 527059443 549726585 675998697 359887434 282104408 388109955 354125322 439337649 974298237 288301845 563806207 273032822 888916576 232784092 172377528 448654523 926736777 854529821 20529029 290285692 746551664 937484701 432737584 699806468 748781080 39690192 393019360 360620516 598247898 85894975 949228258 634871078 872330903 163039899 700121952 320077204 922272234 188903066 145143996 893660453 188429560 365630930 564778604 550207195 680035856 250466486 80253634 223899224 980570677 398439295 466764283 677208358 724819024 56341531 520641121 338658211 538812742 546277336 450358139 312626731 61463144 918966872 954841353 354780394 639867123 879648878 923467684 669511844 280973120 295533087 527242584 945164788 577468638 953258476 535171981 769054323 137471593 200188869 965982526 634304701 719557093 778223337 244334716 583020359 327965875 2418459 704784877 413008697 12095571 811886267 360751149 186211114 90302569 351540018 529261767 552377455 73395862 802254725 427133472 921166027 905425087 214704352 888440867 440284566 902109955 754268605 951381959 333690288 286050351 812457441 850189332 422451895 220595249 910322911 867848351 535433012 357681284 802688804 700986858 748684995 870585670 396001397 425749391 303432548 317313779 86202167 441146854 34224248 729207246 894423989 514464161 896884522 515309350 500794471 462479539 717764464 679775093 906385763 379665686 982956367 214702426 51604512 313007458 515508678 577936892 284076923 429176162 513818708 840678154 257971440 199204414 2012753 370842412 128130691 237852721 189700702 988928465 802208903 110248271 923158422 735805072 544186035 607650123 360146039 641149337 108746680 590044433 387380019 983090789 469740009 896434891 80090261 463865325 504170429 508289868 319939778 308981688 153710499 330730115 632848981 24363809 835291128 230890798 547693368 504247852 275237716 438291087 826618260 523516425 277074295 197617332 102586012 876592732 873415978 9774081 344348197 976992477 356388522 314933526 73626335 384698265 966495306 46268404 52494360 535242379 868748822 953688576 169154101 436451497 198965728 111651216 689569562 6660002 329862202 340040044 217203499 803213341 468538647 43038347 446275232 95518334 818351151 629693276 281159827 238386108 78151429 933043502 761649301 58178628 927424832 767664124 877946055 556746027 12307704 993941722 470555911 802419858 347768919 889473445 806524113 876622510 954648038 561445527 842625526 166454454 764728206 490486684 436426909 838557525 889454612 699512534 208756305 725730382 170179399 746690979 887128459 474905898 619739627 452834282 904992026 860922777 859904942 96211154 918051167 944737156 976562906 938811215 467906102 121756664 412270456 263179742 404974300 891270839 830060650 294377870 184755844 362559529 946435958 666493351 323513590 307844444 686814338 893345432 547494499 135813602 64699236 611636256 890324747 145416819 465205005 510428057 435023459 192706381 960319082 489085524 796354449 758759874 630759126 612502596 228134041 293796444 305470556 759667534 242131296 745412538 485871574 366244669 911870999 511214265 835856065 286966137 740836902 323626943 63607553 98012531 34787224 371382992 216513166 532740528 846414216 554761425 780122733 94022100 941339555 244289457 405123876 155098131 57450457 152556136 879067333 195929076 487295399 854983497 671811908 271994140 443046099 99429297 410629170 331671293 982901924 747760778 610989429 352027244 232459891 385738033 52570493 144642740 657160612 669572606 392705023 69729691 726210674 551488003 880132496 946463707 966022928 504930105 935960937 703223710 896257354 912046397 657805866 826303561 552407964 573059521 347310884 28545817 785359125 731833717 110615327 508370323 609486791 268139900 911314165 362563430 715289145 949654201 881015720 870121353 707100289 992734006 698534319 510359786 20241037 469952596 706985315 107584471 854083969 450610294 595450934 679047327 515568448 746522501 206825787 506944006 177206870 199137279 369139170 323946516 25505083 416098800 11821751 966404714 559165327 921151373 457946824 770082365 949603551 139744705 368432722 783192476 380438450 618575885 495648085 423933920 663821692 424358601 725873768 666686334 637535609 821245803 925363255 29236373 841452135 322830057 592257824 645312988 698045278 366034730 603871358 209366876 890910635 294459375 962791325 624494619 708011862 990373109 18330370 185517787 515202818 42334764 93165235 541384138 967570704 337095645 104140488 493710457 128655707 533944010 635992008 614049446 148813899 683069532 871086788 277844850 337546601 16584641 495664594 64115657 628063023 535756086 52253746 326347458 6945587 60564903 200871575 524551711 670533064 196428226 117876974 874865482 398503018 579502704 326337752 279619340 42799319 220180388 162703999 508828353 857733741 626144316 815670919 115265995 570357928 309729656 43771612 672508333 58609755 521433733 249612 543942224 804197280 598167232 382733653 495407492 358849496 9979067 752687469 339723634 386490154 821443149 945559861 995152307 721331644 267552859 64542325 620110340 600492841 824604935 647632270 908944779 502784750 110524154 917297335 838694859 322725127 759093324 327083351 159067311 319144923 146142295 281670462 180661056 898432168 732111103 744110530 263842541 531438809 506763451 529340963 938620089 74163214 961738957 331422850 490961421 455722642 253894994 151406370 463921955 785591266 226923992 120078150 871869363 354171951 381630798 604791836 685691641 701990555 212979812 943073389 82447466 115030246 349604131 355245283 816651893 789878292 575778330 140084009 589325971 84948556 816607267 754866685 977055914 411000444 700034670 631418778 589723347 645974999 830816251 455173960 405481182 847640711 516574434 888163541 594212636 845777748 684563379 129937535 279599583 261629230 559039345 105276064 287002366 301119318 688815407 639409370 1524583 419740695 644460419 315811358 923958776 903412671 315340228 797619774 637169722 367521808 429927159 823010808 648078441 690692260 709136650 321985603 981011855 685591379 892794346 607577714 364262382 562393932 905812186 775051191 55151863 105499849 598444935 570282071 431934136 300108626 230531622 930083103 978470051 688377616 337998718 166235213 384262765 281958777 542271940 796365268 219506471 666436208 714542947 638799016 745246543 431827397 144027516 651428812 705464356 880234541 437905721 461706744 183483100 460230558 93801392 432401258 849841845 586391450 681296745 940780670 403967071 460346669 984306348 862459316 613602953 645007217 141904285 481071438 10057556 727580184 345630482 914642556 952382907 633650796 256197709 985512511 589634677 316916035 108396581 426364055 718636008 963216506 132387601 251960761 32220149 364351380 61135230 754596431 803476789 230929954 302145409 447582265 264281671 498620270 619180113 764093460 773820416 569204847 763656944 60616976 785071428 554423795 671564175 607799819 835788155 950456954 361069827 882951015 371012895 457250392 134208630 425785679 173189677 873137505 140528608 635551886 419094179 179904636 123643422 41333587 807780966 190675142 109457028 67383723 165414092 872867603 766806906 789334778 265872118 426843893 1552943 406595889 441463251 866941307 454248372 901565717 385701689 901599316 43199560 849451640 836364360 305573752 792409792 278147459 533874857 322797334 796901299 594550861 365489933 942082739 633300898 903560922 364551925 152035305 710242992 88145959 602835029 796085494 142375208 923401030 256590024 591087901 643444494 331946135 899128055 507162109 929875766 76334510 545530212 177927392 334428010 970399340 370443484 97281515 514207603 882848261 106598799 986094726 271646092 826375705 804516004 456388129 449332648 430039472 968116069 170666726 450291128 177466059 568059840 573086710 804085709 258458397 437680527 870587044 391566020 228027810 664134383 542364387 791941955 760901375 564527929 86719680 508791574 634479804 635817604 535827714 433768407 798665336 582009236 594045648 837418876 286270230 50007360 830046703 113202169 688160769 482375239 534970310 582746831 803484944 821678043 428173226 61147275 884303161 454496038 227070337 456410952 646654748 33382363 454814756 490152952 630840347 618922791 504306921 435023993 695483306 377525869 931579439 397758468 759938674 320597662 327723619 695228876 91830058 148913184 2247261 209939853 711188613 979765228 596343843 352185034 240865469 135101066 986122680 710041665 356466325 10447852 345051817 890889886 359230940 589081572 458425135 290112057 598969075 507148045 124514463 575954995 639052960 482402100 562474983 187797157 999068023 443010568 377440154 637941282 288794993 586470593 477265 342037200 976422131 136688576 829707695 725588324 914850201 693006603 196351473 344554822 309601424 510564550 371620714 254425443 355048490 932606170 107812736 673452053 398230865 224784091 442356668 739420551 509394657 620266253 865563768 21684239 17678205 140523586 930901131 923641045 440530736 211037751 306093222 304111226 488722340 275629079 333744966 2850619 582393971 423178457 966188942 303330738 3382834 908402652 316608127 82565400 930034366 667520514 896154258 929169432 412439029 979271043 602431633 322935972 411994901 535625480 180611905 88773242 431269503 684666263 486637441 823523281 761725713 648723522 29907564 118991549 168008855 428889583 219618017 957292672 980262517 460647406 466219413 703526620 63120932 43731564 623461726 8820776 908684980 752421595 961664380 812959936 652115030 325742683 121592855 781524721 259961189 493732631 606971091 48836713 924212446 599170750 536210651 862049517 996110983 540612367 54223342 79894145 791735324 778749764 531983835 812053310 207148637 733942060 910480166 327144322 406112864 362907510 458679282 238799798 63582621 531806146 526364688 325549509 188264563 960934614 567330148 55192491 869905415 509250280 920533635 990105380 683423728 30513877 429117045 627647614 362435215 485011317 439451150 60555250 537129600 159482594 822055871 803509631 912588366 74186048 705897787 805054420 667900561 668811935 692443912 881308655 642741273 814857416 380417210 29026587 967207001 964371874 257284395 578392844 758012937 692008204 723546826 191477891 161509311 912511906 532363514 548127139 568438677 541141670 680170726 290664621 923547749 208864647 12309225 689333489 556677948 280305515 997589100 769912874 657972562 40310443 941938749 961208440 619260659 996864137 903009306 37118144 122323933 420334511 967651452 160695828 78965266 24871348 377645049 316580417 41622571 310815118 286981529 143694073 758513230 829534945 661890266 175455902 667185631 963993043 328575960 931681514 574703020 604135118 6749719 751657262 782515926 805001015 735836212 239050446 884639162 515839794 834777972 404211122 5950352 132206328 658870640 242365487 910793345 29708949 813074619 237419418 565185686 165390216 194021575 771284039 196368638 833117014 73119719 5593580 781401066 322712238 261147441 40059710 279161224 197015141 356422088 452783045 620844737 734692652 710560798 353222858 162544649 145361647 963986257 543082234 960193582 146704427 717244261 872905891 371786372 524780678 547363909 250053730 623880006 170138168 753782703 717159401 283339403 18963707 545991536 225583159 217802150 120095859 94073860 54201921 979931703 467543909 404406235 765448829 224473226 57257990 694357648 410421087 292765153 685909307 346883121 305046617 825096126 228580544 304445339 767029443 489247213 216551521 967912431 680229451 902020250 216940743 771353098 728537571 708478965 588186814 433177430 906350920 68484613 245085075 970580714 553611637 466255513 596043457 143768707 544282713 621731138 919083659 767071136 938687724 282568354 756502384 532098007 818821235 897271966 698989146 283390863 599291483 633519302 657208399 917910099 433120579 355873977 353963756 973303313 920542602 829470965 607094987 747784149 167457744 430493163 436585251 21350529 466771707 603714232 314445073 956913259 864655020 595517836 910195492 137059830 104583836 865770787 785500275 73632560 698505414 827450414 811085016 642642040 257058067 680464664 139752472 358448553 434903796 190697861 221251386 879469351 979657966 250188 861118022 569084984 53007521 716394125 621970333 959700053 518450176 357054998 205811498 895438400 211188375 757349743 79035980 75150778 402825254 883457664 541883113 351219313 753576974 126201191 266569294 936559958 695640751 409034802 503616611 676064448 940087522 263962163 298293811 481593769 808165290 25052896 405295565 648216748 311046428 96226621 148926878 667788998 319647497 425432964 840340081 683847608 617332986 311971369 316130334 494053018 247364389 369015766 10186138 424472273 105842243 94039649 75033277 52344809 777017074 401508430 837559449 530792865 990735638 406328116 801304043 949808056 252159108 949298838 307052273 213046169 279730865 86177017 966531431 138494304 648896657 284898958 774717119 356361495 803618964 572277243 603692768 929059980 387291912 996373795 948681752 389727028 997312005 665958571 823634954 308856349 481800297 145613753 33831939 635052505 927459460 245701370 401335951 807483437 513564223 733545953 990435504 517111177 100445896 876585832 142056184 793768419 561333918 996129616 602596216 513710151 696270582 644342673 940451980 97833881 552856963 647202572 67774701 760158349 209455619 337895983 862520018 802574329 15409271 274508864 53483755 747927219 838865871 408872379 413141956 496023911 653623988 934487614 86831779 11765156 825201847 553144785 369297194 817040647 886427941 459714614 275749918 820081214 861433860 785657999 226869474 755042987 163120873 207525144 722384302 917114423 867804539 442359099 115518428 80987786 928586754 492113871 363603111 686493396 917592104 912268373 876181713 502376506 392890657 743758687 51748134 75571584 241554995 720649262 959634470 591196926 770826362 786076645 229162969 860830186 678510726 124349901 257232993 880678416 750816230 917525205 92055669 707404189 16635773 174123002 980177778 127884338 688622180 200856264 129682082 835128382 297418536 440312601 908718578 789055196 118919804 136804931 487764804 435866104 11423976 952176541 646970635 646288141 203982582 323495675 527305574 959885915 377679348 920967101 106127311 189287656 828975540 830121914 969225707 162304597 908985873 718339312 272215316 849940147 593328895 686360093 767962214 213601051 779617910 259898937 730507112 779590597 84769230 444459552 418146327 673798384 79415620 366887465 950306305 335997312 764969394 908753997 119705320 71992647 818978352 133219253 270480077 150389206 334867767 503867655 148053941 329708814 331314261 73118412 736273137 658200759 980560094 236962079 958027303 869229397 762819739 284049679 191127676 42255557 899260390 798011966 895183548 808417106 47554094 128515236 518957529 796927971 606980219 862236009 409220111 714014839 169573166 572833357 602824061 850966166 136602810 951017116 554469254 756494439 87128778 67317081 386066615 670988510 686934812 394062479 126426232 61036321 71123714 858362064 872370194 302844417 386849037 967727190 593167799 418884539 587263076 909015601 787320890 326383074 276186906 367790362 804526820 609111858 706914231 237269941 845923896 32318390 106205951 286210912 737818266 390161056 636347928 219471506 403864456 862780903 624815885 175554278 547331989 841333711 158321060 478435288 72816878 200481063 64660040 836729469 361405668 952335808 69329836 277251830 533161799 817963121 170987084 175906561 684541640 344878752 976828793 746390024 203697928 657717656 92318630 777786178 12072811 319413917 123757704 658675752 163587082 690838096 833444535 383820172 627150994 485435166 185192276 668801417 716709672 743961582 136357934 604471330 846270289 697775790 34632404 400971176 945073162 470423972 154516551 899214411 878472407 617651312 26005536 894363075 515415529 547407916 873424593 720000820 81874892 148562235 194325881 187454262 191670801 124488139 256910799 126912078 78324987 461846208 70199780 726471809 642941513 223246121 603649967 14325805 182653303 283521679 487030545 95142571 138348177 477338389 906249904 272136811 962309093 500711069 110294810 360435176 807847760 363032968 641802642 682107253 500407458 528213168 239411766 587375538 488417061 627512575 650963684 450970335 99850021 758388258 905807711 283782913 731413583 19263419 719703578 581891343 749981758 337289558 664543659 112465345 38156304 336201955 8757847 731797485 410654267 440141346 789157320 569661529 953820083 69175877 682883355 312916155 553941105 916393099 888988774 457424498 471983509 193240794 834331664 587950883 309200017 927257529 419117718 10807065 766828349 428827261 43902663 183246216 211353474 408251901 965391629 807521931 859803683 607625340 122899973 840062092 936335215 708926943 656799894 947966901 347556114 173365671 487918614 625762217 691296047 920722793 379277852 123425874 933951920 31781054 903418111 689784525 145008478 178247948 811495285 911128497 939527284 917928067 69587673 575669815 627945634 414101622 3594814 442982235 12687262 455607664 393434606 727167236 91838415 389516249 645222090 997121285 985617512 734170417 422647570 776857641 214690077 834140241 92636988 968349029 270186687 127696477 210448608 193193684 574207977 706502976 950583957 589042358 189456954 403358728 951300980 535546107 942232216 796748552 763945582 173150361 438536113 165769901 568398709 417172937 588744082 565258682 340773535 281589152 178523622 714802058 887672352 282725504 30656786 160934206 693532782 271697690 572589030 345056567 558374660 288122162 464792999 852913444 964143855 539850964 567188073 425161641 700828397 712006850 958892338 337387612 478077641 819700366 227650944 103249427 615425754 810229793 151518880 832782618 652321075 265045409 552980329 442923654 486364490 376530156 648798569 553502510 942687625 380846831 204774045 314170018 355832830 635410303 839505728 768357808 229305099 74432952 223549892 532761575 646252253 783113154 959852690 178667308 659455626 512003540 737597232 399015815 733824918 158489552 492795551 452626484 321425932 753524772 376870423 162791726 371409214 705415472 962971039 867757147 610906956 302192834 761506146 424681670 306017902 548987917 949231423 712459212 7867207 208031106 528601127 96609489 795522364 90274030 678198567 418854004 779748482 219617188 172775096 846421621 72503353 661079613 128688510 676964024 297382443 546452354 127800060 898058132 307865040 347469456 767128781 314309394 423880615 668655123 763199866 448646168 51519183 334665258 142987095 973827393 858274799 326917824 465893641 109604654 719611898 18035393 613842854 103589801 910418823 908706188 922424313 389314819 189417657 192841569 198273856 192187099 807890729 750230611 235064633 501660917 957349783 458352038 809880558 217725246 709762107 610720298 267139885 290608492 679051000 581352959 199178713 725604757 106136948 728080870 450263774 958617954 261079520 251360364 563048695 36340876 795318953 583664780 422611386 847709785 88249463 55037399 774648564 751950620 588994777 803197587 290153460 948197153 18237034 212285323 860986980 812292956 686442701 52862055 11230087 4875615 430595850 429522948 5382480 624843157 296487264 13794200 946348425 443271255 845004745 530584916 924876107 569702350 439841272 299602204 667788441 323840904 174472688 974885228 391712688 96839825 610537645 579963134 514267415 3834923 645920562 188672265 716857567 242792394 681379875 309758808 793549619 82909991 656016477 114427101 778466207 629241646 50930194 62479967 888796575 487206367 346456592 928959824 540926964 948468813 373098298 277832021 639340098 792863910 926715120 410385300 222625643 723413020 573398197 891466830 594422533 188830084 331040476 646990720 152041001 771822438 946975810 253733379 704244617 991534269 555705237 92938327 566779556 702344823 787650373 989175538 323660664 864180491 549357840 500735293 965554978 778521854 919920243 514448141 183015829 932014116 724819896 324069030 294527407 237743078 229338432 434184199 965346485 454322229 186972123 707967968 550119157 330694387 60033993 308839941 609829627 441085895 420183563 937120534 544953259 286096285 34266494 353007238 590610886 321122521 315874767 246300644 422047926 596563401 464372647 974018475 294918190 430057534 773751971 509221620 110624376 987658038 280169556 49259172 273990038 122709155 770969401 527167442 437695994 943968576 233374924 766305825 239686188 493749007 844738916 778801848 26671841 376305609 568108882 614724847 519498236 405056593 210881390 478796865 549413458 785483 884003592 629137320 941526404 864089668 664044614 71059601 69316314 106420128 724583968 432329411 991684126 30804478 153749877 348133697 368311053 556277411 993711026 704289961 608774923 645724299 107511668 716203062 872178627 184591566 920101003 745769082 621196324 467975072 831871140 676820535 107708489 40546341 917495143 720311469 56473370 724672504 771323830 37813156 63235292 696936521 855304271 346163188 55027785 46547409 889280795 407230548 646510053 627858082 797867326 906889223 352484933 847938770 732596755 727917173 349880569 820950297 367766780 863795995 96562264 44077595 49633958 614929099 243001156 552845231 316221026 121516062 322847080 253654341 769686938 960194456 10360094 847807107 330482642 388932141 890389697 896713774 149462980 135194244 727632416 686746052 330571308 939926837 239696903 945853350 575812823 7139549 594391083 766843286 428973865 165490767 284826977 514909474 448797987 605724474 756296929 294713917 89535498 339082219 49880444 285141821 770578483 826815986 608852385 178446499 42729671 34624136 583032535 485988964 710713325 639759965 474866855 881925867 881178808 47257205 161848008 14068729 940084359 820791157 715381485 598354413 910495945 833523653 188978784 433851816 402858466 202298135 16578187 851503038 533103309 497427708 254957510 688735430 107342149 832894252 98094908 916849129 906737319 777052817 405736970 98114990 132428389 334298455 92953024 297487955 553045825 555555126 359729961 381489394 374316004 543245246 113724422 187551179 409385103 778960865 6928654 42205956 781997925 186197766 491468612 525844206 504788377 552727874 714424900 720853535 958865570 956512462 484595282 480175351 3927601 400925543 562754394 970552904 256870248 185026875 520566995 834056925 567425387 366399623 835221609 52613456 55466018 837965862 195054233 240188552 359979373 94894341 780376983 21210621 992025701 595542988 56632955 458199838 658140713 999337383 234617498 340706944 87679399 411863812 914385962 668966434 970013440 283171241 258695975 873576215 623251514 2635279 650116711 13078874 327914058 94665043 219904074 915482128 129557902 968623166 765698389 118970421 590997135 248732280 469427474 62356777 436366662 412597217 584212094 870583344 484398188 106692136 837921500 559609007 361141512 220413346 572580780 121204590 542869808 312370060 769725545 490453609 812076778 112338100 298941368 690944444 718047351 501505770 866212249 419719782 608683492 828458910 881546695 973752987 677378622 58850350 124394330 805678746 195538634 789531524 580713238 485510532 509048169 448996127 765445931 821046512 979482798 588806225 879431552 872955795 879175946 881440951 874674576 483142947 700382003 93231099 122893340 530884931 97818958 660311443 679326408 814022603 4095133 587291319 192316024 645119947 618500609 722339911 184087084 727887462 110474270 874570460 377441635 831773194 252641310 756022815 859654395 593745806 698072903 741652058 725344013 245798808 400605383 948329290 465367774 848371920 748546235 635520544 326278947 377067873 345963482 177504719 942718110 340939170 119861625 109094007 315563934 608982422 72230404 568334687 817061707 365309306 659002463 610749529 159229502 166723184 871623595 473108179 757630720 200717047 498089413 165271976 724472322 403138166 302599416 839827062 70504343 789070069 803725369 368355263 2340694 879675723 906506954 595141196 713364310 824454779 537043076 662364615 735521479 903607478 949856754 410803498 892668157 992636585 78672136 495756234 497652990 586198407 466295650 999212731 134157889 69619206 829704390 571459108 69266270 471479378 470771958 247116420 732040879 954948152 956504040 221230251 821784727 709574230 798921140 234121810 324945052 881900610 590523635 222347605 709952610 400605316 400569522 323431708 482124698 155561227 630083439 882061775 636957143 207964599 674642003 359769976 365129370 119109081 843095963 534703277 248349231 813251868 411686407 617208092 543460836 412650201 28148763 606381563 602513941 79018111 805519065 574611491 465293903 99950195 588199447 243017258 632380741 674450797 161404263 60378538 421702226 734425817 871821715 202477925 489695691 111970600 585985510 114721451 680224622 343712872 870270648 922524079 889952425 162706183 321037830 324995248 607606643 364471000 839424051 173829059 994522717 475309983 223241947 555213073 926115833 828025803 261137118 451598543 566184928 13100353 129896362 717393659 180079333 141062582 316253994 302427519 248865464 801795610 766442568 836494217 127823927 170428019 149800611 964832040 448761114 196562196 779981319 722109206 632231773 911840934 420032714 209080126 523414322 627961607 148739855 203445501 558214040 482266971 765108643 401064926 607580136 413168152 116996578 774717655 528686333 339950818 698134222 564149432 125772308 628134445 366445637 698973876 427104495 827371667 289731878 556800572 498333384 9911298 722911801 404171803 542440890 981598947 25547607 457719795 556860673 573117758 187280774 995157830 231827221 389738520 881417642 553520622 163846466 615574523 123840832 876165090 779846278 833751453 145729675 298923264 564526840 57785603 699079385 668392205 823609874 152491436 148446915 156104352 742676234 668669632 965654012 778030766 745332903 425866375 678395364 572602385 581010650 60019810 399780269 752687359 778551796 446624205 163992681 631131298 281230286 517014220 602350696 932611493 818607723 876836764 513310806 573131073 268807657 497032209 672042468 931623687 960709064 9637691 42913323 604592615 398267211 94759324 639453974 308429717 130138431 164762830 271279538 284158685 442753757 768602876 344910466 25120028 622992032 689711711 855689414 417128453 9402284 443521732 536179797 9886070 683157691 541091108 431007490 117882724 748777969 897484655 542551780 570404062 819787486 210803956 913288154 388888749 494373334 388281400 570343684 797018446 954519233 137176284 511901220 719934249 841508257 643621682 50253940 905336872 667311818 286163228 457266714 769623196 116368503 744961166 330374999 881235635 396759712 898496702 874475374 453667514 16176644 7725159 552622272 371623751 819765828 397517526 867130299 803694710 808072889 758830614 383983685 99783264 584395762 15425960 873947685 792902353 717039667 107571009 942169350 267183185 783254976 656365596 53238328 836388414 486597121 942683389 834259468 743744968 266840940 974860217 216818088 322556507 339118179 33166294 251425162 217449958 463389959 942342792 136789474 694824286 458482217 492923327 965677943 276920393 883081403 855809537 5356756 530083149 541132595 45194738 475661203 334796279 168975204 301119180 953772290 564067212 239096167 817635856 104241907 179699094 316566788 700030862 782008877 295786077 940206402 548229075 862311830 39668292 600231324 498870228 53251969 88848561 218792778 605381327 490458138 960476634 757575697 935538482 750725575 520867747 96375921 194696902 515511271 250444273 563303383 926462689 702852944 886616709 496349312 622562237 674027951 366944460 823778302 103677572 959697338 341533396 313221182 375660616 889174425 911088573 101643251 684774667 194963219 889763359 705382883 546766867 936969680 555875134 920286360 622428636 994965167 293152588 158169765 198977297 258636516 618618732 989488238 160799795 842278835 556217707 439049108 730438094 969735315 487031376 818959900 703256806 532045308 785058201 367269510 499403869 810834232 461509117 40137634 849357033 38255728 808639891 980847600 401501522 537840078 442095757 699684102 438313628 947405126 561868812 12909569 641742521 444031890 466805512 662032254 562297380 38662599 691368809 54689630 277634589 556982269 846111796 435305177 117566207 944610601 62842617 912428125 795666085 585210034 18830733 213249621 392585855 153270793 223118510 762029309 336481759 369555545 294610011 453763171 139964831 145472083 233105872 470220832 126802258 962841682 873167056 491594228 430011773 363014710 844684808 875423480 412755418 833370080 527761030 277395419 70328541 641579118 788970379 151486921 822519240 288567057 814059148 142049939 299401180 487866767 895070337 799972279 583263197 744104038 399935661 904355196 226524404 636377788 456810211 976043544 906298103 679233473 302306627 651982716 118827987 979859708 563315853 84915263 507805143 407834812 395045883 404951089 611575347 99790772 846139360 716650369 914373540 890823670 974732086 221535239 84412532 297321511 69066013 198518505 913576498 274341549 673393869 593358846 372111957 386391353 407200718 757664164 317222889 683260329 121594630 447494806 59690916 298455817 364686941 304411019 944375638 396749655 716544432 182754618 211933761 824534691 616243837 564556340 192813245 193602560 632444768 814096174 215469466 560679437 921369270 123113062 954768389 360613710 469946036 818101166 211117333 80604394 454970101 563427038 881556050 732420422 223849790 317428739 88813884 439314040 408935549 968335298 273644960 12310547 888882492 156629073 433559803 437495006 285449601 44907071 948285823 142809440 885547087 360209695 932339808 975018509 196541955 902568058 538011560 468884723 82358032 456632699 576358471 272554116 599431232 643217250 249852142 387272591 484991192 981928419 964247085 40581187 992493090 598128174 21403521 119606547 841990595 381510611 764037039 698604082 932941793 788096271 542640064 601889980 410598155 189952749 255818241 827035688 230359520 50741649 301426517 452622828 913560986 348527676 403705 914140623 794542721 130825683 437763715 78062644 911655103 908161733 704559086 688187647 730084928 773556133 136581684 995762587 431999480 372218776 682025552 282274948 796497407 21874930 903924152 196049100 118007124 654892993 682966520 528335492 804829640 168259112 938855321 901422944 931989059 279330176 953002492 939003840 278837985 962663490 708894225 884589964 737081787 888998851 198233275 441638567 367130610 224284710 557798652 180977919 994820976 129710013 626457130 220703122 958703380 378665553 669925097 213976927 839362005 486047041 17756237 130619725 498591254 408206705 538134195 571297222 424580078 548377254 730840715 410565674 282985082 46005313 116132248 787460555 369733718 785673763 357372817 757758485 569885512 200297111 535306788 780515318 880581564 768257067 636893099 19879353 950622296 628835701 875830554 97852137 266598018 254482359 562243803 861589979 815880016 775918663 921546436 757895373 751793404 139089875 32747213 909795145 990873295 331648479 293378544 331627187 533920336 733209159 404317672 783298257 227702771 23320910 684410592 803029392 62537123 284273603 338007295 702891961 504683219 893502636 54565478 784287331 687367258 875244098 562724474 514729638 44395599 926175291 541332146 91233290 920493802 590975916 176404675 707337162 53553138 326574940 848246972 876083577 393110890 839891822 930369822 722040641 85803634 770591305 915107125 166611605 545598211 24166465 929173344 88118476 182417241 627295765 715537061 315898327 109020038 739533664 213780316 715527598 926382091 364507218 889294720 110520084 867739126 216427492 4273384 149503594 494056279 654753872 185113244 59630660 52619448 999894810 883689065 852136908 153005938 962605894 861174585 536960286 193741157 123819180 514797190 77272595 438416856 480241764 116076174 570022020 612261064 347743794 816499835 728641063 107423036 101211460 489495775 856889187 424971327 691164063 409668674 419041912 907689584 687667181 19119929 434177805 353158942 103338495 134594186 321234550 908745098 970805510 274868616 725882877 579470024 392177436 995062233 804571184 607120298 212595680 728879720 312774595 57133966 480361368 428535998 10932926 857240838 366851189 453350747 999640851 677322287 168412414 356988877 532776683 326539676 583253575 285702532 916211682 641403809 363241054 583316190 813843266 630731691 782520769 548765776 51466463 304335890 458641156 235067799 655858794 486088735 124380810 115240528 115235731 8320850 698533229 219871349 134424429 272379718 180774119 38977859 337321339 311375784 379895638 14902168 505042260 503516907 385749228 270413221 889965341 412156799 884825470 967570213 922988352 474649156 502718019 231907013 888818637 326294135 623122593 703871513 348146296 562740950 770214311 82621170 277815646 310230131 769338236 967606739 45510512 609439605 469645468 513395529 962360244 521952275 318008957 943974743 229052335 109100942 407359701 339118495 291947569 362192026 257279359 282997632 145560110 352679939 236201557 135880013 275580483 841960958 431455595 294723435 313633202 892778538 977790910 295092053 682015203 497264009 890407721 472142010 25716708 742534257 204100742 41454255 732243874 477699388 268811153 226850255 610793788 991013849 439848731 223877299 156334338 534691195 627022379 797070364 428049902 220250335 435663735 99275247 829470234 286810646 638869376 773140413 551821257 934746719 404216380 760068544 771428136 536862987 52795552 986470375 688872650 3677866 781938342 276652969 762518145 669438951 262054262 219747800 142137335 172401210 8901055 459485090 8553262 12851219 772295443 522082867 892199771 15968108 327661362 844014301 469982214 683048325 630486282 63620782 228243104 532116855 937610399 66527030 83693677 773730676 747592018 378900653 530380007 194146436 982925846 832891503 294547828 277061168 935051978 515113810 777188767 336410131 963680175 717141200 295221314 169102654 384624944 978016924 560898405 629131531 764376993 36100785 34914678 103435795 36084766 218389733 351858732 137468392 382093580 569914244 974494901 384022761 364900463 164753122 914965159 331934268 919724189 432240537 831916709 680500987 213161510 924307165 431479397 514313062 909619502 790958122 712887136 315367666 962086302 277629286 84115231 982961934 4397983 675871159 98361026 425359377 462963041 564560099 335137595 732211625 185252857 157086378 801236872 493266269 289699910 619300185 706154850 524249349 171597189 434861851 249638953 292134615 784941571 983423015 61509416 916218371 3321999 804900297 322092910 317054041 369848215 968501888 230845728 533917082 50556161 496174893 320846875 926567672 143640407 352063028 194393310 736423129 270437168 437720036 915610682 447998498 223233168 608523374 900480710 347767303 118618217 692463220 362630441 767784326 160455636 898011839 466230494 391119548 80531411 458078843 692381957 302628955 110465088 467321986 599061090 180986057 486190105 629432179 389134773 688078437 914008874 624849039 771153175 101500012 174411637 532121036 758817754 385157534 285281982 883118856 616339484 937631310 150703101 944935492 464131673 330584177 406514296 236374744 805311797 734854811 427038434 288186038 708358162 978651102 648875838 118526381 785642581 202113070 553433014 451283534 890689724 623561337 510733893 90641759 762727918 405787431 354886743 646538126 866303946 210890830 824016442 183598432 996009565 844603884 575805194 550659067 828704339 324171134 329965757 369158332 499512319 679609294 735213299 822300810 588167643 554544884 927272191 139294888 824100374 662521258 431918016 663350279 732085582 158875852 587790406 974371913 862095988 705786083 508372428 580977971 430797193 311145954 407114386 582319698 866197791 283216414 876842329 129824528 979032794 595438804 414448868 285551807 483165172 821470874 93588359 755993660 125563800 175300513 976052834 288497071 778953842 904708177 23598325 470850349 118594417 498385061 723945051 767800955 655280073 345042008 32318864 911393390 217901064 305189034 922716492 316487565 798558385 180429057 849624825 164950763 88986618 69343705 216390077 208091480 174943398 583676753 33466515 984590173 808937301 805114192 89408009 97000169 90473108 178752058 846846133 249914064 993998172 530633888 864001765 730281168 520264102 926901817 173036490 478347594 313777271 91200430 319317262 378373990 238711415 951191661 762504376 336653401 826798410 300150698 581977392 137940001 138325422 615724466 422325698 396044656 985924444 354427275 122694815 718591261 288673958 118367669 789415095 779704285 484522683 350475510 550116112 758529417 70592988 385417363 953690131 633714298 432724009 621705450 732551271 978340100 344591736 969068814 374307123 947040314 124142698 605366730 105390231 730015474 903769828 669216834 946099816 764457950 484368536 602206246 214590474 796070765 558708271 455296472 765331432 297076415 800351875 480949151 499050549 807087651 625379142 806946189 756005956 779397811 251695841 697253713 917623301 520374928 959124289 186547722 428887786 510028300 678453276 977300958 378406863 187074437 207522881 714635307 349400085 845095620 65270356 419751427 691234435 500959160 124832748 347853493 791467736 459246793 792394756 222169246 317816561 393339886 727104026 531227152 552813844 242531625 70893201 765283101 354305183 951765601 686554626 370811027 471722205 513194929 521691671 903774471 537266529 238076708 118312949 701857121 48681330 996261857 87238764 104304459 966305012 178183222 68243361 156081833 929450497 561124975 342368768 128062210 188790172 769592568 989805103 755079219 599220557 875295575 572200106 732923472 895151689 170096400 387517249 804583277 638188241 465799323 663851401 495779142 486605220 235858066 453413798 885505811 948421507 440701769 835836784 40704529 754648027 692845209 17682653 204279090 332696973 922170708 93295975 749091391 407707325 382033724 560539621 854829461 558639919 191685943 527388300 252421935 862590494 362488651 580003216 1416597 627638621 727403883 739902976 399162728 11549243 297244553 332575576 709753813 925747140 309816885 76176484 99911551 715393566 534407965 322038150 127363648 731869504 495277376 180262315 907815486 372334274 279003300 301613502 732385589 143625417 149620182 391640591 698857107 531675398 307092638 308812634 443707120 402553096 54687522 918555081 325838499 957609187 439589637 791608742 804436703 994730722 185214737 662671514 913787372 325772279 384291451 417190447 644342102 812250658 33756413 925943690 709680257 756756742 458837633 814309463 264749364 212013689 950565377 148126878 470929272 642207987 125961775 280687944 36117743 594708342 453750026 693198520 575871528 554217744 753426527 201866923 852990159 947381246 92019594 322760121 127678198 835321670 240787071 668167561 403187694 203226467 36623626 363886159 508615425 260223071 917557061 819770026 125631857 633617645 185404859 707193687 460456128 6576937 200019000 699391841 338894204 18731016 723516789 723489661 248061996 171010418 863258079 122241945 40924912 183984579 685602396 994121092 549117786 48111147 84745371 902080861 271138188 795076190 243507154 199566896 823884912 772710240 751684075 435675381 93840022 562153368 327711495 557739467 828895687 252609420 737917788 480026367 590927297 380341560 348134897 286342742 314547027 331425944 968706891 410690458 726316802 767467292 264361126 843718364 986223163 685681318 667863233 286648174 654135045 811066813 972483234 822011028 854565889 358947438 158386167 52272055 621462364 739697032 873309373 475060996 217156619 705710496 15030514 65144120 676065675 639523145 366545158 493797333 457873953 954893875 637843478 780585684 68071041 29891568 953513890 987072049 252456327 821188784 448448937 691038636 100064953 422411500 845641041 141426164 151583669 251557873 854552868 670427827 870512474 678112565 860373036 324377364 571111235 693275505 659566867 390081245 115223216 966388509 422250428 249652914 43616289 196126155 767913198 16860978 942903437 942419350 492099745 293087827 606650042 528022899 181417780 429552548 802643697 862254878 434110879 843689173 294108521 212050739 843830021 381298658 760615495 710664307 266402409 797100157 114423829 122298066 983703244 643356320 667544529 859368319 42407824 440832789 138498966 850945275 396598274 250894400 683628388 289401596 12069191 945306997 546901531 968844420 525408134 229848284 826180973 487371248 585315111 645097781 502809516 30077101 487029308 638142585 574284122 361379660 764983947 151714588 717703586 53020033 494987485 122491401 52968827 472187528 48818428 651474266 690923697 69578387 92202618 653834045 731009015 192710246 933736063 402777934 813653984 20058849 78275358 333588066 356996270 637852605 695319189 712101385 8126709 349916101 228030099 434882815 829972735 769573332 58079390 489274723 176309825 270999746 2515798 761614029 395349315 628412996 109786843 240682725 879036724 957380929 319274806 795698027 183492101 471373780 142112974 268666457 889937575 134232884 343506805 560867818 695879167 129445583 75095356 527966190 20755958 331213070 719074541 187341932 408731559 50658554 133063046 798255455 64131705 214516696 155110538 648676737 210192493 507966871 908172399 779899655 914971382 202231226 630554848 194183929 155898988 167497363 558080496 999849953 798918818 244832023 861908981 407043676 234825179 5304040 426696384 159513901 193074413 118033676 409058540 436673022 38887824 269430863 682390688 42560003 436594520 404048255 308543473 226732004 801929463 741096138 928805203 502466707 361446269 446245710 143805911 235957960 310583680 940748119 966222483 835381648 748847039 787093197 491753949 507052666 525479575 784099616 708293966 178411220 257472178 512683100 496125499 635213853 945501557 773631024 334484269 363314370 401585800 541143045 20646155 642512927 492374743 101763710 953197721 102715241 233377960 305456010 537140141 148085071 416798103 39374301 280366223 927366714 785344663 535482438 186868963 660138302 572773089 75261778 374281898 64100168 698260323 134909280 632320916 800104659 630199073 20803822 166550079 904668000 627296765 220106370 666780227 72517361 678609960 997491543 855092725 702398871 76449015 496535717 77708356 173155114 530873514 899844202 802625505 414691824 842564228 207959441 274042023 928162304 466829497 200147461 663590478 924012658 210639440 232973533 996058492 401022212 933357435 477564731 234410855 106077121 250287037 8932210 728577239 884405391 462401006 872718735 168019063 110876812 135267670 334558810 141861757 292160844 61342306 937277424 384336817 421372091 323631469 714145460 984076831 269472559 294679503 343527650 605131925 437721010 118377908 457948115 333444832 364845621 60485665 964245098 957246998 337207170 528892761 279609622 317336214 679463138 131141493 291679412 150894711 791972462 477685523 885809965 256202297 140887915 548475641 304391674 641457542 883923410 904347547 489766700 729947410 801397 558300197 472028903 447196985 708924979 306093548 656484893 433867885 271422097 564398261 826127950 546341129 505904436 172576072 256533835 157453079 256579566 424269601 196116684 31096215 418815161 30421810 784025874 462114945 759182230 824118968 860142510 697219258 725455769 652537118 919900496 322519903 281566499 707270946 891457521 682133395 342909981 184404048 498538882 866382619 274096297 832230279 377894489 215429149 782918178 173157861 42928134 433999708 305720411 356327137 718804499 900357479 663207699 475202665 749557055 406417363 527208743 293249254 348265208 244906256 164727031 279509806 879276807 475957497 624609782 346791769 657281756 177907912 532533512 1215691 337918226 568067292 202726767 691859430 485562505 668825584 185685309 204388466 926372785 411628950 608419433 406336769 720483841 183153479 852807334 869592612 993166659 904821233 955045533 606965273 301796816 752232290 65707453 685123705 559284199 57989333 558948426 554091768 367843248 710957036 352863309 909505385 486146077 775168525 874464021 790480120 505095929 482776967 803015170 784425378 620989703 680032824 276086001 752729750 466429301 364521584 496382804 44829165 139382901 449075773 670135040 162121133 289297538 29365715 798149890 223621606 189210176 350415177 187200032 986070133 594981408 871199051 681418779 125262672 355540988 797488394 329741925 51640299 77023681 321842508 183266548 938975314 249780721 749093602 175167096 116242373 712445728 376895877 422525294 397868715 357456702 765202381 323744854 826234287 772848033 28035268 844562327 242193311 23303579 812496930 601982400 615269333 347654091 498935968 900084223 971720438 743272810 812809265 9219919 102358634 341791726 370956122 260385990 217507723 881963193 721853389 8938874 179543032 966349866 10006599 543068696 590146658 964204265 436302479 620097049 232863719 326348651 271196309 687735948 96136609 798239208 663671262 850893004 406961556 696185117 208069810 386313334 441068222 930135579 961281286 860510620 615511218 241921380 193805082 10925014 977205824 721682844 432051573 528588706 462443076 58765656 928388434 655262638 187050131 495264791 858015430 311374224 993475606 663260984 811916500 623132449 94216722 203033203 634024726 286294513 800367229 64467530 434260141 128374167 701059572 963504173 545696258 984847469 997448803 700049151 598169513 645458185 334260377 191602617 360587520 154595835 34471349 387997925 136210073 715652502 744956290 897058389 845409248 794289648 581682186 622245468 473485886 170146926 480009832 727755132 329772717 201233229 148672063 417984142 78220477 71165484 134101935 457784278 575394286 777119653 169903612 574007919 720325524 156588456 579750421 415887438 311189248 838287145 77293103 35892912 220822600 758761511 316817847 119558556 41429265 879469366 498920763 528693518 765923719 69279237 996491773 683367641 968235308 260151703 552101766 375471570 781292655 847388057 924216155 230519693 370471989 537149282 375836977 390879375 279179644 816301157 46747182 228897630 592730179 618245799 200177976 688834182 826882907 152276367 600964751 727274899 276929618 39877299 401301624 122472667 834233160 976116352 198903512 976690574 649296156 972987325 550570017 950174145 604434780 753537432 826573380 711060295 270317616 830787582 591157056 20980735 129253939 299474785 109405953 453245007 681553111 908985103 438927489 346841780 471386128 928769525 404489188 908099917 823518015 134786502 726366338 920819297 166611050 47461404 851284998 492493964 966559469 349269189 552565553 174481126 953051604 703085858 624215409 119629286 845673211 750938354 858759709 11119393 44048361 955759056 932799505 999322650 554363659 398529917 276297178 169486276 796903928 384456206 403950281 725635976 235507005 32945663 489975530 636850557 529901829 894945691 831101506 150384186 145864418 429559109 946865927 88345586 709385506 107493756 320744428 403517291 288907381 918329824 153296569 282447603 557978753 360647581 249589266 600716017 113788357 218782713 93943382 501124225 965315799 588386345 173400246 268857581 413195099 164446080 805766145 132448348 302824253 461852715 64486745 421784496 11201319 950966925 696971770 962943470 195298217 533715475 214021188 962913110 344795046 14264482 914808358 989606518 806570384 894152304 73191563 827287168 548661276 447148735 533513863 59849242 665386092 960806248 289824839 613888661 712410890 862072600 405800499 519550501 556920296 655695320 399172793 258351027 88318721 452193386 262518870 905762174 600306511 172957843 818728260 378627213 807687626 130610751 560898810 380917273 589206606 331545317 628298034 309767955 154400712 888635836 705209440 899137212 788642706 236261324 107687643 531710366 128592723 729573993 163993119 772796846 998426293 625176086 333749747 566575809 741063000 782041771 214830526 330017534 898951509 822377714 157357876 556304697 438870057 19892500 789148600 80524331 704213953 392565048 161566799 529656805 99396513 492071675 740100993 497349506 86881806 745075807 119565034 556994125 830003648 862879602 218682818 879885877 62137374 169310173 353029228 457567650 570612727 919845072 621501922 155308935 245469538 401091063 620709751 344837957 839195566 678030869 802041770 510652199 779736487 249878108 15105434 263724601 474606970 96886030 122436918 186218563 688355130 366327189 544278098 286825556 480427437 377272037 155319968 30790042 377014121 819603346 8453923 490601343 596782713 886386772 443029893 430372526 743227823 593977497 378501236 398432268 885736498 404339520 606554497 801779705 796263792 116192384 286518137 913457605 521225701 219254778 132874920 864004130 970937606 147211847 880296287 760582858 326229171 627386357 86425673 786273561 602600569 939833323 746363956 474903948 120155495 124570930 517943568 201522470 892750463 733121058 775057034 497045430 5584157 743351659 613508584 880358987 901739620 997584827 291356191 777261801 760556504 946324828 21391789 635692472 462508178 853729803 762933260 42430547 721395048 562705710 606590595 149787867 270948789 23818407 690441933 409089381 46929425 595130154 565785200 27414126 132376959 314127839 184118034 613834035 482936041 341802653 336018688 489964935 578398811 497485992 672614990 740954193 997124349 4443328 361548024 216527742 96502718 939437901 270232152 327942843 681450294 117338137 404738915 685128831 450912269 933779889 858550903 278554104 666159126 722837067 687092244 694228818 539738690 873927368 847102297 397432202 489749858 81946014 451970848 231555984 992214775 509255393 491742400 465566101 968605008 961466989 873532678 530577208 728970396 88230093 643355903 835119054 494995457 945462856 251958531 771726604 491406006 321045316 387406801 246109679 205430029 443316251 535671536 555455549 567832352 827041112 813876573 605103700 924056459 55797699 192383517 965609280 601000517 657236062 206413814 164899123 772315823 346261626 848636762 539637966 510363555 534653059 808405225 568686282 699253574 448906912 810815250 180336447 460106967 88422604 408711906 567165789 718778841 558698400 771874095 896001924 45321335 647386392 48423463 935671884 568144973 137949202 996822812 673145350 633822731 798878628 484705406 173361786 112069508 174123974 902097939 662773307 187745940 958979213 285734417 434471071 873126154 588839857 839205841 207254203 562351895 444988008 446750656 385311291 569558431 930574630 140091617 988505149 624437377 29788445 706105328 29136002 156754414 143250726 592175291 776222249 30480619 921595846 292800010 679572997 598528256 961878366 183421496 286733585 398583944 298109837 909496919 760258659 669023670 815454342 352734873 703145462 387024821 804225996 264012525 964134676 343296492 76306832 656684857 551300297 247479525 363028403 178852516 370800696 854706089 715990008 646684229 771433624 881065489 39899530 823781803 666696220 265383675 943447856 989764456 552943307 115695279 792684642 849854083 340054855 731947850 831845432 84857609 976182391 291020499 923827656 205210934 141403215 122841380 465435954 831791778 609017641 34055915 909741612 365839014 971811790 368303496 805671207 831673581 481282062 877489478 527904114 213852921 597128213 889925542 842668203 566964504 516351797 365449476 143705670 534689496 16989281 170950781 356964677 592200951 125353317 841452077 799046276 994518737 623287059 358401434 639704642 626824406 641512060 78886633 397827960 722011339 465991142 166130504 448845952 367417982 507668344 700666621 70913980 345098257 531941627 851361358 272566193 426692149 914989171 162221781 302829410 733513497 519669110 709469200 226816102 918792606 635385204 302642943 367098664 538359466 688866609 811274626 728286028 113956130 426323191 13901035 405386247 159551669 515010264 121576652 467779927 980265927 693351993 378281437 949306138 248299863 563467674 698649187 379881808 372740014 616473534 302373531 91684323 854039024 154957290 593042036 814352396 352731374 857713908 427887374 377052253 857266639 586482418 798976358 584482752 43981011 334678682 989315187 5139128 404240982 264044989 311000116 806763722 699885206 282826157 226960971 199422081 996667203 161555281 696903643 546349488 569896464 649816909 19241533 915897527 269236822 638692674 545073102 408300636 279852450 502269215 217073268 916864716 241577504 439111636 644679397 182229238 725567183 450355436 764739470 930830027 84961037 201627597 678945596 228679666 39772424 687404944 105639121 325960754 904141139 957956717 777959507 982322074 429019049 621079852 395013579 277640524 562294965 337678812 511928911 785884014 58335296 964978947 118558516 129204359 354321770 383332284 106040396 25947468 339645365 28777207 507976615 432254529 154475369 684227308 261376377 607261275 643548382 190451215 278034737 774361921 271971796 71666183 318936038 920092546 546002183 121817185 867012719 727616426 863010257 981801787 642905122 85925052 195547287 767159101 725806632 963063576 38556828 657143985 754415874 181523427 208193081 543089952 137899086 22651915 499585087 170408548 127634143 266585143 32672866 955728656 775849046 799401703 349867905 584019961 259895179 369250544 371866110 98316066 113041064 850944430 433213060 475107605 993914772 551604024 774263292 455412156 323078156 317420451 499839850 754905542 633852200 803369358 345865096 162016203 841660562 762697936 701576535 793185966 355930910 171742423 268517541 799801897 730668921 434479050 469179955 12998637 896882115 879950203 593815225 165672840 541572529 423233589 201177662 657375647 593596166 103679156 622268986 300719030 646163636 380808594 347614075 981084808 350305210 248626680 975817781 963136169 520431187 316917939 622680433 880699734 755700816 31085029 687408041 476656203 597713484 458165247 521575957 15779685 524412401 417809449 225961380 433856298 74168163 514553931 727268805 266088868 196257229 869437540 724203676 460720699 57474602 788000109 585722568 293293008 658787077 314846729 718666887 847132540 520410365 797508763 538133889 121468503 460879143 206237549 546868864 352902591 110502020 887114234 580977357 671911459 959649246 984189193 915660310 34033004 634170634 434735383 726111308 913068119 448294493 660076294 594319493 452912427 67124751 26008844 438510596 884371778 505381607 185997905 479471992 389796148 422831225 76639402 942106247 453351443 446023991 579204821 567485487 231463917 807687259 349848298 725501820 303380272 452090395 393143424 428868024 298905704 258077362 832797796 383755169 760699827 815598654 552554317 996941885 746754953 353545277 362636268 25163824 459061392 69479122 101827263 597978975 986251868 977633757 604042925 618781044 739072355 364734287 205527675 694332594 181077134 318562782 743926117 354360971 326096637 114913880 65314799 18215984 72489297 402438219 550480323 471836086 847767576 878366110 84682718 559801116 942806635 667153883 19634064 746619879 953342837 482909764 334856111 516729955 755259305 544988066 321975962 973646882 972425044 908852954 279352007 107094391 58329986 493090427 37002220 127387307 477378873 663854650 990757563 467458724 402094667 853335339 298323604 286773075 521713152 742726074 763994201 465177378 116457258 89282771 431469906 191036953 258133313 719369511 8454496 377054997 71090492 18493333 984070787 662813250 616745170 855398283 639156683 754651284 465596413 418810158 838399011 941926734 650075535 571524795 579644777 255651219 757111485 404086899 157859261 70820500 152527076 199968914 451749319 612465245 951274787 477343812 952518414 933239149 195043302 372264066 381254287 450922030 813287326 985775773 881983119 29635837 292566476 255523105 118188636 759894260 978294482 285206465 574845111 810218915 378085452 919249443 616335142 956338793 896273040 480124937 132473130 609555877 955135904 537742253 759348217 205909718 606471932 458466404 224332688 265581785 46994018 722779844 632955547 345621839 978627368 403182786 164248827 704995744 752429469 953691558 869474085 630657332 889061025 924279626 833025243 686112530 222538948 327584891 344407979 847604797 374353467 626447134 526053825 478118717 618858820 378006376 66315704 546651488 941057166 993647789 585077387 949458591 863582986 629721782 796408489 721927252 545698115 540805243 392673965 461879913 649246697 612820521 871919985 380166341 68534632 309958176 460253517 211837677 737883934 174320613 501782769 270314237 899938870 567017508 948336879 691043694 855667275 975040647 429463559 516310775 251303311 968294551 676235275 104867244 554945310 969296794 529956578 299274161 376350687 272418671 222600243 91853693 585218056 54563922 518223033 347688306 516339485 946065811 736683588 548335903 884418183 885856165 871104642 595521856 857200913 108276456 602667507 841042377 386260807 443841295 86618433 511542899 437143018 247944419 518400975 942281125 599636072 387230758 480318934 267879906 420875023 243827076 452823485 125487727 783438555 422416440 821692836 653127335 787674689 639344240 258741378 157250501 65447864 879724865 352196271 904034502 466233126 716536244 977601325 540939868 735449751 340598905 112573903 432028597 490822489 306944098 207927079 149602033 514400350 240539064 504427192 118897082 93010874 84550288 213772902 559884941 616613699 413493742 369370659 274953567 941662682 857291520 777855560 858827143 7950586 100300143 545586460 923591181 143436181 779590215 994555609 102490616 600036263 31411406 732266475 497020773 617793528 435163097 206598147 535089136 323190485 52550142 315944050 388545335 17513970 531485645 542496873 401867625 87683448 754367420 556725394 60632562 716555007 592864417 987929224 448237543 753452782 788021825 675982963 152971732 281718240 909417965 329032113 347053543 757171110 892784331 225567939 10730836 971455027 896766664 44096783 827039797 760695599 435596952 772333886 170097815 878644049 931639782 165488506 84447275 672243303 188636300 559157383 127678351 773740183 673134922 446372171 140081302 726374490 982892152 993171121 742838423 420528882 327599478 530172639 106465632 25376360 168134523 880413542 672246808 949727507 508187905 6847327 44619476 210826302 410227141 584486230 849598809 250736400 652782741 394625603 535502666 38233807 779142882 444780895 584866751 646626167 239193272 601070701 9375265 806760306 644954383 369685626 640662203 359595820 250451030 853427346 144975299 64799367 58791356 448560115 643823969 911489053 823823176 564312915 754349925 27265196 385624650 947505967 43463850 49241772 227878506 560624818 113358649 843359443 485261186 164617412 900159530 962753714 880530067 381556599 630884387 450465871 984143567 891283115 536742333 897857807 558811928 326386816 388913830 996860798 52075147 65253836 13037211 738584031 699246770 87532981 728109243 445886789 561810151 833381106 858595967 732124192 59481119 101114791 527587280 623233659 344527890 543342666 298395353 508509856 203593639 313938540 963256106 281482689 368117847 493554876 816978567 911661095 874172471 489331024 852170533 320425692 715089622 211120093 822739221 641580256 737592957 267213771 843712991 430291404 664045091 715558474 982778649 447405003 745823100 292839437 716235371 60994271 905124859 386207380 148228225 870481776 412312655 987443624 74136253 549740279 689080867 469841189 824191668 651818020 197491236 502730565 427874005 63329588 857609920 312476323 362468797 59226044 285386827 523258810 74548251 961981401 89817085 864020886 65470838 153314579 577121978 57796070 969463280 852545870 457117397 319457593 284363023 521979180 884393437 964171888 608106173 702301416 685270380 656277435 971541697 145347193 409607962 268745455 125712219 208326214 894281846 892274773 581056794 326605304 989902032 769642082 136744408 493999250 819937857 155383132 824165952 668239554 867133645 898919926 795276317 710103397 314208205 428595466 643182049 627167819 395043304 111953601 150844703 125914658 205405953 862716185 601473053 963568415 24738696 483597496 89383669 175431860 423862137 686461566 760713087 810233566 683379522 964107411 926962937 579064213 556469797 816221767 974979239 877820519 57324732 683861693 937785735 715158144 450747241 72193272 458715385 29129068 277292083 93957240 781579655 731002810 335934606 618162284 218607295 219446664 69582257 832616143 841201584 157900149 354194422 672584211 206093879 209216697 444866335 475253551 282790745 362348855 921552918 567009901 733441330 592011730 770095225 465810281 231324823 659591414 338057088 930582405 729867705 391683683 80878797 167820960 337455139 140174334 300600340 218480285 737625511 834834311 381348711 60501960 163800218 791606682 659450716 548949196 613271908 518447235 939478227 887396444 650681251 606888697 90968823 763200378 676587439 781316120 210237289 209183674 153633643 495035248 150585926 142987121 751346094 48215329 456239636 874162745 127044811 489103474 604241321 712922224 986443723 425677145 148368632 323546848 847359642 321060347 380749797 541068595 394391648 248817578 982463501 421953821 975862054 698258843 98660854 234455782 118682050 392138876 748662525 134586862 861510138 796859148 414876600 357203633 375693056 533507265 957891764 837022623 690565214 338700411 28210849 314029810 746424247 418666302 678634752 737485632 897827868 900656341 716328616 994163420 210963710 755725487 19246249 418862145 89311956 116663045 476485037 857798849 294544706 157702926 180375144 161810879 439021356 56322986 680726114 560568434 409971925 361070068 861417329 811795337 218540360 96277698 513307024 888409471 202766193 514203690 643806206 980352886 488731354 802565959 41178640 185527774 837119327 446894425 831882634 671973373 386754874 323063016 474342951 582944974 398258204 514607099 78656880 488514025 241501771 923507048 490509539 870476789 11453996 265176988 392979721 491450591 967476745 709251114 846790226 401770034 528285773 678834099 910420133 828747566 172674994 786751126 64435499 239167575 930266086 521592403 754413612 389630159 113922783 522265043 324171323 16580373 360452436 158908612 474224114 806540206 943800172 438364728 862864913 983134800 192781982 939087849 110910929 833754394 56598413 565061071 463011285 522376651 352470364 164676351 121222976 92855418 35653272 850881228 541032662 75110813 46949441 115449557 418349085 239511436 816833545 529384686 532233772 989721691 967850538 987790181 512094120 931435290 829162434 304685200 270799554 45817550 506166924 216773264 542377594 604086875 51734510 621708107 778235205 1828294 922399260 986245330 906632013 971233440 994768879 696845237 286109647 992304376 391546496 329915181 845208565 752647748 387847913 552822419 691550193 840918529 111118405 523548128 634612388 814877156 331156821 35940997 192152822 454742311 685115833 362452465 343124190 900866252 685002984 561519708 596295939 170224997 717028092 283268775 259987854 622795681 321817643 419600218 365503120 752738966 103147674 298702028 415979445 131937838 27015937 449011130 796457184 52349637 854680784 76552379 645374257 540814476 283729026 536996827 609792687 695465756 424568314 433978539 697831205 569933087 487116495 248804493 11747364 111188501 478121670 738963074 901280368 570890376 87518569 924463478 456247464 724965417 813619808 254432316 202949606 425639110 387829884 418653590 81461176 392908783 80262364 122663857 305213792 928703433 726876741 740139591 313278924 236152873 622779783 517189075 425094239 224450760 674374093 248257519 526307271 725326716 98685188 474106365 277443239 685559266 169158755 771347779 257048184 112653767 782396374 334117508 473282950 299458856 189977460 221019493 805919124 90723630 730416664 108934815 755461819 557012227 163137198 582067762 622226813 490125441 189863798 606345346 220599511 388723810 838312608 520302423 746781145 339314722 916389101 931586683 460520312 33383848 819867730 715069649 548757792 567092889 520263142 770323331 385565086 749896310 142053961 227198037 338191029 526212302 638037786 48414819 84139002 899419967 986967690 706876225 191774909 13700909 351368313 7584810 522320389 188144694 631873929 407960123 986472209 196519672 403026381 58258056 965140556 198396987 81206780 958112016 647183102 769524352 915630414 897572811 27300478 25617854 673930197 152980061 605920472 779707494 501228098 650028485 996273665 165566709 705551366 465522583 478485916 508945555 664829441 743706964 930451752 902907334 324559435 643254258 288798527 226616969 195812535 315238475 3944025 885810483 251657794 470889695 631194258 907814106 918452511 400415412 59884653 73753928 60306579 92795002 762574444 418327880 206812959 32917428 995742524 811796963 39952551 469927675 439856836 965154495 163454695 783392501 808137286 223514997 224320360 905548949 518671387 834046487 31276655 374153453 425457387 531609963 374873774 368922795 358546334 747228232 782565870 822365411 697337690 166492688 17549577 11014760 853906058 495777982 59117584 333787755 814273600 823172918 764671790 281179272 573278857 786253650 569404304 343751827 793859092 168299618 86339430 202678779 94700747 163217159 127877198 922265243 403504302 563400803 764671116 821542808 162421463 569774372 202218151 231991588 816968647 195133970 281599903 940087923 962089331 438606443 343817986 967402906 427867631 622781669 512872372 54499028 282810438 874695684 772167363 745851309 556726604 803865981 904584512 665253354 170578140 514981092 284091894 513733650 244575012 706046099 905287488 118416651 517444520 212632355 896607201 347291589 149538114 233248601 977218365 976644153 426090893 43356194 459265826 677848894 81628075 565634414 293162625 491021003 778217409 642287228 563518771 758567403 897028229 939290336 756044677 987041975 447746369 896725984 803189770 238994947 806761297 346675819 543716229 791441706 830858640 486552554 789064665 75879997 437276789 972962553 876639722 528897802 304964470 798274564 636149353 93998154 785564935 177925367 766152683 155690953 531308764 687227695 572060686 887186273 558227983 628615523 475742933 712700397 928630901 828778197 344463888 434161258 684964168 144415190 22541433 777745230 221451945 204389452 578157062 79138504 205939798 698467803 344831655 891078147 236230258 220814361 777219881 123812561 734542437 355139048 434799452 344569801 38948580 578450234 307104773 532930032 773244986 607270672 343510384 534320982 849439277 111330300 626937990 566557379 156356641 249832125 719136399 59617878 570361589 747138579 150676953 43136130 893200046 685853020 122276156 278488091 196522576 501874699 750402544 892899335 295212680 701808658 198154658 647014788 580717056 708088558 443470360 685446073 911936700 538356338 659425778 747341751 66837774 134299705 451291870 878539106 297245478 434807678 916331291 141740017 940365759 648100770 642111232 754599198 233929236 516678320 287603395 126230002 266660442 812286242 653967102 191286702 764456154 198091552 903551525 544148352 939377350 442088405 557405819 61659626 619739990 963756609 451215576 574653366 887052066 817258352 54470941 747168479 116407548 12189059 179701056 866065119 477363251 272954700 287102133 508087822 996254880 674730181 82937219 582720896 668756763 843772628 475314171 226454343 210224707 258509358 253738367 369068786 338653298 14379144 852437783 801493175 464007366 411131844 283073922 502778304 220362697 813447570 392946717 434747020 460645591 535270185 960626777 981667352 890749648 65493676 441219886 444097354 602242449 280545766 58718017 990723691 195853057 23393308 941899912 964029565 115706669 901248448 160455858 857125499 379030341 777706538 113491647 457725339 303874685 633082642 630834039 940539646 667422625 528383755 876538244 384991175 463597991 216235788 898555974 99098085 980619864 545847708 101916236 916996884 583258800 999352530 934561980 101947580 616113888 877685297 652868243 724955109 871649872 60715597 162543089 61649788 72014915 551212307 262503988 373422127 106478020 130236230 824933263 976767225 886863635 634563601 248024372 193793548 734013433 427259854 265021077 751817984 358536737 69242389 875821632 269037482 354416905 725014649 773719357 327463461 245058664 305240021 625475245 619833557 816027138 451938593 480410460 61028043 481049025 881469272 979849527 620098093 70172314 577922028 718672874 118263065 893078866 73355692 120193304 459642676 188755491 639733790 531576464 779214873 869890343 997863907 586687492 123895010 603591148 342230261 72539035 247023773 560439216 534345343 587216667 987507831 844438815 521725058 70907535 102175385 272784187 605981451 315149836 658464183 225266534 193127912 88365227 390771127 233137246 341274555 478353112 290040762 920306068 376478021 849386785 583498741 348979757 460723705 661163174 550908684 51616807 849560098 819871189 906901865 56437756 377437848 168066183 243286990 670523231 831456988 46489932 685786382 743264017 749056242 867659248 959696942 286511484 293237685 730183165 492993536 391987197 777373057 277374960 292137575 248068845 158774937 222735834 65529317 602396919 302619874 981777905 249377754 377633928 635672092 333304081 454186772 190785734 406616864 668980611 337354059 183457174 15838585 367120829 810770509 892561324 612362329 485629672 693101636 724534040 89574723 730251497 74699537 515866429 263634620 732462984 326373171 735209593 596654043 87100880 894076741 595900631 155609343 801394521 699910111 687673561 114558180 835901523 399636126 229999473 362740717 915087463 526323870 637617104 161755317 818994548 333790338 781288590 536874785 324619289 498070885 78392259 457166466 653709605 968254414 630340683 627960231 873783533 56119413 835518080 867963240 679792721 349455045 263381182 98742114 850189558 618169950 810468068 91323074 783979891 914883222 815980474 787300930 5068940 612154255 366132716 147904688 545245042 60956565 189569561 321778841 228715169 196894440 49569674 195309120 23748301 191102383 28372515 365667538 796734819 516951705 423215873 685561338 915416903 928053872 672688422 847144216 283838063 275392706 494182911 216780161 836286890 83843565 777910869 707917514 150423266 302938769 259023427 53312658 674407934 482670762 488098382 731693573 749063722 634850323 656827043 791085095 406685090 309983867 955854336 276129060 323489163 806511296 405361724 633404393 105196758 388574460 571512735 923683656 742800035 88132255 890376393 620638135 470293908 550188480 362579437 60488852 965846833 823491730 344033454 454262167 982286041 505266034 908341017 495455214 534026559 622587244 300289836 894627069 367986323 721984220 143630572 149881868 150908226 113132440 601130311 631612341 815600482 386781756 599402516 963648738 608584868 748242670 378901518 418646577 830334900 491420688 44695428 531029821 851375505 610881364 260979559 497231189 780111142 52780904 151727380 558478494 613204438 439711290 627653160 563428908 656299311 660596759 74663864 34621072 472515386 111264836 39197662 992134544 122953383 303154774 709074741 439326211 363804029 11932534 510610000 505032873 785150202 26642487 178764268 157587130 694117821 122972969 312284965 452446179 22679538 38671619 252611117 817925147 605874039 691288117 834663451 979299056 58191134 993704492 160944728 543912080 344595162 873777207 734786817 471137592 414514478 226277669 502562448 25014011 684243160 712156363 937485836 719290516 247448906 673148563 949171360 33126607 428130739 417122497 364087530 640072726 72897109 468579404 823277757 251080957 17053545 817693054 693335873 88409092 794525180 85162238 520425320 493317179 38193561 17840284 554536033 306238570 896729704 439312477 231427309 5925888 548613891 47321647 784743894 941318103 48212328 993461437 331538519 434866085 118159219 207062418 333116808 359331734 850418839 653645789 590741632 484401852 892359326 854900392 883332080 55075792 148579851 192347635 708678679 6795389 57033637 824195769 460995935 776412382 648857068 774878465 35258343 519918719 48518306 166074136 994144677 790119600 774990517 124374444 172880081 167946370 18285358 806496059 176784889 901010102 582102765 841259182 865561231 593702287 296802007 372706510 457748434 932280210 370940907 339623593 157773058 482321868 362920141 303052759 919276530 749446549 442968105 426588494 190449224 662957594 640405341 283027926 499122021 87670892 96510205 258418744 545520159 823080115 611243920 795654641 835186156 532910528 145864153 352715882 836878104 531593536 78747505 630531969 990081152 587779122 791367880 570118514 828231311 41269830 336986542 541956221 900559367 187023733 141369659 479056206 247019830 866735362 985183835 400896854 121639480 165100547 705697645 320024453 222401991 113737725 737718358 90717640 358864985 228192994 419509763 605926852 249460593 336399153 792689629 802668525 521807487 406758541 639784372 157061974 187304510 381563691 243645429 341480085 12674305 566276919 478844662 759514117 307886063 561146656 994025266 859604912 683190364 72685042 802795583 608063997 980921594 825176577 622011963 533782410 31083582 280286173 699874530 565645371 687734216 425474076 460389460 308343214 701822547 495170937 111333546 417801580 681701618 379024385 385560458 94878316 806230228 441083152 421861597 94582255 221883027 545274222 452296249 405518831 901285695 522233897 747155536 265309409 9638366 454363175 428021925 703183535 688409881 933914234 523356173 679552745 278955905 879370714 99316199 408584103 351973818 278971888 82526900 131818742 74849119 141657858 672455345 134425988 139162783 158206333 729853328 362825198 650532909 917131263 152014144 122184939 82602452 881147238 903926419 315279798 491962090 912911204 349186706 556127938 335912850 774046239 648842302 970141899 317423059 432047279 650252179 217491585 417768247 858132983 913620990 33074510 680628365 501988028 885909098 27074589 430962993 236901633 947604395 294798092 875278586 755240624 546078275 478026161 32988804 463111935 243606507 41384617 898737377 432284559 591327592 92445056 72096231 875909042 869432500 557687521 666068501 14937785 45172286 422655329 161314407 509953143 442321465 217075907 536306582 722089907 825855027 311964774 353451198 873961617 561936022 231945859 587346465 416808320 559495836 994232220 201578295 525768145 633018666 975789387 1528600 740762322 25465938 959026228 856271020 518094105 21317000 215384609 886742803 139498074 363113766 596195546 22771764 187251532 808350291 863025114 316059634 257100699 389564940 532837166 334878279 183815102 526140725 680338289 5952754 177344144 721613335 414871821 447661050 566132691 829399393 49962940 991725769 55873130 78168485 519564655 482688316 66383588 744119304 933155353 12216298 584386602 264972120 670256640 248107806 395320257 102838280 908189153 888828938 559100909 128951142 981824949 760759282 292990052 741142184 649755223 938672221 190040004 645789718 555656952 524417236 768306304 299615578 234800706 921062036 728843488 451953455 71006179 602820110 400819820 609874790 466739822 189944032 983017750 967147751 60095886 245881961 246458748 852416256 124004516 705816057 305237592 149657902 307646585 20268921 497507089 437805853 459415439 87063852 888492052 22416763 878942527 990924308 294875163 694432817 195838124 856264431 455855898 283855050 17369293 821089080 428022393 647931526 518330386 899351583 171051481 867298837 392053721 697254032 90780692 524960953 242362753 117941177 875042551 574734140 312958963 87829768 42462872 781951516 629646954 573475892 856958010 818974759 619578608 398541535 935042874 286348107 594736624 445448328 469406827 393539481 703313947 797212545 62469252 833232143 535165799 58474322 520102801 516858325 327640441 750975839 952093892 372723206 846056443 511281788 765815519 732832301 657041244 540540033 634920027 353929455 95830092 35622325 839830283 582091156 321801453 330785942 122719206 341691564 596465794 974095933 920773180 592700772 24881433 434049666 451072488 314758970 595654331 832754025 156798990 930215834 954068690 588996054 662651868 275297389 985719537 170619259 783160729 603555079 611032421 540219706 984025030 458581483 447587260 185436237 613923475 752731836 952553916 955224933 8490957 495160929 164911841 746001955 128308878 928678001 575955274 953454521 889490588 923411022 491088152 776900927 411440362 596104456 157148675 769316620 50817907 998967635 938459994 667619218 302615233 745429060 136658082 380597060 124448074 440839650 33054176 369185206 652616542 246300651 649136410 335294828 535083536 378026642 833360889 547072242 102970035 962277793 598707233 358613120 191415893 315011833 309563877 683766130 193139778 690273049 581048829 938891767 803304341 247942165 777735696 681777430 840318537 313072348 181224156 760101425 712277430 818197870 630507970 54114177 225399264 294498298 980533578 523140941 741782311 200272981 76253298 631130460 552075129 99582592 987533909 496427256 624224668 713179560 846485933 640849637 377592880 988740740 813122691 803606819 417283275 608454977 286189094 684326585 221085902 338565384 211034882 116201855 45862671 362974394 897583949 739763405 138149830 419422942 998183159 313529085 235987913 780827707 119276429 160966344 949818717 374693051 803536700 335740246 283715460 270936865 629734630 808502351 233771591 21191673 44907161 237633360 866309027 270248290 849784314 611507991 337404152 313974220 248631860 527974138 766106746 426161660 270908092 542834263 466649615 814959647 607536759 678383775 159204651 362885247 845604825 43658042 766641022 504842182 680817392 890340158 727101554 206179709 761226817 293666432 97867694 629027543 225354622 33733180 656243994 970011931 14023247 303734856 571352453 399038447 482157534 624203974 677299391 17495030 803433517 765639751 731416041 860909543 815345046 390138046 271223150 958240044 490203092 626740472 300772568 625763388 232322106 471522325 978961656 412549314 467972219 287870388 206329978 349938713 571059240 317301624 923588152 943680957 126240973 358017911 935329495 121214507 625402215 498350990 781282295 274024546 643845640 778874330 568678613 351653971 199550195 364787317 622590622 73318186 892929023 964950235 466268167 617949787 228763133 834194995 381716301 828987808 144255867 719539974 908113085 836922868 549406223 139981622 150964457 480775799 866381905 954112902 323901957 842595945 381480583 983479232 690834510 557646350 344660682 558624516 260023276 773367875 912422737 528803269 995192596 866716460 436854556 267756587 697180734 543695984 996388037 269614574 493105937 496461963 453209772 581813417 844105721 680349039 895438635 982733204 430331612 419981806 281719089 271430471 257648989 818014203 66700394 286920969 470723114 245781546 999996126 281036462 106438706 848603466 622973187 269485739 282484636 421013817 220854013 112984042 303519945 70216706 556200086 688450000 719604682 613508567 439030749 115635990 13207181 33181960 591322663 609218101 809377466 547103812 422577343 822618213 381906376 258799861 400340635 467289377 306846898 699214078 239244602 529563170 326325161 696875475 402095741 6841059 347585525 149428917 703066645 632640361 667931926 395295942 219532351 352864467 493177258 71591675 998913153 368566535 682122380 824946902 971320275 918733575 353575117 442107789 280191545 191607715 199861396 171888665 522316735 83374986 283052503 158477621 558035148 970387613 140401552 852422637 558237135 855148246 86927051 153915835 827536705 830951494 767644396 372667896 914318659 601051412 193363527 655721188 221744877 200662878 746371952 187340276 291808800 181542875 415952277 760195199 120061759 227229407 712368164 55888847 291048648 457761484 482802628 688996097 729284571 879751859 847204373 619156297 789860981 246609872 487936861 347685465 923370692 96326960 82460990 806458361 95377720 607595702 140486198 92437556 395328749 56265514 388318192 313097124 653109632 806305218 312935634 924889911 379014821 228500326 550651484 279675428 691234581 267423427 394520311 339702281 553252362 721934317 763114180 542226415 779597659 465171757 712580098 657194428 960221584 719793409 644241352 631200980 610375978 287027470 819624630 387531980 974379304 255091679 443692741 310215986 670698836 431958023 880149262 421369881 681159526 104624496 364861178 787717120 508882351 382950922 31671639 449195711 561280203 444224241 337758456 968466617 834185064 689851335 140917361 716065345 840746518 907385431 854054894 43227178 56217417 54808203 304017965 810484464 553927472 544355134 949495831 222507613 619821904 486045026 351230875 656862315 94135615 270937124 338838593 765750272 109726362 22343646 70928671 402916466 172544847 568116203 930570305 407653224 940991619 908558780 864588959 641984575 731902205 366243076 754013309 662819704 815691437 890025198 20140426 681870392 885702611 508607626 571282144 231829816 772897386 600196975 522569055 714893877 787106647 875067355 208986351 753592123 563965683 355631342 491105873 601408081 661147851 126107709 9779322 565222964 732633161 494398557 191716880 559960692 90491882 711344707 760581937 931171759 298619887 716215255 330814663 966109877 318645635 865048037 456045699 918300272 680599606 853051648 96628303 759851962 939638362 939277513 521238086 166419702 900645358 755995682 973626318 897071778 793749213 776140840 678510147 286125152 707370451 439260145 636301493 799582280 941463358 503911749 428870888 766417228 349069116 693036140 706161908 985776170 759945334 848102216 330119235 737701566 194119014 540585290 698628558 900329192 150966349 120524971 663410617 219873375 510855062 629167306 550997253 601491924 937949076 937961021 358960562 154084346 526597416 745452654 955167802 663506877 481273885 943957449 148036283 352400581 287598882 400298743 424410707 42318824 70362913 207257141 968299959 64032965 687930645 196503052 907421122 832187157 303853245 657728374 982485878 156551775 894623091 756063390 797214473 189060819 136605666 675092382 550979205 712620732 631554809 319366871 388484763 239048088 972058954 731050496 545679280 216369558 212799588 504788048 695877654 424256158 56414734 734513048 810450191 523616665 156721409 635812259 267057213 995537170 554457807 469882625 980768429 270790872 821937713 711111198 421655850 81497477 780743666 257320877 554272620 129259345 721698263 353525714 429738820 18851337 549768863 530898456 319896117 614934188 84183203 995298987 533599375 886825247 202555072 442804295 865100175 286869585 617382275 405542743 398485263 304772036 209998202 100175457 190415798 105349100 885332410 148757883 306695846 904854100 602372381 525374776 878933047 39622605 377115950 490879860 16990100 642992496 997635559 710047164 69007731 545035038 574679117 307455334 317970348 32633024 869655241 913738632 835024763 824843992 295537512 781826536 847392718 311666807 401421212 25182658 714234272 409833902 553117912 357509315 243483921 281551298 304230341 965301096 747546932 546027175 735259330 705715038 705246800 941526917 62449028 135124295 830361321 249510100 578069113 585227568 197361266 938193870 39200379 736362118 973121028 256205323 681061116 664689890 660568067 177832081 128767885 672156500 846078312 70272020 929546129 848751316 267928258 863867097 238829796 725921697 319332062 581904202 12746386 383669175 395429082 31624194 449072677 233260009 420750223 442081868 608267979 857286877 56351830 884499943 92764426 631314509 850144756 818882176 218399472 117189404 374701543 524817351 24966658 926125121 127842689 261737041 112256341 410977044 356074781 703772687 926846741 170271144 417272199 248102082 405773947 394962105 55423451 513205669 329050833 57044613 26797015 541959899 712302432 296436766 226250333 928459197 352337030 436197111 897026237 641054631 623234536 694187510 968432338 334683189 827833729 285173924 688760779 318712177 523699909 443003598 978092467 666695430 171017584 992191982 900531474 427247841 92279647 468339130 607498805 377263133 121929878 662504459 567184649 906636290 191082587 152236372 80258020 283538064 431901729 841421357 223128459 485165512 435007703 622556759 946938192 160923081 737828831 40549647 662834139 124929922 10262584 850168430 580439912 922705162 594182213 482651232 322381314 470032887 506605915 854250213 960127080 473284624 978098008 890251901 74649786 221743112 144292139 299574086 148102822 669724178 545970865 921895289 694894916 306054433 248691208 262607238 4742225 871144147 341425707 856397402 258897505 766163510 966883400 21459401 101002538 631852576 66063660 126774466 153312735 243366435 576592475 736998906 132391510 106646494 169925285 697591916 290043176 259156266 543212084 69807576 992049820 928249455 558212856 165745795 116034872 361259417 661264775 226529676 154381136 867583493 28893111 827906981 500093148 981134488 509224264 540192937 963222083 560604915 252701372 805280268 201471470 666745564 767505010 14673316 304772549 934037658 717795697 455894547 748203142 802329211 661603685 940325916 611571901 70006616 423824231 7695131 606584599 386605401 956567217 738281507 144753540 737787602 541759624 821559598 495482229 78048411 814258896 241456407 613743558 61503197 390267730 415630807 744157328 465706542 910808935 140459495 393217787 99369975 945396805 104140238 919119652 564824309 617553171 170711898 75176419 128420945 834589458 716567792 357990570 255616160 745752567 148596992 551250646 483883618 787239443 276106488 970984771 734726763 674627103 686917863 951345195 505038481 359411836 224007724 267068230 595961894 1485074 258313963 795117922 374037398 236500496 676838281 399628271 805599506 353910960 258679044 299594929 879937820 36736773 49864891 253258877 690042117 869900474 448594071 107285813 148814225 215132753 605944300 919234261 86399994 99013369 177197028 269752403 37147625 497194220 9081884 158014863 907826927 443738830 497281055 868886281 731182539 776214074 986898976 654863391 657396211 958729245 733609439 770514800 935326315 861300162 988417411 257561287 406306991 122135700 318037596 364551252 502289448 863701056 531951757 133946272 640596561 588951817 791131752 112781465 710049177 58782454 352764196 753068534 704985459 987769090 42824748 259142748 337461940 380374172 558322398 886361867 768033113 51012278 566075777 27704598 379603574 522102434 491929208 908548855 47412688 805943442 72592254 721156141 396885789 264048762 512470165 563633857 79371632 763465103 5718807 162066595 443169607 386213569 281772457 110133122 309162782 595778488 423285201 239592134 589000320 166216023 420937042 622542451 891600123 420622216 132588981 751460462 783633034 712148325 371911564 259449013 532567477 228805035 28147664 930521340 436866865 797112479 625367722 266516779 325576842 102408811 83034554 254124191 816675939 33439143 883207912 688892697 823900531 173003968 721759069 799376452 903735566 580638642 362523881 257668381 772581145 620160604 377875552 636479540 565432307 519340268 773579182 251252351 909486146 959588675 527527103 388546865 967849985 728826535 621056997 753968493 595988744 589383379 769176454 677225371 335045769 368484203 564252012 151816318 431935825 847153617 519830399 48138265 209123784 868318357 353493390 558914735 322095348 351929560 361049066 494072279 106827105 748440612 531526014 313068068 803918182 133044092 945204258 733280803 789133456 67922338 164047204 524439252 506299539 793835724 709787114 482186928 295342516 298661083 793804572 484911935 612908042 555963665 357831095 936296034 939102894 133957612 411136431 57743245 396773029 288535237 528051995 991422652 693424249 999292547 289556422 768243675 126711873 772146137 723830359 982349628 538765445 234394059 616861536 756559898 990307951 865713570 338037975 285179461 20762760 912595944 574870785 726393226 861686400 901614927 912273383 84524774 546556044 327088526 24562752 817032279 967913072 556386610 323480838 74125658 108307810 274459007 157187408 825088394 815544228 660641025 181659118 320712220 703372670 362168374 102228315 983507265 601983044 810492382 815342638 318141334 842257023 845083153 595388386 823303687 413643221 861641091 260569641 373297238 938261051 688637078 414518317 349085575 388789533 252280288 597831127 851758730 362930823 546152590 862731103 333836618 205125018 150247269 177590740 356319598 521143872 428060169 918019102 324252828 457348780 398881724 713735835 196982311 372687963 474074895 479167709 463941583 884613123 81638853 753973943 45973363 621902786 87015301 455626269 80218973 817908618 179666258 44599680 73261608 84173944 377022075 227986571 359380033 128255512 323253140 59958372 906896 601460828 461931446 544891910 190410578 396249693 662637277 872573407 800843564 440809111 832372983 80831073 659001385 72314577 649802804 525323067 856636321 852022448 202409634 388701989 279466735 692891701 13605243 864538501 621517098 316260259 393371676 924353933 461147017 721789267 148060015 761566767 345198711 996361592 285285938 697684712 538118417 470841699 444709179 419243830 73975544 375787172 12949169 829882663 37046141 976724127 584035790 105172296 779302743 557315995 390839414 860939020 236663448 945561209 818477905 118111197 749613683 335363039 146130606 505622449 784301551 798968252 758919832 707126711 755433889 576179892 433554009 643284104 364544976 518058061 550770153 748392078 468277326 361870990 874671290 778234511 289581759 85492658 533242187 997271399 180633478 258312327 926155844 849448480 770482478 265699946 569584871 329552188 368869935 18533478 267699032 170601995 19490675 11144102 254359841 992874528 23197559 469764527 970905713 874479075 370850975 285217713 247757017 236215854 439315397 483535032 580967140 514303680 873471967 987871267 988808971 959804094 211124555 966660848 253458375 813986745 289202721 596171566 924734556 801840787 468377066 24974189 23347295 697709864 836269614 883731971 93537154 349272399 891246714 729270462 648523155 811754973 281040924 267511659 917166204 389185503 818435877 79986924 789563542 518376368 706721944 454051433 428815260 451857492 27759501 733269071 399993724 937875172 779673605 730768706 408038972 97979942 849575252 2647194 512390525 353532994 609533413 506667515 800918315 198298533 446935546 293104449 67189822 199326890 301379644 235352397 420411384 500460256 915047394 810276031 218740983 887987370 207225590 446755650 201182969 920308479 972851234 89663547 387433563 854764671 660883046 737315843 497797379 748411298 396889519 222168745 837254805 871087059 640640867 672368803 570795171 221841193 716206889 218959521 158495157 311083074 180699332 182797054 337812159 322039428 849472031 495615187 601582258 230925507 440849289 679164549 950059392 283837639 296485399 859351734 330070221 713527775 142892780 588992539 919033542 743882119 819906751 68576620 24338949 268496934 323628319 320799997 301634617 371692089 651413393 264209246 789942938 447139284 108936096 48404793 677967748 395312324 128020241 489981625 209735044 141943344 645786557 664246236 166012426 832808632 555334492 182974621 460067348 12438431 167470810 61015602 900322303 119211424 486167232 106207395 617754294 32510381 20482367 44434175 410904376 619384427 10395475 281150603 735457216 939255755 546582110 814775964 798854240 605209560 236756819 215563635 75879112 762340249 637866464 58829970 825906119 32480066 955513803 838168763 189766466 29346534 604700575 762604777 536411147 45301302 199297601 440288563 498784850 419299069 661220914 562398301 879327419 360659812 787197987 276063797 39651441 192058944 765371681 105870313 948416114 325638984 645337497 193667915 785850657 587097083 873228306 622808518 227032804 140752393 169971891 54904298 972445916 923862991 91136709 479051864 673231978 352208548 903435508 452594665 752750294 635590521 772096790 212660652 771442262 722970927 417026579 497674414 780932277 99224277 354835357 834643394 560923150 72175074 946688179 840777164 451543778 405009494 795874092 783734041 503486992 672877853 484092154 412371144 538285545 435289100 928248343 321648196 361475750 843806540 991854800 859591514 431305332 885684096 249744898 975007403 51778470 625164953 612576382 840877134 568669094 772625788 649131382 995265430 687627273 410240005 469168384 352175954 726604026 22587236 178992460 198019260 636820884 11938958 281223540 879162137 609488036 414768204 956521000 357192854 927204079 776858424 969443667 740113046 169182631 100653196 553244458 996074914 75088335 159965397 801060113 539093946 140083726 322783116 459746648 606501128 792302883 936256016 465216161 178621429 460641201 803351476 959143955 528867561 831329048 472365982 153831841 155104777 112658155 842578479 556712258 695045423 249759791 202620408 159922400 931277561 841093396 462034863 888388743 687990484 467415883 225962975 409677486 33201918 875882298 383214783 600375828 227750199 440853064 920153268 529479269 120864523 580915286 825534853 372076029 254819706 28930458 228126469 660838042 478905974 81583744 955041502 418311057 194521437 622126351 805283291 271882852 946185002 498415159 226893663 716328714 762082851 13452551 308974837 869738434 968332726 245710844 264066824 15618438 542182463 818099428 112395703 541984644 327305239 74112847 140207476 509248241 606492200 170585777 641558560 464132594 702781474 588465566 943475043 845844030 626251283 877731840 771786896 799281866 116499958 158542227 413311106 421496877 247915534 44683075 625719715 197826686 153851044 559643983 476887432 700954424 815092617 90896118 88683836 255205970 83536477 475318316 744677728 373006968 328843564 934238357 947373622 346606098 279619199 667428711 4829376 181113894 222589573 159404166 8211593 381190966 524615338 634245210 63694500 231971474 794219343 899702579 176156612 399065643 97744029 420960973 825531069 401050576 382282011 185034706 684411694 794933607 568520363 151651503 667127495 492025141 655907246 16238426 701257300 824410351 71210949 609705943 269307516 35799654 551807410 951509716 21370039 568731787 460893022 927276796 991732955 367728609 741115721 298780661 738070617 457071040 305370790 517680675 213080640 623288863 604463231 380025124 175676515 554022546 244370062 998743237 950089058 821207348 543020923 268784227 731320057 617260547 34171850 499519220 882679783 295818748 134512973 478527055 606672495 605142195 911223435 505081131 150552098 647625672 573411192 762785750 289608707 656189917 564881943 325680697 262060944 540843959 820954585 23718815 887954408 817890238 449761344 36926899 507813302 678939399 910704571 668852007 42082545 619951047 161106894 276520421 608793934 612664772 530969885 279086998 203253154 715709494 942540827 278758050 558237223 744529379 866989142 954247444 856109231 160898499 402567142 246529971 517456336 599946136 678117082 178641328 935907253 234408274 367037200 708025209 575564045 431230995 265012861 597901690 681616210 304824934 732475717 133114901 252089359 345187974 140012593 921232972 630995245 515378381 675391786 585490433 539090398 496846197 196790033 871912217 505666399 876201394 632597625 592677847 611922503 71161084 371545647 426392784 155076117 266641167 645526882 438457424 82701261 470290729 380765648 682612173 32994935 336023050 319346467 684941534 880085438 389298482 229899362 639536918 245837577 899623460 57749406 919848935 101360518 391596517 493595739 592318170 481060982 742494755 756816629 140371683 923134162 50735923 172566497 393394448 174192378 781297341 323420108 249274268 358512384 647077020 127314110 240641163 9001324 934978051 146428915 430647408 764778749 210462648 325453558 368360611 178876217 735198675 907551142 456173209 27516580 383804323 312474872 509799685 288215834 922086405 206791453 315399031 217971763 689258359 359502925 80909567 706253271 9798752 899518956 843946109 951335360 755879753 824111869 183754323 110019029 947063149 380904734 856726894 703678823 366968367 306929973 49448653 832723314 756196422 428892554 113431891 179951416 825268239 711312337 917924904 374354540 304035155 641083593 142590453 579734234 773276967 589903429 848302795 634823981 996453913 916117900 968701078 571187578 229193442 328436963 614941729 494858137 384556702 151539780 964491905 446521410 978179546 537732426 802532669 499596933 114323126 455295713 845256568 426964170 122499525 583400918 612094722 660781344 755511216 865324617 288289989 828221885 409851215 232972526 556047509 287794720 170746316 549478667 374769863 303958611 115353894 863179864 112052756 970525217 120155550 192035081 726739521 17543342 527056319 466804046 996617615 508447693 838464701 862805783 807690474 193543978 615961045 576595563 639341229 49364700 492690667 296954300 602670546 691104709 992466628 494240959 426965764 422274206 494289514 32249154 208002806 8563289 325865998 69948003 696884673 636153662 387577442 460031588 91082587 674849363 81666494 932105515 104255155 692850697 836666095 330854557 898768768 548096206 833873563 119793526 57996069 204435650 995064523 74226166 595210120 492504822 826553348 700495473 914630648 890669873 868333368 168260819 918946411 824783042 448192068 121907211 492313208 321422044 297891313 772224763 25752793 567572558 85246745 462681771 208548173 349120420 682290302 246006423 350514397 656746591 564277908 952218175 910041845 415441819 572198285 262240167 841775701 998396346 189126415 160913466 219930199 785247736 268819296 77104351 196471544 557942371 936346885 678819173 426394144 916079683 607110126 880335994 255792743 352904456 745534269 60826380 476489621 941055126 918195957 878583836 967214321 469994548 757881441 217518133 259454168 491823952 986215088 550132150 929360928 651902309 118790738 162779871 969920711 551210518 853773657 584112926 579205004 472655065 71901474 104338444 862390081 115313912 751535124 947566889 323313163 19028726 285568047 220914765 526476015 175390179 723597480 168066027 372032210 733312999 574420016 586813299 295358467 729278792 6822399 908231664 12606979 401477575 156258984 816315570 145797046 550081932 270690381 944797961 205276549 966020906 39429674 706955880 569771592 335349207 992163741 137488587 463040546 266904002 196326450 68429581 486962158 289971437 779339805 611561458 661051771 923275643 513007706 338627790 215851405 368230668 763751924 569926436 597756091 910173670 701458841 340125360 425054321 728236907 786979117 49789944 329266181 581129196 41862875 718183167 285733105 287499620 589420593 609987530 770063569 159602785 896601683 393620878 579169505 186197467 688844712 728163075 405545675 515312340 54022313 80384929 904506137 919168088 597286652 876123188 964783877 308087639 962094791 161618992 801268311 174549083 861383116 800547031 237473361 902385627 178816686 718016877 672157222 259348714 903921360 296505123 220433603 904551322 994422750 209264140 948207798 900724968 250844840 529074526 386583418 12806938 730371438 635199963 496479426 511551985 675710456 318708578 588429678 394681811 165758301 142389057 98715591 777240048 971623380 291138837 276701839 55721425 537274370 861485176 181449006 611109773 769760022 750179869 578992243 849909881 892692199 48797982 905684105 374115280 598587144 317398109 996343686 26240715 460753781 798842726 964760160 38206899 274736771 362437793 288920077 822319529 248124543 790318478 443692653 928538820 682695199 469084428 66478707 292361119 755940551 734860921 603727798 150637114 766077363 55845301 55675286 248949210 413250321 839207572 964067845 69993565 427926979 650207105 674505632 599202897 99371637 457113821 340355449 924091968 466497632 147831940 45838933 835079945 223660756 924254229 114536885 192360428 500373524 80152510 923397838 852175312 974372021 576923222 115129802 563802844 13177605 316773129 467770814 230377092 375927291 149882795 229395785 187902523 584301747 963617539 35970971 372856974 406096081 375399985 364140971 607947355 537573739 70776469 615163503 664459110 4453740 280149945 986705026 344949859 927659760 898794196 824392113 147481247 781889729 773548233 12532185 606450784 509445350 789261959 170834858 910091426 508333283 780178419 527725100 858919587 422042673 952275895 374737118 28789806 185635260 59215461 898431732 738545238 244565714 433097808 571722557 44088977 959256257 319195252 451240434 638270861 845507162 556053840 897482358 699376509 756561710 921876517 902027974 388223536 7880598 830037682 764681423 348244890 855584510 945383489 908579886 402193501 384163277 321341138 658235270 294406102 617646620 12579794 72944739 724268930 708090739 742644915 915458029 756131772 164909536 426752361 596671542 834535748 178343986 450206714 773643081 952107454 522195486 827966639 986061384 822327945 30148309 224477770 134352874 985252370 461440046 680319978 538343962 695608262 428909397 840668057 233850789 923315802 893339611 846741387 862823025 84159601 15046942 374025028 404943401 428866860 67175964 778933833 980678161 625871408 251096733 151024876 824534382 961674178 852637578 105130197 30668499 42973696 230631962 859967128 866897192 159226353 291294665 439497611 569476412 136947331 791677541 726239168 889815048 412494924 869019606 810051167 380597303 190759650 533861766 906429860 810449954 489771596 498681803 569723412 672666734 731133410 353446154 577579179 79805704 79871247 918286518 331004043 293827533 327565555 163701191 291936437 718143056 693661324 355348996 542256014 771081210 513701974 466161924 416512705 929420791 282316397 890185056 12347333 364439066 635125861 409602367 205259691 955632671 477650194 510547775 312869754 561025705 954570198 940776726 749438379 322980567 412237943 913205779 95356843 346041194 270540188 947661642 422716526 348202604 140539805 689122417 125258766 531919713 289365249 646961479 898784064 170484683 388680676 367611096 81343405 88285900 46577324 53502647 828360982 779027566 92983903 32815153 189241878 792375783 302156673 123301062 25321707 637023321 715503467 924329656 847599831 931595613 763764089 863491501 122146376 450617451 192138808 19364636 17086427 923430761 950432637 158126868 387644257 313135668 678074035 32524753 988264594 140631945 299675676 939382904 88039333 563689469 182757001 750126235 94947794 724094704 144893510 680501770 735491430 338343124 574006290 840937322 364724930 371212410 932608630 962883882 154887541 103400699 928594493 768880872 944195944 427834334 247676911 547477586 918418689 592458208 636701719 288820422 167207963 770179343 228798000 956706177 302264767 422723412 347583221 66366273 951300599 653808084 259663948 781017414 634037285 881531533 313244421 672169113 679087618 182209833 493426613 869957141 120801143 262825048 344143239 650787667 483714008 169469323 888942846 219214101 491620927 937237884 46276528 179603621 405019327 502933411 810830514 222482023 608525199 775417409 76638390 140048424 161466197 61839086 916211644 258499609 176229653 675878553 413955980 718987282 377845007 165108922 123751138 523456209 883899602 798755209 583289336 324594688 163739349 593682682 949588501 361885417 579930719 350188700 354600988 818538146 885899518 316196130 241699483 554539296 880872155 258566301 417488925 182156244 590755009 438599776 763855222 152711454 424218482 144270721 387392206 655833031 75228995 185984059 944749533 585956448 100024249 147411303 59056844 801266653 919356254 77746804 276436603 843211647 444060965 10271352 346274182 900412237 980424292 643964800 221637817 155596572 926996140 794653343 198035445 501444188 482153290 117392613 165548051 716524606 857689748 140686449 349838249 51601446 46105034 226017938 72029191 680695071 563333154 430537497 919815903 690639233 651498261 61441929 589096760 72955396 977177950 508948425 558324994 543703172 780016154 729919717 641283774 515641883 233567083 528113577 735706716 968036951 722207192 168330522 683961920 932948754 8958590 896289861 629476894 720170446 72201937 774479386 997487076 842688458 213079875 524270318 84714177 822918595 205134856 938267872 427043406 803830807 541209376 642557186 520669772 406147945 316870769 400293003 282877310 214031364 64768084 434416095 244079709 380930623 689742756 50832696 294383255 317194387 995477537 173538955 630106694 476881665 984657173 335234407 212424663 49099222 370361170 706346703 288175947 836985687 991666442 344251215 851212349 249880190 875995946 864060788 96805791 797016383 252769129 139516296 543551424 216104763 913229382 424193976 397702565 505336424 220132592 355683171 362056591 19974273 246431406 314841772 820564664 288571754 851420293 276397639 600499516 587633874 402100734 750446118 106153164 401129529 398700404 916974884 935086336 72592827 913357465 416288590 297182206 891338697 792537285 831721000 76123173 352272367 270039954 853784559 123792439 665212421 356705639 38850423 586764468 841048446 260012039 995712109 57641153 832314648 962974276 291673431 23029181 156673748 823977916 338059363 159767112 561652019 598776719 127099772 661389879 685142517 996428257 424114373 804032475 34764195 153667448 564652062 744899400 475683837 186331977 85073509 299442969 160207062 947871826 901145480 188637991 522323302 732664510 959691255 297832516 259609999 414271087 791845808 263806191 669159476 585112939 48131378 164017809 335916217 839196033 213315217 357434167 410828482 114870797 187029752 222309980 258031966 283231148 956395938 86786893 437441235 260429876 163470359 296133684 111716521 275213515 615853029 500845359 623327074 523346124 160954554 830674491 124054695 75644744 289403568 691951430 888717632 437251081 416298754 74018166 355727607 90520836 599614109 148541814 974258595 153627314 339760390 399833508 77620932 306440075 650580452 632368585 386514510 355967488 570933043 540223079 211223121 234324968 343214146 639157949 918415218 714834085 621048796 271683208 117654565 138090809 571649240 834764595 831612705 514900227 598411204 72334495 263868457 754980503 46133007 556929255 276032469 203553235 680094270 356598381 9161896 604152633 325868225 213239204 899840994 320449182 222796576 215696748 632692124 704000561 867836792 685256117 125356399 986310748 785572034 182215600 542301966 250493281 576800638 175893861 597289970 591025949 576733424 80520057 385490463 560480492 510729155 94357036 717522139 896685671 133871693 107579358 5841313 223172347 824913483 842905505 981606474 836062740 111837968 212263339 577609912 651232258 970357892 536699132 889450777 937795061 363532817 835328796 93625273 950905249 446604255 895109600 824863984 361889861 621390158 699795683 741197191 423548791 148622032 960034028 983080931 633090086 229277626 155259810 820412314 240898820 536514335 171077073 943530011 589890441 531400238 977888538 91473502 960632488 255690918 866178564 761224764 550455946 258660797 550108086 205949960 698272110 695923517 560001994 896963931 631246653 563515825 945852068 948815441 325585175 872231013 286404878 287920912 15105832 558496808 766386033 516586013 537842194 979401573 189425218 164566451 561780513 874172079 767900679 795707983 873043747 536082274 99588083 503458072 192783993 840284853 900098160 919764658 303262801 360550075 101596752 703831230 331640004 865497264 440228627 854251020 156827567 319617954 148800171 116029161 121992923 115722583 584420880 241473590 240624773 763798201 591101971 636036509 101489038 681426463 116681204 415651780 205560085 378386353 266469652 276693088 296881653 760535013 522358178 330811228 640519646 221262645 623826377 421174353 938309662 498048603 671044288 354019168 591017771 264215574 378237911 850113446 771449841 893796330 697013601 993413711 687897043 561002330 511277053 130827418 188657215 819302401 295554346 186217075 992047608 290830711 880341249 432820751 429519463 991405132 836085968 554441916 706543497 719814307 131308960 102413814 703110061 280410961 203980730 672947162 178846476 821872507 807685795 172881656 497701075 70080734 341922636 824745266 640293094 292977577 796950247 635713298 421226726 984183758 711065666 143119764 690590699 798468679 527321501 451870124 142449747 959641570 983174909 544217672 249584046 100074791 924031381 573035040 314577031 554874060 598003153 12532352 288362482 124155511 228934682 476057041 704436076 608912390 912498661 605915302 166951764 461742128 411704531 835251853 740568671 360046123 930451432 77612009 882279949 904978664 308665946 960877198 819858194 102247956 75043101 468282365 316772767 548537171 242316934 129487186 458795428 991827570 491840597 652382209 390870167 87351811 315165803 828859818 818677523 260975879 650688151 794631899 542597535 869385748 494029895 783649905 97049675 883836178 510512700 898045825 200456006 17973091 806904005 598009554 458537092 743977732 302470255 545332999 159998539 719570380 45971334 205590403 506095338 261125412 187239513 376551672 971051600 566650448 649963107 683945378 360229909 279052110 720747671 337607674 436159947 773697007 682316046 231322541 658506134 580775216 395437892 228011598 849790062 656645538 25889461 61418824 711992076 796246189 164069255 900164569 681803800 683321447 702553175 362972086 316689972 255899782 482706156 441983963 591988972 381659669 314197529 303666568 15347391 23403289 647584004 535379825 727215892 182824609 4275199 672784559 455434491 626718685 510827288 806371083 392998191 841682505 764932100 407557431 616466804 648133393 424467067 132984547 787336573 109592571 871111758 484688539 745006520 753538350 64424049 92830215 726055611 681656328 155787590 791634632 645664455 997882347 709671410 960588706 109818433 308103093 16791785 645302859 704230768 484274030 553018437 604015114 892158472 457909097 723964294 992581251 62598997 826928739 518836879 53093106 956216232 1989324 908099266 927699809 966946531 942845584 587468181 362164178 520505653 754685593 118982683 544106048 819296546 586094218 509769719 80557398 329070350 406356542 165596926 427281367 314305292 924598117 260389835 799001599 963900570 134337324 282991152 632034612 981706204 797512048 573057698 895749249 150029586 794358057 81446707 919823057 341974548 533213475 22671103 126802702 902518590 309187067 539585020 681514529 628251552 671134730 710224232 350185263 561963964 647336647 78029972 414321945 924442969 926227557 900597659 698636800 522754169 887617982 932174287 490349855 802326342 499693809 371311071 696089429 375521736 702246649 353940076 636037092 703010393 243742377 870176706 574419064 258013790 652385453 606673097 317476140 569273190 109916011 360347838 927728182 802611227 677726024 399632696 183528903 687369673 694972838 980797479 390699899 55158538 578758313 853528433 541479440 432841877 739122519 750045315 784077843 213107657 928738263 526260857 145032703 241213225 136419519 782453648 697235514 666494364 558421716 475294548 112908904 165865004 893977065 634584047 181609544 155202930 29340081 730886474 804578790 79101441 141750179 335407666 744095271 481555538 35433431 310623660 503187907 394123999 169490262 608165619 757978860 459676080 616386293 397613166 944902597 251701249 371136211 230810727 925708653 191235829 298201728 982403282 799283427 292909172 118595157 702227253 818840813 51588212 629359096 494390302 336628884 760296369 205643361 620785793 315048836 406210349 4111233 686229744 140061635 933372515 99050829 927252567 422734975 251990985 945077637 121354457 183095825 326671310 861648286 265795525 171670792 992652036 543694419 138829072 52866662 204355555 86782601 243119010 559272992 450520205 553240127 886662325 731538097 793102182 266212698 650283701 282803465 656997709 382022238 918769671 500106136 227435338 239753951 24844636 531080249 135620354 579716261 597476864 200591599 771235294 624953805 674116507 700632623 271392495 477814782 746009585 236747274 102770957 213838691 103190253 497012364 291210398 622131449 140318801 69979675 773356597 887773231 399180816 150606093 91007851 742181849 413696221 532531582 508056866 769402136 610490175 712607301 604548913 760591269 367093453 618913021 564540546 204068641 757486610 641216909 53566451 280567569 169363389 517541896 611794238 378785821 9031160 460645255 240107250 340187643 118542805 401358992 49951533 490659421 11770808 247597871 400151011 461731750 372779994 170978282 53947289 628364188 186658892 771171896 902202157 516391335 806137814 770571351 451668759 388975564 750523662 889495025 101966320 39211294 125687532 634479472 15126608 982278688 50989611 203603830 262380641 155145038 451374377 745695671 90430611 226326458 616618687 428001892 179758389 246712454 281285466 343549399 783318521 85047665 416814916 461953086 302851928 903695572 197664966 985880029 856038290 638790762 585587164 560506449 147850288 89802921 770734145 933279308 780957922 810512894 462498061 278511816 630508962 185816228 179490134 443914483 430530980 378878642 236315987 620594428 941484079 359555020 610654685 137408508 309831803 290520770 736489687 438468368 751992339 292738841 600897124 349274264 228644159 259407166 251492294 447892437 166758077 594137055 430694249 320129141 183142879 927269800 804702211 230055864 711384417 329642094 437136347 829628384 865480786 976529302 604485265 486834843 888956718 328741206 102254655 249475956 292310510 562039478 659196888 565344095 688396223 150398071 160351694 182318808 935890836 978429865 92611091 309147367 459966206 223356383 51234715 175989699 343159030 573179005 445535630 282848000 595158223 678970818 621104187 492484824 307650520 44491434 159930716 577294762 28839792 333591115 867976427 902295659 133079132 294882924 842488411 183978566 354961811 336748723 6544545 967603041 679589705 283877331 53733760 530288865 573139751 654394412 607040687 582543723 404705622 690408922 950109628 284724726 222481379 187894707 633335422 408074170 446795610 615136369 565343554 392765424 358789993 458158386 464506231 2618422 753688041 685490789 419053521 645710463 781309306 955417624 142475922 577973933 441864799 933517746 387181191 820974583 255436138 72672014 77581705 7558276 101734299 438342273 122575539 163805228 612585515 218403941 89319701 188866870 655847777 537200273 66360072 174161774 748959865 749308122 518577826 651692589 691843456 462351242 744269929 876028234 964451757 727796664 158094616 618437900 599691585 183235608 651806999 6439646 148953370 361669412 315674896 717903899 163197103 67407836 452942817 464366898 885008945 97602120 854517146 828794722 149131559 347543732 681707291 717876526 890397590 765169401 436639689 323615817 417825955 130639847 735946093 936183019 970260439 100437912 957367464 270593584 820056352 912463892 681555441 609462374 403497503 537562299 712722948 922695592 529346036 835987971 465782752 440732498 182105802 227571719 290650239 113244636 6164643 836157061 732082117 663937035 288564086 624878391 322745638 782186941 687273325 349512491 294199151 134066699 273739181 359022912 170270641 63803132 720338560 150067385 290663012 416242819 191952038 791873529 268883586 453646461 312231061 429379898 791167584 891451657 247453881 197510084 928874068 743342350 359310535 832378858 557198774 181519183 166427832 64289120 592775369 556207132 685173462 586694932 861574627 350393559 591903122 368124964 606714881 339629279 493911581 710279883 928762420 644331292 446339865 834903972 702100053 666516094 817298544 554028978 616185250 623411309 58646948 38033748 226136366 131909087 557229367 126593516 321741472 959877144 987616728 362136016 872978005 824026193 164846197 913351026 667440417 461943780 450235532 670241677 778008519 364043863 338464374 93285312 88432432 586605739 667762613 338271499 316999200 561655157 472952353 218601112 736837107 9861659 337714065 263500258 809101302 135712407 332884224 483930288 273930331 370056457 526828200 376141115 261613252 993769688 688755369 108103806 829386362 840369076 402644062 473216817 590922554 434975366 592888576 404229461 847890739 94613239 122175302 81802724 760848310 462970582 601629889 244957366 204977530 522360517 253352043 81637216 145065490 365796410 636910909 265859084 440927747 261171634 698257067 339311477 51726612 105880546 275069425 856556071 722220643 296383352 437003565 910848076 45991178 906400189 625502990 775402103 291969161 528231063 183328122 112596330 101242163 756321634 501792611 706522712 744918102 721812335 245123027 767319012 799241212 568365408 17679482 975816104 975532273 51773885 477532324 216506400 506997289 622149675 51051783 332617781 204871566 865938755 876508075 242988546 913054282 698230936 546014938 455448884 142059782 134836685 160283845 648798858 374261406 527922311 598769300 439298690 762451634 789752193 608344989 439496032 523526062 250107285 408094417 899696289 559571063 975360079 68463653 80497657 530140548 617482441 193219819 990303002 686680367 207050471 483689304 876054135 522550827 876128619 813513985 356790541 587052087 898432800 368523487 672194059 107186005 38713637 390561658 25887364 521531651 325456012 65222947 400670116 918812417 127096275 588858315 368095900 590513454 194881980 33426405 185802544 623778807 463435045 639148209 619503359 900091125 319150177 219592202 244910112 994767995 404979376 545507524 929634596 239549685 569901838 265469354 816280204 332378545 804864929 289570955 295609600 351604022 758522417 182183148 810863535 366814633 891706752 915525166 859430558 281864352 962127176 504696739 851883036 56313207 677715590 877314544 74760017 289276611 418876428 771530065 218876976 720936826 295810172 785060266 727151588 900148435 421011957 162518825 67479329 325577851 333525784 734170194 657405157 261848218 205966219 502488772 585695402 650030124 44795923 374464082 720130770 790619254 109131342 899913758 149999326 740293411 3890988 797693286 674079888 296457252 172009687 762690883 55523386 275342479 471485839 633781871 362963100 438999708 664553024 283164754 979226810 15610204 115902430 296312854 344810201 348216756 894740640 404577013 953418014 705131546 192469465 934641417 13150744 64301520 230781635 282213142 926495260 815518742 177769983 559341944 165302934 342030162 165210893 356190166 252615400 925411701 117014448 975317376 903433602 300811310 439536562 675187346 473232139 671031953 531447910 21201151 292625856 645944404 841240861 433550716 887671063 810998940 969106434 339268591 487137261 329033417 879001457 277105456 745927664 61863081 651247234 553509138 327634647 253422834 908880582 374347205 425117915 644052775 750754005 297146950 612078424 944960557 122039266 919619425 410609009 492688906 356915628 661448936 252463378 257821352 413053991 688444650 82060505 593897856 517302611 963707378 432248065 171249871 206838372 751297757 383122793 526355691 417728901 810875374 590780216 660503487 127530305 868579481 274173480 851388668 78823886 749030904 446715066 280600733 22252500 268050587 573175605 782815103 606400328 778653767 473558870 955364749 958114912 75534832 945271757 803219238 484665238 443009069 420178992 931055943 439248558 874336138 127556950 654988940 4324163 251692893 871885189 890073407 310205067 974468869 614662837 34060895 720949727 103541798 786273777 214565888 47802710 240545703 621304112 984359554 67223383 417908205 475097609 669232048 124015975 12847303 420900759 614105063 264863450 559884780 263981561 259186635 144262638 273868438 568368563 629740742 338647797 477956902 764078634 82788409 798595718 432859947 439050489 274920266 958739777 922196722 840523108 229981874 236804927 330785986 441653103 90808729 717567046 130329751 77112224 564013799 892334105 441199145 360059506 416429503 804244066 243936316 847790374 965276325 820778170 687822819 276234139 463932197 68959622 929183030 150666345 56787402 265297093 831493807 862637585 630473632 454758487 808768031 844248204 115409210 803891329 603718139 927903771 618513044 186219471 271099526 910221814 530812985 117392006 816984944 61860367 512984263 3780300 41190909 412848671 901582380 945663310 553416644 969984377 773043949 638601871 371966638 446904205 972048717 251158675 107871284 548955597 233597929 470976292 225931512 574489644 114588586 485865075 685861290 719688641 544489333 457405140 157442745 936293700 412163625 499347686 823009597 428730112 339423139 453970829 646832917 933893855 5731218 300297504 373328733 350982499 103563321 146981339 162281035 952965731 807868021 488304458 404275049 463707653 12495325 708857332 986201868 873084921 983986337 783033218 968330106 792585599 845124734 227617805 796654306 666238768 56742077 794058628 683965631 178482691 662746918 585051657 614019804 909554499 20004393 732786591 968079160 27474376 54066231 313383589 288709991 238471213 706102207 855228930 447314153 831087949 141759451 239031552 293400378 940039742 662169417 908374387 257933840 710116364 994788355 72875176 872166181 923311607 723650113 867303659 991352936 599002799 728977330 412850535 549331860 370224157 917442138 94070834 453082320 671733941 950440118 575749864 101941765 637658022 565444410 738839236 138759733 914763537 651680400 482533729 687827839 893777810 374285883 315090995 702309839 432610456 754961453 478790136 666189051 183687612 12800321 973216060 616526164 397295579 168819462 823358314 701495857 801535144 466240571 497656897 32014619 715722071 686480751 570176883 445516698 848732586 509855235 213292256 711025184 240027882 169379641 122736039 415558402 970543180 120506701 508199707 739617098 63315907 867304165 760347590 333412302 957944713 757341761 174590224 838595382 841321982 72126632 566902192 30264798 794614899 78617547 244500982 572316437 146052638 852874583 297614077 961124479 411515212 873393044 378235013 95637850 747379803 256202057 844509244 344639872 511461736 648852090 454843419 626442131 724824766 127664750 660155601 393173917 23492197 256880533 913241296 27272896 498199201 724596936 235295162 346113683 833212973 496621755 673765804 366066006 400613720 588488839 575357049 810851078 219969083 731058897 780795252 25101977 760464991 5126498 778610824 987222794 824034689 453999115 98220084 732767969 978327692 360744737 670884241 595951653 396318918 627940963 674323809 276378070 300728566 367381106 885278957 645937885 113978607 557719711 613515051 388468254 690580783 889499994 853824257 469970938 943373423 956253196 979285870 914715674 738587154 686009133 32740447 964948830 808999871 227749281 414588567 731096331 242462048 813808625 134612616 296876077 367583604 870567727 583448748 624445013 144482580 558370739 482475772 73996213 932593724 822570271 520869224 584565503 333826437 831552014 797598409 128055515 341742024 756366287 427380255 480161595 861403704 573175674 700669165 729667076 395398336 623300207 352237804 809541306 151749853 267166214 679533769 392011993 256865774 568580693 224665384 359776485 962388039 115084277 279612608 374922377 241322278 70125170 485099013 668258536 949671688 816013688 792393609 768445041 305743832 31551646 211910880 232125843 619558359 666453925 889242302 753968311 922695636 430195385 774256852 954178754 408628490 690940882 47170411 840225574 550368914 379576142 914742947 424405020 844587312 440021874 859174249 89738971 855124237 344035630 287115669 885436619 671386390 586909544 306813000 528633484 704236117 213931325 583505875 41804172 216363148 33897154 60126873 356413099 459213035 184819416 291146878 795781256 411959392 302259523 735411470 969308800 561797044 88536278 418798441 499260736 453724602 938311911 189612220 960271344 248740212 469130449 78075860 836794631 815155923 599945627 637560886 186086279 344077764 752854473 727553068 996599717 640851313 644226216 89943235 61557627 60504699 917777179 285371988 281841652 22644899 455862031 225769435 111631300 170126028 205936869 356430418 997973100 71020201 2921299 676918694 427241466 84421579 714914318 736538360 808159382 152720168 82546024 540133643 565220438 385032361 547371083 887425171 441308944 161273600 191336996 283015127 523097276 970749715 162215890 695961741 586629221 163550902 442719219 153772467 71691984 187215738 928773524 126666271 262066644 963216226 923415455 485561814 732226239 157654338 136108552 45983355 547107074 444832876 202617279 499319222 973291598 262565516 191659081 29349910 151704498 114288658 933219915 182525316 224775134 688049350 789403492 262867224 281095972 985221243 606773078 89771054 298902578 103010304 752327143 410995585 185294475 593403335 95067462 124750890 975369157 452892907 798952059 952021687 97138117 284927615 770320273 597037025 386792553 917328564 805672047 894730172 973138658 890101304 993312153 759518605 178304002 175767555 955829895 145077030 422508365 773340538 332796641 74356273 422877679 429246254 94087485 706415742 301529424 859329056 286464003 67957694 360145347 844213494 234982762 272560446 691943695 377214148 655374148 381659132 989927428 575161731 551691875 327151428 839005363 616530984 484767546 437634732 977880746 702530459 851840610 108575912 673570598 93537196 561836542 266682292 194878646 989136327 522296844 10473300 308458802 558959422 624785502 288767948 45283915 43290200 558706196 891757108 319633921 676926951 523910460 800886865 212458463 498525405 881239683 783788118 180242176 770422047 99977163 399029799 786949975 63611518 404751120 633779304 584331212 335202845 316922459 716761239 453821133 711538121 80226696 178107151 485543230 181411913 118152791 464363042 902769585 986725115 81623708 533855219 853489112 298007455 667125668 448605722 476190629 635083855 401823958 787543887 399385129 102956352 730576146 306687926 812157437 652607597 140348364 771165351 312135310 915839662 414453344 982328372 18201233 755679222 750814713 693824160 876771124 689953790 577913249 291204338 695685354 896917872 668217678 597679453 129438241 883005519 615658376 349069239 241219191 144043314 299410914 434981988 595325059 241249313 813406267 47740395 811474231 140707949 739857491 650561370 818900738 370409776 208877803 774008314 166829715 22439784 504537052 546474576 252465595 690999683 349030555 420189610 995899216 611630154 547130907 722684518 714383545 176033452 964921218 943289894 192312029 213633516 174797088 380167589 481585480 226354005 136341147 371932627 779687868 302192684 204983699 837751194 409119482 796647872 778820669 162580097 185877560 41430156 559513371 829418809 119302769 200962283 84875925 338848735 257200631 961425303 458092298 673713262 848259858 456518689 172670890 626924865 490964053 250165403 39306995 640539154 451125907 596806331 383495879 57709418 423478330 858032755 410397193 951979992 783403432 624289024 861125751 865177888 872301843 600517377 741135760 631758079 683360759 896619637 640741476 843483786 108080359 679276187 868073736 798172034 365376019 582716154 194501176 530305313 684026540 72267055 83867910 990559061 751448391 228787625 178512683 833331045 651673209 217903411 79298365 774592717 29205564 687364123 544309082 165576571 654869606 661300824 508560984 347233307 499482549 971933912 709945918 881124410 372302611 176201736 161735902 595198253 7732386 519824713 82646707 923625576 615806990 199865278 213166558 601378798 938350475 177746125 866128741 744052443 330831248 589402826 362603850 226670387 756666771 381571651 313518607 403976644 947179956 724872778 280141828 964328202 451488613 131468508 321303812 863822846 77466056 947602248 452753453 20177089 304220118 102429260 691684566 13611733 228818561 528003059 445209682 369941071 528401025 465628463 896328194 50503359 504084310 821544132 171689690 519592218 100870820 128266271 682476085 250480243 103364191 496509075 665534767 960950142 990657983 262120959 237003733 242104876 426831823 527033895 177630060 862392784 163614925 64265664 298020060 835064327 982499808 772071881 787237261 154809207 349461862 390354636 226153230 753426746 907586218 741645549 854222385 569290887 920956347 318296493 420590668 60206854 828435699 893340203 3267449 965361370 974399337 698204165 270488615 301725227 491517776 795621783 261301172 1466471 792087466 752040523 708471490 434457276 48650984 964188778 249528443 964899707 327430634 829897727 908814530 234061008 353258036 867343953 481008136 403550457 339210181 191851949 273618419 319607631 554350574 638471677 756856738 105074556 111567097 690373678 726266194 488970986 929051238 638192506 252592117 446571365 602914988 692348739 576810214 230625344 469671561 614251937 147401603 329320774 304846419 850450341 105093883 383007691 433922433 415382070 150137693 156393143 461929225 517554031 916108854 290684535 493043029 608896130 870268881 531108995 137025492 87835287 572685442 337104936 351270256 455230252 77478552 201545277 818272652 395131031 188788156 358073307 784897051 921357645 190756912 48477923 762561070 563006540 842258999 417760757 11122501 932402936 672059845 898008686 563209895 478280620 926415474 123615011 42480764 406026860 273607621 764712763 707528275 490476368 593460208 535167551 46597850 232320594 71451735 526883893 930076777 529281461 668305333 626656237 559827491 399828180 116053196 109636953 236593523 687041952 106338520 903510840 456978032 871531173 688171764 773747033 230077271 602352460 673051627 908614429 778122141 610503120 494242096 465641559 545048079 306375098 800163310 547160161 723972968 606969871 783961092 642249866 984331970 323266578 415100344 31453033 917929045 563796532 9059079 972977601 211041748 853236062 515388353 652219617 718111124 236216412 501961106 152013194 290168419 303309947 258494419 569338336 6692415 732023326 10414710 506098839 588959014 211091909 193608095 451274260 694905770 95621811 785277 864337397 82566168 167707663 685225275 988440925 687629179 353515524 67855031 246583445 86837756 820214882 78611287 612994197 473680676 271403811 302331594 910858469 131545716 89293356 274484719 376376998 760965426 915899395 213051307 607547956 665557975 409909264 976093335 651612096 597061465 470964394 642771380 558082992 820192293 513910460 973090100 857064182 210593396 650364811 455758707 910231041 966094209 89755427 629454904 282071922 624880812 616458845 750627195 682068299 789097792 134207084 483874294 574100927 472950084 381544626 34138508 731940586 974621442 337211200 984485494 561607071 986716448 759444243 877937622 896250189 678644955 66589020 179383615 428233061 284818102 566556672 117535229 640125828 646403317 126240691 33860586 239455369 41092601 146897760 760021453 530584418 112379951 319276445 896346182 570068360 375320535 915766720 478642136 521313230 796100048 813384179 598569069 253201829 841560321 421241104 580196477 871690352 390089148 318629493 336105018 547518875 230869323 913678360 319188270 805959167 679016678 789975004 937923099 718525805 495357176 581748631 625833092 317942234 996812336 742043920 779429660 578386271 850022780 415553507 79820531 232056345 25470886 54067279 789494734 483128212 566429191 713919163 195982490 923349874 950608350 304883298 327440648 48490610 182591724 843019474 907382610 230073980 761927000 184597576 11129974 414051273 8872109 139632724 973380662 386251034 585969175 173456646 858055514 676650716 363812073 447148011 772157924 765190067 218789718 774880681 6302278 440647992 233856819 962666822 585773049 326068042 814477638 322321244 877527739 527993916 804824757 795515862 802016109 972872616 964442266 267099815 177162305 802304293 843875862 755018547 864106023 875724822 30777546 744739707 853078104 99772385 383423331 790738558 470506101 276415766 367553965 162049523 364052856 625974062 530618008 418086560 466796944 55462783 537750929 95141858 601137922 783102614 981042929 884659359 897815650 577705781 944133201 299261120 452744208 809615753 93731984 356140025 438824914 85985172 419134129 16538285 871640720 894436322 680884093 682835572 4860922 8110098 579067398 728176242 616225686 772155394 401046119 326977420 872306811 297335597 845256922 374631899 447524927 648479562 872450650 543989463 802277530 89276139 709235749 853218086 777509603 586949044 980021198 398499344 62850327 102971478 652081846 52320087 241773587 744012658 695562170 445799837 614989250 468278195 537956228 473637252 948969467 376304874 826347937 765099323 196844065 241497851 363911615 361405804 302914746 304797262 153631335 855481360 734650217 23968481 280453116 734003909 377092295 206120864 402597459 370941441 336480937 656479018 260297809 668853942 497599406 315259601 102448159 930823322 533729227 50073184 832046197 848796082 282103567 936768612 17186993 589115462 475812808 101708057 62910435 890609067 862523613 395519929 705733981 133529354 494317714 170894847 600757904 813714407 525454375 81075259 895077019 218275224 5816668 188367766 24437309 998466102 564259176 574647047 366652524 733882857 73291962 418206517 554854497 588940199 416931988 547239542 814263536 292719986 266104933 337008921 131447085 276545164 366247429 536601378 5553465 995085591 702549546 360283842 550099139 924075712 434136842 456888883 549335248 958573751 432116366 281619810 941315874 354535944 904698164 301576383 756786759 791687582 193298522 703973412 331919826 392397175 517210279 514106611 491132006 519709089 852636530 116172899 621458511 464917061 911411795 171968361 182492729 528141153 544229757 481327814 83324686 12004630 715527806 340429299 321922353 465351681 518296310 414748540 858708000 8419882 455151848 850058139 201022114 141904269 849540583 642807487 613538549 460702955 225239328 442353145 475597021 553366111 368526164 65554515 260988920 567554862 152198064 492611288 681284570 514138253 88747024 365422788 336505967 406872800 505159516 894020933 702351276 770416241 807603294 591958460 743797091 353710235 615890236 493183420 456054669 656962183 759688001 160255449 329639905 489913752 74214634 852211716 200182412 631102585 739338388 857780173 465511513 755310081 761292462 732698707 863012294 92757843 612097147 65707777 829361610 863110371 96864618 603971131 673687892 209651769 572497282 28174871 95248855 889548682 817553774 237550193 181342905 586872429 14901838 265360548 394163966 179525072 745485895 729360377 662891707 617350189 634127961 813747906 825991343 491366588 395033705 888627707 638355384 141254138 809145156 696300541 525558567 195916047 860167242 251268607 465693571 228419633 692340982 168115669 231660681 904419893 60693983 74621373 807896687 998478828 565056311 349127465 251589177 417731400 245309808 413255595 278795114 342954944 131034707 949482629 939556410 432849966 660775675 663685010 383136546 947510997 212981712 129515350 907859339 675834051 690589088 799893786 823528710 75124171 545145201 535261685 893247646 298645950 270445147 781013461 877692454 812385635 416507388 640068970 369847045 764704774 832060080 612480683 337468269 181086995 993631239 759360062 478312104 494146940 737400640 41847515 795360465 967743087 184232091 453072834 937168041 68469306 17198888 809481603 16552476 853182330 405768639 421953901 326797032 773897876 205913100 313724973 198310373 11559591 913006646 727644105 690715609 835894216 416513224 763375406 38222534 891275329 412127367 544753128 246646654 230122986 341366168 144545442 212779595 441295949 289068153 646371414 273720735 395727075 595241174 321728022 579185385 16001623 611772748 330853186 779555726 521237355 489897389 45261625 380262268 417286602 531381736 976451749 246015978 652848531 963620609 669629515 228127359 55673941 144393595 623194369 656996468 970316534 862257004 805326163 871322841 420401146 868194755 884122860 621847157 98421783 272665101 191034334 206356293 211057204 588378047 927790595 776803399 77663078 474469949 780874991 870179431 334697503 229941122 764280955 597834746 658696542 730865049 706867702 505226095 124679975 223691856 446379686 823295140 20030261 539428601 617939603 77500020 573051599 646736549 788301227 533208771 604432459 769947761 222783520 43248197 659809846 560349857 939736572 751085830 315452306 544591913 723755699 733424877 374538257 555810454 13841917 647973215 291812164 118178231 315000486 646589310 925206047 577257233 33584294 116508085 98322538 812758715 666848343 816940863 134686877 698074708 793696288 527264611 477199365 870802535 697820221 198630870 831359167 468802646 463071009 440402829 402634807 803783851 867355263 336802305 653844809 392406916 381955642 551223085 303313850 449730118 179949092 292561349 958568239 873060161 594257723 81342927 370720386 515654678 124991544 275205906 958967403 729612216 45995677 922433335 87945747 743848787 858000003 249627374 685410831 944543923 763522512 73959503 319158754 606435035 140250234 52260862 260038235 357009019 219718329 505190362 685199082 63470407 225912263 347643597 100690703 147452018 789975614 761717366 995764794 124113632 294549418 990555147 141513559 155836793 625405836 423558234 738125319 855119101 938808349 468123588 763085777 260244776 378054786 431034076 602463039 618949067 857227313 145248221 834596070 58186642 19758448 611855476 481046913 261142826 711357594 857692060 225120535 882105326 163489868 310744756 924747113 763085884 127690608 815955243 827215923 112897371 214393848 198220069 439680292 880824480 687449427 95106631 819682358 325232099 210331688 783547984 934634544 510833205 20503773 288982351 201216320 919792913 316752339 551583573 62228805 475431344 532515706 229254621 631564577 224084510 302290622 775829331 752252774 790272001 182536681 835671360 492290598 819504156 3715030 385967270 195610614 318964244 409567789 486764522 509676447 513124981 815239874 487082494 310160885 865135587 421004655 953758357 478421429 796350881 576089827 418152059 24505255 50989981 692810577 399237570 165352589 916665341 872075718 917057273 273974689 422613042 884426243 255523404 825555886 168781191 945136796 810029507 469569337 944063884 570366637 733041125 231918280 355624374 837286387 753465044 776154664 466320670 186457779 709590097 426729642 346976161 641332863 713643298 433451936 788608127 822052354 86015018 200169503 700553421 453896076 158488619 361170686 824552329 948176186 491364494 53145075 317127709 483810894 237601393 73843077 891404195 955419546 467942214 17970507 150902241 700072438 472518200 993699257 939226152 917166942 207902147 928289260 339299341 761442368 478894475 819113205 977022275 954304512 409349876 512135523 523259403 703057513 334972114 576571178 914810713 110079376 836585179 538402542 21035886 697382322 141109122 255735079 751030390 303872994 173452260 298547618 869843103 345695236 154180059 445970991 984728306 520027470 621510749 545802814 867131278 353071214 248558535 490279211 320334166 661288896 503739451 584988510 82782430 431472501 418719718 509204807 106090117 734619557 436465280 356133042 580523153 157989912 524079807 958669673 348627387 319764809 87504243 64964104 780535469 736428827 252966979 198657478 741443341 11238302 699713225 270757513 48681452 741331173 655171724 653276828 969936878 739541583 423334550 280336129 691449656 90493944 727425947 929726554 814318527 114649309 3808691 813899837 185546586 497355862 976966590 296516890 386406350 638175177 169028326 230196597 683756228 718922253 378188309 944284001 59780932 469629025 410295514 143791144 914065894 631906207 190946550 667747157 317480616 274763210 276255287 219827953 459801269 844502370 584310059 22588773 749045760 781123963 151450154 98171822 998585770 747159981 273674722 499978969 953855218 368572765 841683156 385149283 268852740 841758710 797597501 510262588 995913852 27138316 670875473 93561457 68159593 377465054 63545917 81663456 151842827 405746287 231447384 963694383 139718970 943851720 888517992 459544125 738989739 752683841 946692587 580258884 151507310 2725518 217705059 733628250 442565407 771188495 967419644 566748419 374853620 694776769 390867723 678356954 444115394 729508553 949330336 141200361 987062100 344455939 548461957 761026244 491731489 398851019 784898083 38311579 434279099 285954131 437230200 557192287 456339308 353754690 471640386 103732584 472316107 711301820 596445221 61168904 89945293 606611842 148216091 922160956 265655424 800582262 627837995 672470695 501443811 956100642 128950950 612341586 958225368 410769239 486805219 161677369 307271165 850931218 591354433 11673177 389219070 298023229 67389597 652641767 402537954 872834571 913040965 387991430 871510878 896689410 646643043 281021392 862543272 140933515 125301393 344017266 702777804 675081288 511082887 153986874 995511618 243621317 828592074 126702010 453522810 269328186 146351595 561878776 804743324 695177742 394443882 210676346 363257391 511062516 78579681 333171338 977030425 221215899 838130587 398138272 949009875 621339992 612413285 290892522 16283629 575528528 912729393 633141828 71935117 114541513 181611510 370083430 166488815 513563986 240795568 572642995 648414453 629269246 797427313 61957950 706533487 919091989 9474943 554508869 984008688 227672424 888640364 859458524 442963936 405865283 165945352 807794612 640119631 715197052 496402585 959791015 900979060 771511195 743441835 716911461 948691460 302888809 849990760 913508141 854636890 983332647 86759126 241851321 630150817 947039513 126630675 971928770 384294105 288536534 579582792 792162346 708546938 44772412 893783936 828002391 249382825 972610446 257056126 78653292 440616539 361245462 249320832 504235801 594752461 11622570 196323804 123153726 346092840 420384251 343046398 3817774 524204978 166800884 112063888 716546005 995405383 286692562 357077489 327559447 41691853 336011578 853323682 976573245 771171659 124795416 608944145 926225032 687296179 967175984 113652 724446418 484699343 112377479 531897169 869686492 407785979 693035891 57044031 185149036 705636848 394778067 709303321 494764155 581652881 227467576 450239634 817027779 323016572 743456746 53755383 224958345 444354975 896841637 347809894 318043020 884845097 507235832 13081571 858470671 247423168 880525893 26731745 744062539 377671533 971728495 706948158 4197123 686221861 81875405 313690159 553689234 190395977 397310767 16666431 716803025 990931929 35321453 99450835 377796068 973558778 928776354 309722774 389834415 831972808 69371138 527445925 92222258 578833430 772665320 197127415 376896249 101746514 525193516 41424422 125162954 988066556 178110981 104256730 330051999 427135741 192572747 577777298 15990545 560016537 27195885 91891007 764982605 502130104 285400447 846388185 180200477 481808271 92176777 536653414 432553024 374783130 431988149 807134131 861320673 230458952 858855302 933153151 78686050 678252024 765540072 317966234 864675618 595990407 847575671 905658483 502079195 456459567 42225620 401462289 380928827 799308594 981637112 915719599 40454539 73100260 563302848 914113538 583068817 840559742 128873003 631200895 10048653 479827136 50248255 202050967 906993635 55394843 563672272 996533763 871241551 84590020 976852559 597970216 70183752 477249749 45252709 336564776 137831502 610515617 378837118 700284022 89490220 665195299 743349297 720804311 101520512 340363933 117487512 183097326 567617730 728687933 584624456 154975833 814588887 800576642 309160456 418466155 250985108 295537437 910321536 327718902 181348617 537935665 348052281 520024886 580688917 567176027 522046009 42475135 886416917 351441893 46002662 866541488 442354290 891719509 792009148 587945878 795066361 420202516 907764835 456950901 931333890 415812237 814942224 914889979 347017632 339478554 528636786 733245638 346379947 286514067 933220957 747317958 625473001 664261097 227696883 825787455 706267804 370415465 254960848 297240562 175494643 86786833 984114676 632272114 843290170 787144659 121373309 831776548 458196955 410563145 377235426 864735237 393487616 609948336 360663900 242163568 396467334 298597649 654073135 175987111 853841637 293820373 103137700 994722678 988620435 646844636 590652175 754482231 984642939 983143374 121033084 567775297 660595993 668220329 866138634 808407611 623030761 227968072 923581781 152202643 301986891 793209413 557483561 57622747 117677775 783092744 885142536 204055500 528709349 131615187 890559205 857362420 416819334 538596011 584619120 968822173 134881350 210986566 151832411 492883696 522373198 192675085 604372440 729850800 515227650 298806168 897323950 56896066 406571625 192668361 863661093 385296209 606553721 670171350 271258913 452479605 410824143 798833709 118009473 520273950 323201105 917771992 589980526 5175367 677168736 346248272 803701340 621279875 722007235 665606643 992964961 980465828 878769339 761111498 838260284 277288774 276054545 628639339 31076141 292225304 392891397 17961272 75864694 973774817 781644850 559846831 641633980 173736806 15275549 425841374 703400707 961956069 645647234 536334328 171431464 510046452 166275034 560972842 667075833 257830 151682012 747850862 152351596 287733402 988831721 839276397 287346673 86310880 241482840 10463569 280559114 701714996 558320033 899000402 773121262 96467943 870496876 951133337 572562857 432712644 723119181 199486171 20873624 872337000 792188370 385803257 789105022 731547507 462608095 429383895 658887163 307563645 302354267 250226434 825889523 401377254 622287872 444120734 340775696 230232983 493129833 789097926 359662399 275387738 246598606 166366019 282817494 699181766 467331067 973009539 356747111 24260008 181186592 87515732 829887137 560571662 358715638 489458333 290843528 437488151 274729635 771533567 530059589 549152953 440660282 988250827 964442846 464906480 890799593 757723039 965233148 884325732 46713846 594970423 645080781 249742254 79664129 210278529 775552182 927101710 183229352 740667372 591992873 341904544 596163006 976670111 124912008 861486 9553382 427237160 690112009 342086718 235730214 593591541 641551698 956595199 866065724 242312580 383253922 807656480 714946046 115788229 588238686 381790932 995206778 974560094 500359064 928132672 711192244 146229158 577128069 576404874 676750703 720923213 248360112 47899169 370959268 895697892 645742790 500692620 78452845 555200147 714045979 109127614 662804498 775024171 94164010 726741459 334074548 564664971 673269716 218136374 438539875 440738486 414582797 257800392 973997598 344227113 259034880 616335429 639898473 500916648 850827563 346604490 875934119 280010643 414034829 907580646 301804121 348072358 952327588 457130007 814308938 601824619 194558892 642869431 986170981 654521622 855752285 410535897 578152442 711132340 701080046 456168989 515467925 792291989 604263191 13093465 643563838 652801957 961726149 630335503 750598112 560751171 962279551 458658100 327136415 168891443 917138454 78639249 594638913 148276996 874384826 656172935 764969986 108156786 947850995 588783782 802499515 425589002 521217980 762599131 441360929 803421298 691696310 583786542 225217529 329295599 189774513 833778229 917622537 818707289 990577410 403088491 63108950 653188328 977927646 82200442 94208255 368305386 803694322 714148745 199358190 209258216 426959606 724546881 425315060 640895391 168909060 225327475 717572191 753466676 361934579 559738254 325826663 984836335 955871352 78253646 348679605 145770434 835900902 37342122 118769454 708241051 215199710 449490176 980331584 366864568 8816968 208224134 212681022 831438074 124775715 421448088 913439208 321643625 504985926 81347780 895016839 511937336 652101408 262077329 833256537 469242585 850172307 224909813 496017179 47326884 691153889 7987999 582485319 833563728 237678769 622784630 904579558 273381021 13398134 400956922 295088573 887295919 454352891 734226261 654471769 454597552 735251413 757715275 419979541 166959317 748859243 409918754 930089491 967006061 94490739 738310827 170238666 76518823 578139604 145272750 653590812 98506990 474033452 967666009 937251946 750471125 199055807 343604616 173530530 820585322 328655558 118863152 344659348 32609653 589049120 612975426 609691057 14599996 591941896 39023323 766326912 5725379 70600871 76085221 623684590 677885937 423898795 167574326 282524833 144565105 211593089 638606829 237769962 892163800 129696576 386076317 159285189 716125909 806492130 166120417 334654822 472778914 99667854 656521774 356025941 25330661 774166321 823589178 825384926 963175202 177551288 890401139 936397623 910293454 258176733 212268399 449281939 77835596 288602479 490395139 887605560 323274865 988318644 723782269 420708293 309845724 629190658 27173556 824443719 743093508 945282734 124100106 773007157 839194809 575327900 341914498 609797014 436072969 695253106 431573247 201851196 837621417 199555597 251126256 491321980 352630594 841320565 13567309 725417969 623649896 534225932 787746166 844267236 371772726 995478485 731768080 210093075 804437332 252847881 313987922 194144073 253902515 758628129 978250105 913634273 839366725 507296785 764348556 782697933 935242867 139560038 692581464 461311089 688563607 603242810 262945941 397003169 858097172 446066060 116845696 173696394 374991977 271820813 235426564 935850497 363154093 533119403 157136894 404188522 446812591 706659068 151912323 919767126 106681476 483324342 683801779 850131771 108260251 871625675 456505269 397922801 411236833 895693643 184951336 358161597 648622716 305885720 527426494 900642682 928152045 433864868 498384356 630298921 215571679 168122775 940357436 544147742 397338273 686621391 775166159 414855425 896461135 331386250 454012344 251521036 945181148 488263046 992378647 825602914 540686884 467480219 926689931 510089776 339701330 232543591 126846479 600468381 918259533 509806729 350146378 138764023 537358103 383852482 481880675 236978762 829800346 275896172 406189517 637662039 196000482 359729559 483265618 820540925 173196622 412043104 818149231 586079901 606428124 869153292 512100820 163977886 533592718 26083799 978142048 205766051 313920353 583775776 916533433 408699109 241107149 441278821 785842923 514894875 798501382 283735437 35574844 903557763 398262140 197244630 280239756 252129285 580427258 573569896 205897679 3337988 670219092 871055538 630848063 819711141 760788102 367385208 105428883 528012649 933605506 414924899 557894879 410095556 679352951 526836535 864924662 698369478 562123630 12249078 49949327 847042126 357004591 779118684 726213682 220958515 333981332 586229210 826581199 145147269 14388518 89516402 303166541 530634397 971274499 991076571 381290425 393680854 332984248 81719421 806287080 141627195 281225108 243305423 299183156 543564901 102433629 497036397 82507920 590225706 882376826 429371660 272622357 574963833 445703292 84875597 73299188 184260318 132202868 27267346 727477834 795485265 188222258 762066760 524550452 842466426 856043922 925848162 137487663 962804789 785084586 942415830 735130595 894475316 421613694 10053164 110677184 869237516 26224739 773564195 658025826 356966275 445579658 683518601 718701830 367097594 830810648 644166477 807966274 467535872 431005046 772577006 732041420 651970881 461759925 58706017 267349821 761512432 557455156 241034968 716473034 154259706 937402067 260459781 559527715 300282758 537647939 694980188 701037785 397585800 261947240 584770087 915877038 437071312 838037871 870007050 521913095 821249187 530765423 527244765 341866242 614869390 984492714 670378705 525717825 107046498 401616134 384229363 912093454 510146896 296854064 610319288 99978729 699786623 352842292 27106987 304871623 512906243 528085443 267281787 528927204 106457360 766135820 512382769 370297615 826752341 291375017 200470585 534674735 53066132 547540373 943240096 587543514 130533199 185598219 777043774 879542556 277048089 247168088 966678896 993079476 180190133 987268304 303401691 94380021 975047697 942430095 243970054 781356949 471273059 374658501 228807982 446612686 545284848 76187208 403478142 405942404 408156006 814632568 34253470 373107298 753080757 372381837 701378090 850853223 864777721 949943194 133237577 102473203 769404802 12013884 948532115 857355992 47584034 678604201 668663836 176905409 197592301 22676691 135467681 890107594 419847077 477096438 197768488 786355625 700048324 279445323 804998188 530635856 835531382 968331120 676209049 301576594 327799237 194343454 875994955 207375088 958749128 232027565 7947581 386860518 814306227 54718641 237264612 549615432 153080986 520407289 476283721 118125539 432332895 462131270 157305904 426456338 237288215 258672759 117774203 466393379 673326866 825893923 821223091 774462909 749720536 514391808 593025775 482534366 354103589 454352136 950600729 339510969 319497119 314880182 855294734 213116619 493377263 526847668 945422836 590630798 75114253 767766772 48907357 267475365 869621186 496221069 858698110 39182699 269096202 776081836 273763955 313793822 976593645 428895945 706585494 716378764 625911787 936181606 894370943 786152515 146202878 441253694 874365313 862384663 674417501 852223892 159962480 164490568 243046502 989980348 382866880 300486517 851337930 404802474 397687494 12970967 284499840 10839435 281563806 187121257 254807670 353756399 765346600 137941322 862310763 22439964 779038345 16016762 887753916 7266908 104780645 106985444 456334972 183234652 895316849 449426814 519483741 805166197 124208499 303972788 301780899 863348615 100178842 408200056 150314711 405438249 814908676 396752358 564293411 722814742 37895087 597855703 894672361 506618722 751956012 72020016 66695458 844044666 976332642 977464700 97498840 284160491 883745863 24359991 626526054 275781967 764614697 168464445 188398371 810623791 974329616 610393643 911668250 926090854 568466862 424525005 856153026 344770179 630214885 179797525 156296436 153806904 790738288 565854554 367712996 592635896 72838313 697993599 271457700 559488348 885785788 777637826 643491453 182724168 246620495 515480647 777570823 334835324 678407002 154356547 462264510 265217992 389787995 442460167 17096559 182891666 594967520 585546805 473223732 692839954 904673935 584583756 872475260 729865802 608559958 683668490 945866667 222995851 599221602 59328652 472870774 6332437 224074965 452666437 280388403 680767929 268489397 588877860 595660581 186226573 244310251 356226092 297582970 849755282 62496831 59909232 408812857 989415613 832102486 469451713 829962440 725392539 319497831 505332543 527228864 922815931 325258049 898250827 319507234 741219998 646902811 322390134 378835592 374276646 372600926 794047894 208782392 482340288 960777175 535087011 549983271 316917294 725784505 964405129 505687849 843092738 170960828 17324140 694169201 823339456 732106088 577153127 55768148 129424909 26047459 702826072 730406540 43978754 174356903 509556416 362810663 174907210 90471014 608220713 536464085 508646306 112086945 124176745 619990467 37534735 91032685 583693270 565137051 439110723 498403812 968615440 307784453 873609344 494869099 227374415 519450716 437718265 581391542 365843334 343676355 37183646 690245674 44487780 98689053 772792236 83975458 239865953 250470060 493342434 319137775 130642970 473430180 795548018 512569965 732784274 54657339 311142781 876356962 370471543 623748816 506857880 139102839 979666957 75619497 471210630 136754602 62038734 748177993 508915641 245995129 919101450 904244342 733806935 937154001 722205023 10674583 698898421 379988103 199314265 215988290 90059228 248045494 902004037 348772167 491387383 335043989 13046327 434371832 950729832 808742820 372978191 495951421 744909917 956099847 612503730 119317012 857670507 834376000 745706551 69620285 159561373 833776888 782178970 194277299 994667816 750243295 441912267 491062973 706303496 28629938 986422333 668266219 389486766 719095086 165589834 327090033 565430225 795694384 119006022 206160028 759101085 281577439 724777433 869400802 618903614 361853887 591058464 735538464 954970722 451768951 671783519 795093816 93306060 59787712 501953343 203691947 158042743 841006926 494661522 175684549 401741603 882845013 597884049 591084081 992936359 759099838 115841943 742008504 813024096 628598153 438553543 347357328 826508438 861769796 912339262 458345042 744532825 438810735 726157388 697203905 375165287 413833849 389562857 910445032 397886296 728067833 554269730 350271032 216478101 845683809 880996880 696136735 479748260 417377590 9207332 921756347 733547385 486011132 266283372 458256374 765411240 451148942 919201765 274387037 854802773 452060028 389905335 699155648 293267343 576374752 836890234 741057815 714181665 367759382 625005196 574454666 990993424 129480605 240887442 610055033 112205778 876629461 837089766 256626850 757851599 527823056 578571399 527822662 67991989 613134641 499137911 236742906 408900545 183123393 66088622 183776209 706862266 472502025 795139899 202219021 4379825 967598018 276300514 786446972 194547635 273757928 791689792 393705930 623908764 647863724 424494050 588917309 207324006 991790043 531947736 512714765 321046895 733672111 349403035 827094815 33679327 6985330 92355801 357946988 168338076 237362206 663566991 368100407 96449152 567618314 670875013 16987279 702136245 966360984 625887798 309765190 633799346 417954819 682253620 808547304 667604763 993069890 770836449 790365905 677351619 690282985 674169915 650675976 329181329 145889734 377551329 829660852 228225999 998885065 566923722 3675431 774447582 661579034 554336121 208637849 236548884 11683600 848605922 380721893 425242557 929927679 815207099 852005250 338096632 223227991 594018989 886247062 157183830 938445930 303648438 534355189 836665400 986980009 713215968 503799685 792315011 228147636 769853824 114011157 902812959 751320841 120548483 55007487 977893741 868290078 247015228 478915640 429286209 989549749 359929980 364603826 486966288 99835298 94972791 620449213 124046632 619728930 811143812 440763273 141736275 910055793 627978520 587808582 344825266 566250094 335328315 734059405 920629922 139701559 590539495 615239123 129808204 469702408 257518219 617282579 168718673 642688792 68655226 377460589 850094483 891792610 382473911 132721040 547995603 252914846 934330400 570586743 690451058 849870974 219371844 672824355 438229080 245901721 300982580 941691252 771087648 248126366 122744187 694835430 983858481 438247863 222614417 603471716 685438592 700724104 372229749 306692531 672283408 155663287 837208195 30537661 433117966 381874707 19948800 596875091 493071037 418159802 987602853 708708366 580497508 133861275 435617576 646676706 321009706 336374452 366732657 727899907 527763998 229407056 581733142 652405381 894719529 676504106 573593506 367293384 462649047 232124857 180319373 260036955 780297837 45231360 882270815 600862090 305437007 797937417 182494804 770138593 839624448 5175294 868245560 995526916 118190605 331111461 145257025 761120022 227130477 695972600 110029883 399741388 245403081 717010334 75578218 51512258 745413811 208616756 253770693 71531107 176561714 931246455 552402219 355908224 909402720 300924824 197137035 813155702 745924032 994456271 747620611 761383409 795447183 806444378 682419622 521970339 802177657 562051502 875695710 574589161 804804738 208513706 268053295 574836623 889442142 769630286 178531994 915732232 971511496 339182898 524418848 729437672 302140408 316327097 998334925 93036547 765247627 740911996 236869055 868702429 402343089 281367918 213432910 189991163 137294897 509912007 474402061 724601836 306451374 45458305 201827802 458653391 62518496 369717801 525667007 880891216 446036012 546208842 97251024 522998336 201929096 465968251 507641961 641038744 729286805 96381222 284995758 379005671 326997299 52158461 485501641 49920252 877233670 538157956 110515761 862155456 1618352 695518763 928704617 739635449 247573056 89242586 113227831 451802367 880271308 299232472 186040785 834974571 599043581 482843749 804246396 121048322 429882151 539980195 695193794 505714882 490617598 197109107 107457520 52233228 532834 970056316 92849297 93560977 74385127 585059950 259199727 471943611 77096487 701421091 536653690 96640350 467178926 803918410 465813079 76222004 643892144 131358342 343409035 224260000 64519976 974752002 920313414 359199015 436401759 23971265 690128440 193003006 925390512 740099320 35767718 938696918 377888902 960902373 76191774 340292668 663845959 363061481 111683381 245512250 515656383 82171558 100224207 987548690 616761032 247070378 852144130 546053333 432112146 314320336 742798096 833053083 647878527 56023297 458163414 693507559 102514474 208586713 559203186 691077288 376965454 770415662 130355687 160589520 746188915 923182861 133543356 616713330 581113338 188109687 726506620 934091040 134066441 530458704 625974609 593007661 296562457 39839040 89634276 47981880 794031944 379361041 522276496 863639954 702848432 115876846 57505426 453617313 817936572 360464623 466480918 388992800 276559553 909510475 604523380 981817823 826333948 836660718 102239510 703791610 102112789 30919243 401475447 158395347 899877801 497406332 451884010 336155759 636412754 172740227 664642638 757855929 150391983 674857387 358285220 586984452 256253187 264811169 966346209 749465101 278978248 250671044 64323022 37229719 575049666 116998939 445208275 467327325 734098729 620416637 407985012 872356730 64537512 320664388 902382327 30185787 434177294 678004233 876022826 622760956 860216684 283616982 764958635 51629185 722301262 455038052 996877404 384216259 467368003 309373462 585152055 278986949 233687354 767181883 666943750 209903658 828150459 611770881 788453828 481051051 715372708 986515916 319598946 181310326 83492063 342760596 199346765 822144819 591629552 3943103 76189042 375129642 353430666 255871066 861716973 562903587 91124590 632406476 47175510 388316927 118144061 800694765 870450944 114620553 272695557 972741965 612698793 195679137 824037169 366821330 417028087 496008564 27082845 927188321 311075121 480158634 307664168 988605139 484504651 853594205 700723552 528195171 559624328 523263828 571024897 114498202 82070590 118548267 502269013 916022713 897475537 740182711 352307132 579357497 71410420 123469115 50894035 114751258 145011990 687628061 926060657 763784417 217249560 38520905 928766959 897560924 647229733 338336598 734249936 84751465 958294827 39290148 822686238 919278764 386800064 173624217 115294952 900489785 443463225 73559554 475258590 838836313 17299589 728098458 265534301 66019284 665746494 736737914 661479017 937765709 916392648 38793580 961682953 339770024 976208559 154703498 849297534 981880685 337122487 214981912 635720009 365030317 719734599 77157505 38460674 209325959 997984275 460784005 73805044 124064818 231719308 47936578 504575733 879396324 399414281 399590815 750569707 965331147 902545495 600086591 374776095 240052532 445976068 600827001 469996553 349784374 747085861 10912961 907657816 517927522 306966973 32825648 606583966 493621754 42569510 522969821 185611931 475603969 188405366 504470477 85590128 242886228 461646865 474085063 904003400 462813908 253939848 280799331 622973902 6135459 172302717 859137207 304051406 721572412 43641091 822950918 848332098 714584644 499694827 469280962 888777508 776524404 86102755 855156152 249897567 785942610 174881627 768015645 464806737 576979636 335899877 391022936 149191892 982068045 490536446 530407789 736272057 324581958 421272375 419473891 858850194 471567318 132356452 256443085 511009133 416432448 655665101 238572064 938351811 683724122 959402015 851803576 661522458 138926956 902818158 164865270 317764756 211962221 89661856 653459376 620050755 622104905 409606585 693199102 760746452 592452641 40908191 95032623 742074432 759031086 587508222 729911477 858559251 906054116 696286378 92061555 79025535 566691686 233415854 189919772 124867146 134726340 541988610 582432159 170750963 368853393 520864997 225293068 551133441 635045053 651907212 36853537 240946472 153477195 263784548 633671329 394134423 757808695 829582493 693253929 925147843 951003528 437955627 160468557 651726762 577800856 205585356 714259900 596692095 235575689 761827834 635280567 845992565 828962464 632045968 535135913 374726189 535720516 650359713 967256380 522004174 462090245 457033481 132156293 50282828 706287650 417979706 236804969 743308562 204282115 9484662 688119077 717784733 942924601 43274990 471650092 833035662 539119192 903938303 685981686 634418952 436964210 702652814 60006694 476037786 324147852 6531297 788179948 193190117 224978206 115145217 324228732 63256382 123422574 498470774 652915934 300299273 384200449 760632153 786565691 663182641 892604017 474837883 91417725 713696135 423968710 140201880 664507047 309077333 576620212 242437631 130458156 583053598 656564850 931547280 593334804 944444390 470544177 429752906 343695255 800728821 813448092 240744853 784912534 867628750 524499859 982785454 567340036 181391085 145237004 585422279 338971872 80502532 792868019 293344324 488131765 245898985 881332055 623321581 860835331 154241638 424276661 235274321 261935056 692369671 272105506 679147585 798063785 506875911 809475236 934479774 283123702 629789908 218577912 604158980 991615319 114918228 41597443 384673161 790149300 685332552 906875640 364157822 466971631 984850087 998108262 496653062 822330808 424409986 30428468 631742743 649901989 617676951 292505800 992092900 517338896 430428109 903042986 449019145 404172772 469726964 526592707 316915745 511555323 429770001 177301620 696694493 750241174 435236037 328968274 658107702 618690184 333290912 522805097 520523425 230070620 470192837 824883335 639777163 657917781 365356677 358750931 688256578 507833281 301869502 176963839 873222757 103759242 655430828 479282903 479047629 77989646 733613994 273853069 240664067 695396868 683655310 143936325 306272210 816476458 753221796 869859374 958869679 422365381 423676390 291039861 809417907 830445016 513882199 513749274 355150456 906053390 43964914 816123791 304916994 190580832 226803575 33864378 385049282 633823079 676621290 973754751 59696786 922694209 215559823 535014815 435687871 341186675 895521830 815478233 662900537 21796895 608614602 315867530 535045213 994754463 359689783 758601985 855635781 299969538 104896488 722342197 507825854 555278669 871665437 71959530 420502276 46867519 510619750 582734644 988789446 667694979 897130208 135863627 831702639 624032243 908725873 277135923 537966000 321807730 797241858 289996545 665211538 461808128 570660573 978973263 13988658 62386618 436486889 459344874 577941752 365834432 255092781 921627715 649616784 3955238 656611182 156839161 857825836 641321013 256893809 435004146 536688034 43625145 852845210 287899824 791143889 874308629 779109741 482472397 233249947 859758227 492495036 522304575 309948145 221349796 910924338 480817228 879442412 561515058 66516908 778863445 951570717 327728665 897502839 291308742 19997497 216384877 460471318 368433207 419666154 110141135 372498053 770502670 723000111 787483205 627340441 654111453 704999133 141583108 665049240 542777201 474960938 339993836 30006314 449742731 226134720 412716235 189924324 609756665 230677340 792251559 152750606 145818787 504150137 926371219 686168485 53988595 761220202 170582315 525269669 389699054 715904598 126260537 445324052 437210071 173265178 341543120 82443965 855682128 426329822 253529991 472748070 537068027 855539641 256736781 35055032 38169470 541724578 440336860 889564425 736038997 251875060 144534164 291736225 635059621 54069190 655080028 959125394 935275813 537295967 234822021 98608350 237910550 912682481 754320840 71320342 199142485 182916097 788688699 12781511 733688651 76027685 595262382 830858611 668880400 597035967 513133582 857822284 48745125 386967061 628613448 869309311 983147479 601405888 852408030 692043697 918857940 928488862 189525058 435316642 330226952 168126980 912850229 749822821 56899425 325992911 184266925 391184425 921513496 975356423 90382400 54346819 904119989 175134334 348476848 614951028 119570454 968294173 754806873 238656235 883347542 223009702 92392197 994470300 893272494 502550515 58522061 617076269 62232868 796507027 646503104 18920256 648193063 903802253 245681440 67832823 32796785 453952951 112996888 726389940 675934246 126923280 573744560 961494016 542361394 398590317 978727870 631389390 181910937 216450376 912611793 348728958 277429832 718312121 721942862 189266435 4188663 626957383 801607369 954836303 635101621 736708526 121773175 581584129 939833127 630382951 350568121 326752279 487621378 556341689 968508829 83261710 848190161 85705484 825060356 861419275 529386747 682832217 83376284 417353566 645705397 521562697 699691680 951445312 887299453 135214213 772377573 233492032 682890591 153494356 244182260 322528747 310971117 462529745 635308007 900307862 36943127 725187481 175559646 51723557 369591112 375808175 528031357 222461557 658165261 869302545 980778179 147495594 2883631 130216237 563793142 163648242 491442187 942770152 881422959 582384305 981822809 78469597 105934656 831012016 518438541 311257956 533017062 894281676 253040755 284819120 646471170 179105903 8071459 297590770 706089107 655158966 793317542 520470156 887809818 773049560 955925938 33107387 331478823 339306467 26186442 126462574 157413422 965148948 312218553 634074137 249567041 588860265 517915125 228067022 988716010 787917560 748969463 992090236 809346870 205634677 967466261 65987469 827033398 75297819 464230523 97520534 351939899 909154150 876940780 93355958 536477076 535582088 440174818 822071695 9772366 164376862 988033107 306638893 59351904 786806009 870528300 998944421 809323389 351873350 899340580 326954654 921863449 23758127 127971847 397987960 329734976 303918731 438411116 551852550 382627790 366976714 860615938 676413357 355897306 368521231 325135373 859237388 674555838 399913475 19169997 445509467 188487455 766526713 893508800 612336125 174876452 635212985 600416070 967754523 443500603 159880140 257508281 893319249 464361554 38567596 48514221 501839594 16219173 893422556 507833657 780158709 808124945 192624113 968549751 456242873 225237342 309824673 61201295 284844882 359098035 683781365 280755383 981045077 937724588 927349176 959172579 283112127 346324000 807670442 754556725 68656977 191599441 760939825 31765612 937017713 894980135 136276627 147868769 61228928 385559457 412018809 618157665 230560920 833965147 562172586 860951832 781988379 981233567 668249944 620719031 443214075 999284912 140667637 97913281 976422404 43682592 921325955 830560973 808563357 998923511 160247730 331620329 856760233 871662701 636113174 260774284 315510499 353995635 975620179 164448400 236368426 227676964 145590286 503356284 585905702 744600143 951674084 816360781 582258269 919735925 82752396 134492493 460124105 568295711 756591425 909495178 722027366 718844820 671026932 493956325 913306030 654660715 918812743 614714144 163833226 532575525 33260084 898069820 129597787 100079597 262780698 496497552 617570343 460692269 272735950 563662877 757376395 521770969 625531263 318134863 396900080 531463541 22335461 279536323 779633375 833089801 943163183 495612511 329173810 528733619 739945133 931860195 233597083 485043810 677742685 571171393 392953539 135439565 944386493 484729562 734886059 949642861 863190979 128452816 251263603 402662534 498030041 768203215 345995270 890181842 113602388 943737209 418575984 186153851 763495600 241899178 894942634 123999806 584669970 574524972 995067133 983506119 213717450 462001173 735113377 123769946 372331373 726712819 941685454 103946011 932439286 248753142 99385371 323647260 879777496 973420282 622841908 399177499 890169433 419462305 701580300 143619139 757637951 592279926 494519626 832333407 470662009 897068321 386737733 402011789 104333576 659124090 966104865 551509173 262026263 311434127 175695720 6070238 453473875 937025033 516446067 456422412 304473512 214086669 246838126 989986374 9648173 227549645 517642504 94297653 212638290 379509160 298787725 530779184 958100338 695357412 336821425 334466174 330741767 738335412 804719409 50975162 14783202 860026424 734989095 75974026 708542558 106341789 958967960 60762664 334365768 92912501 79769838 215868408 481251783 22686332 687011213 167109904 600334957 237775892 434164572 103369392 187090206 137248392 163871530 712209517 550820674 661711338 87733277 124616646 101422680 120633900 34171524 887509677 13605889 188856039 676562239 193720919 582368263 180263986 890644765 151498986 396496197 418944495 682242893 518653347 836985880 359217961 212468825 369639065 233041022 817237813 640172410 299828615 467888223 7451449 331220680 995244070 41321736 628709627 748231971 381205885 863886235 789824254 65699743 765857869 424296040 300449561 991762890 877273072 62241474 868895308 774929026 85750259 775545465 674788031 511690719 631866223 867027264 390502439 761992286 241131605 637437322 653505106 923956960 77640667 79368728 226777462 4241431 836175940 460329220 497123342 104719956 705232982 510075656 862088739 178896872 937585332 787489781 623020970 871641916 896412767 864712344 922390943 773095558 409627542 539504189 919544399 694556419 587781506 448958295 658471987 844407891 681773275 630982293 984716815 626694311 301170249 539282380 155705356 99975507 563676689 356271634 367373349 149653271 990945511 864174152 228180706 354332636 977453046 515283043 4176300 434655016 310206582 261224962 972273519 739603617 864668084 240198063 146953133 896996199 749503900 1265088 64200299 103659381 313583211 192078213 651580002 222039436 16726329 440032931 622552961 963113926 44763827 345842139 410682711 504562041 467695232 740620620 759741341 960375870 558437606 202843019 859681332 811386329 995028886 834412041 700518100 827523528 815099961 470982828 546218082 161631731 187873515 336888924 336438323 479434863 85282154 881870838 495583957 564523699 188042337 528079330 878253574 348998306 415793686 68269291 689881886 163682440 528178434 887413972 321331406 398003354 77212924 225630150 225805368 827202388 364494885 566801776 525055357 906905340 493615802 361853253 460534969 508962362 868619016 799284331 896757932 396201524 392252792 566151458 936843248 252226104 632136112 403310684 210138338 693454133 905695157 544971108 295109420 775558124 617532362 412724710 336425831 810861168 600920413 730682232 787790511 138230338 601523832 837506034 713801392 826979722 977755675 460204508 48370014 655860755 474022842 354162648 764737200 224230226 587390141 739529662 553850613 483056254 301304985 883013773 127596489 182272765 157305548 580157634 883485176 743757157 140050438 990290444 559611408 692596618 590310457 496574582 280035890 344201657 506807018 703381602 138232180 801887635 891406751 60305462 723763656 313463826 878277810 478265898 626707302 984147003 823047748 854927811 140754805 801725964 181351890 682625961 88389834 78056368 905267647 790517655 942374810 488780864 494935206 56830131 174622499 302703522 901177113 184838571 877733306 101178972 327407446 730911167 172223171 669532513 971987677 211157969 865006169 497696975 264030725 405009989 582473588 271688835 434165209 620010595 926017648 590076258 152207050 307632621 737401182 641721584 26512071 416106279 496764753 10101866 147595952 123663730 441820618 257165905 927258906 400957856 707695871 752045625 533550781 787131916 693829416 499643377 461273268 565659372 403396685 873132332 653684601 557398874 593384251 559647377 5755143 943580624 196759686 502632548 585754508 121175163 173607119 992370837 826073712 466303241 319075883 505964619 596438870 460059836 701089669 99693267 266555512 419837237 622255672 312817256 878976845 590238050 200349274 363564055 923773167 436828872 921228392 908601 749714545 501933940 974689253 567987165 874475922 932247589 442895219 406247064 815075143 898492038 272715914 642694418 566489364 871471371 338380859 961556685 328577931 731697798 754024802 294658513 455759602 138232207 337996580 364441016 380919688 95632992 471616518 140087005 779758953 227572744 232671425 769837253 908222436 487409075 841234781 972955072 222406388 815651673 503464261 375058889 649211581 750642515 946293495 709042733 634261766 140451073 457891420 697842376 972672537 982236762 719646249 255007395 856330160 773415677 837080995 574744489 750693510 22071644 811817056 637312742 695551133 109462233 452695537 573068316 294181191 437517499 298687053 15705955 20223390 917786753 977329149 354134235 940880003 519289018 63732289 368319256 174098001 890059781 984117319 628878820 433181942 153633794 893189612 398210043 32584939 667494230 693389947 660364720 94498281 125178611 505022418 433045764 831974228 194236313 141859502 225942382 351978225 108210234 146132164 531287743 971676796 390536850 180398529 601076302 229866803 721053843 252544831 277175495 475369378 328898267 129140163 718628822 893709726 356298487 896167012 930816705 368942099 836701401 339659806 669938057 760994934 213210893 330935783 852484667 234474551 268565229 262522542 418780613 424070638 384388412 801361437 474177540 220897194 796721052 740514306 629129581 977032421 67326465 402825439 289708737 160115533 893578198 375821797 293589513 433709614 115390263 865669947 592130220 436449442 382086249 300188887 541122608 38634466 297247146 737709498 500939482 608521680 584786985 688268892 932817031 87487214 881103001 214310734 175497833 715630811 140312089 421627414 782191210 559995236 178060956 713865355 410954529 517183233 770076578 128476019 715149393 268656613 949031864 674835379 429889031 486607300 544844346 524830475 415013364 456949143 340801599 844645541 532492066 738320776 879347238 827274442 66297479 569463413 694546238 112892351 107964680 603542264 221714962 972975300 276238565 838983925 567909789 563646123 924742662 631417011 179898835 27659137 848018577 261134087 840921932 429673586 30619799 493985679 295763578 604711805 667987838 698459938 278403395 606472341 360218326 469571817 532715886 441222520 852177404 71032345 960582241 722219968 385558332 872699520 31906302 801380203 551062158 26273523 175025656 301109405 628285499 286421154 551436666 135994072 176345843 570149502 489210973 370051205 398245086 845292671 791943320 127583121 663190130 162925554 854484100 505396349 980388210 647643084 66458598 733501394 465188842 756149686 802651737 301726441 351158928 994758851 548427388 710316112 665978382 368997889 520002794 967494657 621169468 811669430 747701106 140957055 754022784 793271865 766974742 632165139 213544596 808116641 905062693 289579225 631446946 936469865 783906744 167439445 434468817 776935367 291259378 596639291 188021100 818991738 753699568 71804844 783929480 879996908 731202217 945114006 32178200 387420009 98542906 873533880 235507517 372453307 696030806 566232013 485403967 24362362 383188124 60730603 813005648 700174679 744964378 551331801 362690564 618442871 439655558 567093734 437180344 447062720 251592994 573016814 935954057 112216544 10542483 867531346 736666627 87752334 128508423 568687638 128848998 973616330 468349662 441926352 552660718 517204362 999590714 842826012 871251317 219380059 920982550 447284071 684558930 184181120 972033618 468249151 689507297 165527981 895463164 605828168 81088102 49029371 768277464 284868012 184825352 466080515 925136698 772650769 190581714 955826089 570703506 345775187 724372654 827919643 433638059 476643577 421412396 940270309 511018399 351509225 204896443 650743851 819332259 92428320 164595564 659550576 953193114 424818828 393460318 242075075 517580918 761032153 564013322 509551275 929568959 914948090 710838478 866128940 889767647 932578079 514640811 419722993 222044216 16368328 8678202 38143223 956107532 704811498 28946044 730885362 539125008 886251470 875554883 249028370 83123564 485924774 646370384 93589953 609370651 594894392 369059944 98038806 152981354 597325743 957387571 505573265 772280228 636449741 271601531 644095970 593998879 542566385 238202688 909694440 168320459 108948992 563939262 386147801 88134129 649110467 423714598 867376383 956926380 194143080 917318876 162773745 954946652 30106475 824769069 593404745 858260485 799067274 934430612 794142991 733484967 698343237 672876119 601023994 435153256 328604214 680914813 28400790 405244514 886363685 233609683 318125689 4160424 126093659 505837561 594970979 725401830 679436044 669244993 492417505 314443020 47592601 774415821 964979318 537228083 736737310 423137662 858107589 903897115 494128812 988419648 73230850 864794846 151856794 555316876 774191292 277560435 818204199 324822069 580416567 401794385 67917560 977402085 462464841 45773797 453378114 880263448 968294092 964559671 432960870 897087056 834627550 915515530 358524047 557442770 45289383 116069849 567703054 914333664 189146208 374882256 981120544 852239923 863337611 623866866 931612889 58965390 114157380 825521518 85085524 441286042 379565480 551562652 288147829 620926410 130712661 130679689 362874706 532261432 422141882 35412490 446290210 327161207 612190254 973969342 756252213 766046659 539977285 70876199 886319534 714606607 815224782 298787813 645997111 200080434 845050179 353293779 721368167 11686054 409816665 595254149 367914629 267434397 912603063 287424898 118496711 337104486 317878983 910967365 222203526 220519271 430278452 810663934 572221325 127001504 747756857 301768399 321815442 8381889 288793464 248937298 959615318 313509039 917210285 538672564 155702492 529277818 824810821 20334983 674815526 365485878 610746810 10947157 117215387 309368451 618021145 500655176 833431823 363048584 716434737 843869550 423980972 831416585 585973746 258478904 563542576 21431687 271173643 233385508 808923717 82146368 236372691 336337923 951917971 993633485 154422462 201286912 647624577 664134313 460065305 547746405 23604470 376432812 304169839 867832397 642897827 709490432 734308821 125502611 342334116 830898031 210624543 143838379 177927827 376542122 95906539 209077673 546775842 35824171 520622775 301663761 718204183 957538819 584825915 20356890 124562787 576732686 754658786 88420847 731774122 924246437 237140392 402654502 590142021 581130240 443610200 534728620 45159544 921138472 668827727 550642448 795678748 50137225 203005555 383031760 48199088 625365689 214452195 631591898 152150765 339050699 926958794 997115563 646500742 669673613 447747492 978919168 395965940 155783750 197004309 156094530 168914818 712576828 224171771 354644157 408916385 508769891 255383659 59941841 301217965 114902392 254002428 895413654 380411473 786403639 893832279 817381213 568247005 405908551 513745743 623012340 947979489 531406213 952930470 7431632 296472308 419665291 263665406 277122335 744128826 913700732 615230746 859146476 336039775 114568986 211298478 415516722 75738696 291266794 951854310 487903414 700753578 206200660 607218877 575593005 382869281 987975046 362579063 261369162 716598685 425104210 376040785 917174828 969285228 604672444 475489269 346901368 718431270 104295875 148081149 584852376 185934931 861215438 516775778 769176868 426178349 55290625 230033156 154416728 9613521 183990515 89776096 30984768 585900346 997890626 203144389 840569633 227332033 424167069 868223333 580551009 397118581 167500527 141672056 932397916 243166433 56317459 201956905 283054459 932588288 733801156 414099872 23193474 52352451 324561628 798572039 735393551 900727778 360813314 736153521 277557014 471139727 618882019 129671303 889914376 507773998 35245072 755627389 619175864 751343982 227899578 461179370 744117482 161583786 287737392 424389394 61807858 490290630 911948664 557492405 205913731 607325848 986742473 507532060 97150460 821278829 323392510 868942373 572538058 384245999 986803263 345722083 765759550 571721753 683800814 642424576 375520740 812385757 898676306 689205828 342307784 606267591 455450140 661518916 690636943 895515324 925236853 65177988 80177430 703137818 403484287 518219369 79612266 859563190 101976972 171347953 685214800 670751096 720122102 40511784 69750511 970105610 636926177 745217449 39982313 865720480 853716158 167125183 973657488 333983234 97698677 817922303 565677649 499197591 54373971 131467190 728607871 257257242 339129528 114863733 951524053 859667585 906445539 998009057 878919673 969575840 255773643 722931358 485703466 111308929 861623783 549237458 404480104 839942644 515444468 619787954 489223250 55009725 598712887 364877578 114481141 71314127 160891813 408653422 713868448 635240609 350302506 395317944 336269859 307887104 241784400 717828799 259526987 54886270 354884385 737832990 676088431 246180205 837778000 652663843 938207958 220836004 126889068 590677940 736011576 384028427 290243131 565583309 149845061 826015462 163201575 198570995 863894783 747997255 94148311 35506545 728313006 515192290 648886995 334895776 368115940 157237596 596491998 517483811 587390472 373754496 168114385 136837819 30947318 228880478 251016700 118768426 319245176 95436043 572021192 708810373 989966234 458214852 612244509 641731634 135969067 393569336 947291716 471522092 473377131 590402450 924642074 814309373 538120132 424031373 36566061 634084742 441414148 730372239 468596782 836989574 777874041 900903120 775551941 697367054 503890955 861892736 140639593 558358977 840435277 812002509 512137578 912306220 592886142 711155581 594807260 282541757 511221240 707274998 244383385 161846968 426430376 772504361 406002850 147206820 15195 102685545 643141074 967347959 596670778 430881733 384446356 684118873 475937598 605336712 93378597 755640941 375591812 618567417 129266358 415189510 880316081 794011637 956926993 288398079 331635226 692379184 830383492 750174685 300652195 811542608 196844779 980684890 145993450 844669348 433846785 886505778 81321475 544739034 267256707 921884620 679371467 313117589 25247047 986560684 681063972 489383039 22488296 808617089 832557505 348732655 148727220 773403391 474212923 620224294 171169320 984579120 533712377 437683466 431898619 896889028 134688741 745566240 816852604 972179073 414124727 405507334 738891578 448171154 395849510 250632546 203661762 947707185 159649234 621659669 399323768 516756134 46531731 307334725 462547065 454979705 26870198 206327006 459964848 359228874 906580281 72667455 119229634 773747421 974226311 42226731 152457782 282645729 539151981 183919568 85031991 929758500 49467330 507875402 786868850 117536595 500143349 698533846 450422372 263752473 226737229 376587305 960146124 875259069 755589087 338855942 402553220 393601169 6634810 214934802 928157060 85912440 384015779 371146490 335329116 575063937 906753657 500945760 148436796 901567656 497409511 471629547 559087636 957032816 661627744 441875647 235255867 980378410 644963364 673960661 369052160 291249637 457101987 421723863 530006158 957438136 838779518 706044980 470274689 870610482 394306184 846674602 422071338 368388750 745217326 809800783 44952226 578282057 999252026 563454684 107330939 753430466 715094082 423321010 83285411 281189880 627577653 646170212 853906986 972954598 385937793 902379934 171209173 168218274 188607739 78147796 199466683 140427976 926695170 628277412 418291226 46535314 355834887 148988637 675863415 417125887 1993321 22764381 956802736 891474761 646957911 906320790 730361147 697747414 187469083 530034416 668141856 850770712 296782798 678974005 503034636 386288372 496716347 253604304 855980204 297775817 737357418 968217938 362447440 670987445 104347944 290812041 11046283 321078368 485205228 722779522 196169575 919267811 119451353 118037278 22822967 730466066 947204386 39808155 205881719 117448295 647809208 59175267 995906196 237803407 585026472 104917304 661914242 515506085 786443620 237379804 275924078 795556278 128983515 408633050 380312083 359351546 33938036 655147350 71219303 553446254 166927911 870596056 183403406 23737542 508847620 725438981 847023060 445792152 941126301 80651623 953003793 329850887 347163453 639052912 748738487 709334916 42892080 172209791 433131914 642401193 917836497 376255009 662655995 167709222 371633974 911327400 144827997 98418360 981850362 476687440 87711751 994754731 247303398 341038910 207113452 973259563 539074070 867901101 315435268 837088371 975649165 770507058 730417493 350450717 381678477 800855090 694122802 804223467 944702607 441233124 105729070 354967807 339366828 147525299 525434278 523091286 296249184 966729193 226500377 752440645 58565034 877982177 780033858 389119718 700177993 388573332 745962320 558702172 205714258 761076415 610382374 2313397 437721901 206690623 935423534 56054629 214683138 505995491 981965779 309849787 717029235 489058385 59601332 557596147 830093226 903355854 152580021 421520221 684559371 555480305 562845679 470000238 635278342 528749948 792188381 741646367 652029960 710783675 26362978 512750988 139470871 84529023 779058501 643804227 550925113 115495006 913951087 606470225 977836527 242384002 766300744 487952788 746024559 136590231 846709027 994605374 404509814 256458380 990459217 317916067 505293016 354832672 685547889 349144613 575067825 506962124 106498376 76333283 277963213 470135262 550949474 815243300 735099738 635358488 519153068 374731590 95569018 913743681 928122879 428235195 835581872 913439541 501324412 797499145 65603828 30896125 932655015 698707238 956015790 297990688 52000431 935946950 180971771 69205378 102922520 887801775 30093432 793188131 170793443 288889007 895141915 955203215 300525674 198626097 942274161 534019626 52616145 817503895 39592719 840315044 789648089 351503830 39532329 17012547 162658747 432684512 191929505 702997269 745075432 113689340 940038820 89659700 118226605 782723141 373638355 960317322 484872728 473896133 905618984 747704800 417254935 279590947 257110524 970152072 279930441 438132268 275870402 724320295 894003052 804593735 322991179 55192701 644748981 272066451 454933859 446063071 990613837 687712607 164219254 781840796 644121892 198253848 529136000 339953875 455686856 294632142 920696664 77802366 347502468 409469428 53708266 571736747 364595342 640355196 364991765 430389957 394146822 255536921 8045409 181219936 337478512 156603419 970219557 836550564 344432836 419084040 379826283 355658422 666049854 154389812 859806964 105105163 511340448 825437967 885367768 77892021 12675627 921998955 951294288 418972115 379457885 648316062 940784855 416640022 240900333 407691848 440503853 730915995 732393283 915914516 561303766 954653121 164709413 663498980 912625841 986061557 838670306 976564112 237931274 282761357 203351942 539405874 690526303 793048867 86663905 766479633 584239437 504007240 789684508 432846318 176802547 285700604 138693804 983932903 280896090 402457217 249462988 608845600 491533123 310791672 499505793 709148803 37435518 856971511 328423577 516021781 873611539 436736404 367077339 375250661 393673372 533658675 707446537 300492409 662300532 223870934 45172966 934052664 981702677 880293627 497587801 116916612 707962376 566099610 959978733 225350682 12133654 375773738 863681331 780724132 227175852 341911692 146330965 934940189 869911732 679167617 704439536 731581842 902331172 539199513 483522799 582646372 14502353 438715704 920699473 68525237 303414870 596817304 451362799 151739688 974869661 175152469 565309145 281251544 646830837 578980741 129147074 87068264 758075357 962608889 61544443 697538488 818151393 550226690 841120632 751994005 268281021 425805030 990646151 531451889 480818484 636660520 113956650 288690025 657355953 93062659 361611706 753825621 973124374 958920285 197084162 128149240 761315916 111812463 599903171 370092990 180404786 513755296 318002248 185938009 522149089 851030135 539536757 143580470 271889679 97693230 553621583 177999049 451609533 176165425 505947000 756829334 117649912 170614210 45860251 487982058 601180624 146279573 307385229 553796872 688211575 282476129 921675719 906215584 684102902 115262077 378657807 501557055 888256164 992924386 656230162 387203277 740653762 121576600 3838889 683282766 870411002 282759528 310402727 914709550 751682756 562112516 609528705 658729613 272990107 151367544 190301930 734842843 544827399 119794821 455071449 85855306 672126010 375800282 238473924 783366639 571100558 304221309 572459977 355059924 561982397 522476524 250223256 238039352 750449977 625389675 907866256 978598347 611478152 189147045 379912066 273523532 654739275 306317532 752694962 727771907 324448008 193404917 63033464 570177363 903264505 883322644 79532991 193024888 923298571 609535982 430587885 279709305 863870852 712061264 313790785 567170549 152988973 345186338 377314119 376010192 514700839 77093655 767743234 492437273 775509557 537723365 755735362 734428590 871385817 370558178 349621358 125311512 554069143 587247325 694202491 960161056 59865747 577183042 690745544 252176640 413168804 343168351 289150704 209417884 253408566 804073254 714853480 559442128 573618892 388954867 47278577 629783386 712361900 218279464 736014 697428057 892559005 910368314 764428263 880229948 849892617 922212703 493611282 926437802 839941589 814058522 702354390 265605518 99844508 513216891 843648311 268514461 627635250 192087006 446073543 789128536 316912360 450526348 653412583 197148161 783362661 713418748 324965340 564799206 776805721 550063235 896785352 789199487 889264009 525657439 192600592 402799242 305259087 381429384 392654350 711147413 195171477 628903179 352336281 614941132 30384461 531995888 171213078 486863283 939255934 327608745 135674111 879590528 641475731 455760005 205402828 144177366 216647632 901795692 933599187 462446101 422080104 377999944 885739923 355355981 548830676 594877941 98108025 989776807 156693037 731586892 488281433 295618641 319283157 585635256 43486281 760593301 309381012 475084364 937397463 37299498 334835342 362679128 137792108 108095353 536806368 895940767 728437391 34384958 664031777 648003796 588160174 932008939 986834700 25199947 772434597 514031735 78159365 464698792 599103054 813931346 293830697 527690634 563459011 975540809 460864094 587601682 514118769 140992298 598663399 929692272 294286938 329699796 730047460 429188385 70275034 356719868 971587681 885523543 610491640 263980752 35831104 613553606 136797165 309420878 978741667 838473593 943484702 722086206 21199620 752401342 466285898 256183004 537384486 348827247 32704377 819569241 274441579 243256672 369099918 683201654 604734419 222941103 371136001 753178375 634851622 567209628 774051497 89364645 526433046 139427719 790348396 97309946 207117847 536272689 609723600 138369034 162272786 827083390 431750679 426471017 53383492 228440313 670052817 544854732 663395314 81510042 257906658 397924712 924116623 165186971 867687500 520447119 572007899 357856650 907088531 717810684 22544795 347693505 73509560 489769523 271576440 246225798 240611417 582874055 271600748 895773489 404101511 856714571 371488990 477062767 715398103 9054902 687826397 688328878 692840547 847259693 66875963 879622329 623908142 920300584 931349657 583575402 357280499 184046077 799040278 552087934 306337683 201220112 396827191 510178530 156652463 252091811 652606779 333196096 389087798 383940169 286707188 520494102 807764771 115371159 433730310 244588238 738050096 945654047 525726001 589030194 123182247 119019606 624827559 98495483 275669720 250708774 156935623 849205204 482156950 135171097 66400840 532139254 27634141 784410200 182556644 128345704 25402122 759298375 434004331 913314893 759982813 787097093 110230457 244424091 925212178 63663948 934986595 458784894 398168835 803492145 375795204 637406148 274217342 350256407 947327924 892003507 562562080 736495767 553331817 897040094 978588485 917018038 772758232 452190495 318418178 496749689 194086335 509786658 55730042 332303224 447438288 320882279 426039252 313403081 345267148 58852008 534218303 984209886 678113282 605608653 55063014 245106978 856447641 262561788 695355949 483565619 33911032 621034213 651090938 199987935 410656965 894758473 665473960 158781644 838719279 57691605 199461865 740540675 297666594 31995457 100729345 809346433 54323058 174878321 263434736 147151887 990184614 600429984 832489866 800819998 957120728 951354833 662033809 176239810 233845987 512068541 544818727 45275840 632556603 48765353 837221423 795620407 871241997 87101835 846302399 524815833 441670165 719945111 708358348 567419963 275274287 981604232 170084715 191701516 387315584 411784116 844052301 625732215 657297711 960923354 734179690 782027381 242140985 711202095 114090510 345672159 199499928 462377903 265367280 275476593 926789664 872169816 201624227 759396551 392690608 153457868 30462816 369852631 380398479 78575656 551342373 203248682 448202046 450211078 671190758 236485305 562017755 78449661 685319199 664858586 407259606 327611269 63990798 650667176 669173037 635834637 449333661 484579836 52289920 168480744 574105626 565993182 462104359 747209482 229198788 729632181 319585558 621678863 659785341 904708187 328958438 918761666 419017563 808635177 797453665 994084194 329403885 580852936 258652619 142992446 302463565 105189761 421609764 396972704 570193484 940919401 192602553 856327711 503626930 178581016 845251411 397776911 858798855 50699452 570421237 361557156 99328789 261932441 531463470 251296850 774331153 321011276 554300314 141418541 691054713 789127724 48396853 963383525 284455770 960430213 678187475 286747567 318938641 447702245 225503023 683573571 89767737 948946759 16542941 369076915 588703953 438194818 862170652 290299520 250219171 385815553 410227668 882178517 634991474 712759134 870371670 274284605 35096834 734004678 806374071 893434115 792969605 7535905 281483217 618163717 925151677 586653619 412340672 543630593 582522867 838514682 970398268 872847781 988818040 311493967 202311840 598397411 356727934 964926427 31688953 453036789 535174793 107877066 488311586 808124477 969558536 418800508 140857685 736993758 203320464 101658728 86545932 193607111 211689772 326132287 976329525 218367672 861788378 487306183 820001012 759758601 336587330 419434341 563408308 665247871 940101598 117999609 341561933 374656436 617735563 202433038 831798806 114729281 589744234 296284949 605898803 276597522 17485650 759709243 812634844 575382587 675608114 796548733 613674326 44964195 132314700 436391100 747188641 286422046 531631357 634333797 677762122 851850968 904099842 610977997 883315680 78323255 871788633 870243307 861005354 690322562 744311409 866223829 22922427 211823523 969214971 943606491 462306999 659043211 602642853 826518156 525556998 72953011 707123877 827052326 487535506 203520131 282176353 635534740 335943327 594466420 317155240 402543964 713172382 396645 777594206 497184127 842809552 871880377 843971441 410418333 858563591 580156789 330929272 537782000 590082810 474570681 255976567 731839145 661769436 82016712 457188162 246664991 905434218 285251450 594892785 557854048 152541414 464984557 979304837 579237297 371388401 532247671 908714157 622784034 966327359 647137500 469655783 344176239 56861191 254497081 406536761 393200331 227330788 935274687 633396237 59791728 424530779 657860487 51067318 853969754 433325248 816693065 110816658 25545096 987235782 675436114 222323179 516125811 795807311 44068224 948310798 989635107 284274634 893429840 562969923 255415626 211664350 953961981 252226807 473512292 582570644 1516939 258325315 910040224 374714287 813726310 540822551 823460818 460564640 660903332 701419489 193453065 243011793 613838559 690089663 291854835 76524112 846394826 414131334 785679193 749041202 149531271 448854528 98302690 983798467 650474117 848621963 684078548 458838750 102710600 202651383 849564985 621872073 126726693 996869185 881539189 609078152 772582912 384181215 732083582 102438065 634773901 770548902 457171690 686237625 748901711 415113184 522615049 70472725 571566179 261218685 958502397 415424370 212691077 171772065 350907369 445592719 288266846 658510773 416038355 997230610 224408013 98401061 709083728 960548509 750420767 132068922 23690661 347495900 996252238 257948563 834115739 789521066 936651601 266495747 289106091 612685676 314912040 743805412 453888685 836679615 76141917 449595214 574320736 406720932 113586610 25239795 444890037 514466370 524220761 661921980 463600269 873449084 426635406 546547095 437785661 201979444 809823852 633877683 104307277 280077616 123815463 360666634 42483756 395680676 480343173 652051669 94884621 819531104 348571169 376577652 496532704 796391304 306887841 900885482 378024358 623652090 444389940 231107790 564126799 209761682 219358435 790141596 838123085 409064607 315599735 777972904 262872888 516337798 615423977 592884581 982403713 477090346 754028305 812324742 358679720 965939177 842586056 342264954 39096461 993297068 674541576 788425505 248943031 659843117 444756413 564761879 36410135 76073838 648239402 442818633 41582426 299366549 396939884 94713766 467744956 963510548 12135092 954749728 590722836 107403307 345951136 855724125 959617525 581839319 193081301 102224843 236433834 725536521 275012815 104205375 110654047 993402613 710107659 930000414 758726756 784384639 464859615 994231851 839556069 509243177 143869651 782351540 380352258 774878802 952430332 947298767 544617268 422879420 389177538 19375294 16913775 269554185 280979021 955896688 209332991 322571298 983998601 389260941 536629328 770624498 569243288 893826811 730710602 146516627 942676974 571012968 956680411 168992632 7477635 629606545 709784477 127962097 315942996 345224154 584180684 318709182 404867470 432075135 986946983 892986944 681529759 726843175 430158863 425473706 444683231 682010051 111191751 564162893 817042011 510085830 2001606 625618571 225850315 170095137 502262386 594805694 335586433 352125525 135889860 794739346 319454359 375619476 670079596 625628715 578879029 645380725 492897588 318034460 728506975 725672391 872317415 973902922 307023173 249754793 943756398 729831773 281408127 202226741 224480811 185815320 279652606 199049201 161911412 781751191 280125990 691497612 381758530 367469224 293176987 888244061 480259050 391358657 940783703 610450725 727198663 608219339 780422348 518637256 372722676 719061695 920647418 553287334 668327111 344441303 128856920 368534987 281312 595398935 725297040 625662131 73566527 388610668 520213172 799413983 657986145 833086986 827110495 536162804 865255971 682567275 622118136 486432855 998523384 892071211 491125851 346253569 730972973 204392400 151982586 255302649 563137348 580740843 441486823 152167971 86411625 59563059 203877947 527415664 161791521 916546765 198970973 750340493 803227204 464528939 859044497 84844379 676245338 786260405 336294761 989128837 985058886 967914263 740118442 247833291 368111927 900932767 305631116 714644995 526780214 640497132 87972430 782541816 300919511 209817553 631226162 360961787 454708552 772042676 693055459 835548322 801628401 72760268 564242224 334821867 110069609 535561440 635521101 471682991 703448503 822390991 550472744 142592888 57686178 906986254 919338544 128045457 819247508 60776002 77427258 161669959 146654520 461354070 257685047 426071234 501334588 359919162 286640033 347863104 849333680 538782194 352967228 330240112 852418826 834502084 971722190 576951063 772110913 438355423 596510995 527445683 725944232 378923095 696559364 37266986 944853308 181639784 115274859 81188227 828215448 89704887 51784153 548981700 948414686 559111387 68473619 82203722 736127844 520670003 53693224 553356727 85355866 902099247 139208419 66848889 588287918 846242214 938366345 454269254 588055534 811591575 155256272 616124145 745052829 338292510 336576826 461194900 19869128 322257081 905945182 230967778 823666075 341283704 970632827 212423077 886815159 507519360 739040234 382648845 474982751 740213070 782514693 963896601 475729262 165125967 233079339 351013357 841681416 321600397 469113316 915888241 122300609 841821603 920599357 944979753 724097643 547106722 987743351 647023078 160229567 277886458 775098359 375666145 630316447 131721958 624974336 79421016 947285127 181021421 173749700 407181738 273547960 789254667 922347492 901819962 883646496 54155442 977200470 854912095 863061046 135471857 843710828 909458347 673827768 95720703 84276888 577862927 764371004 218131922 889021893 938878375 676163086 771293948 594511755 787244032 775731804 597767429 641551889 529739083 354320410 560046729 346159032 359563711 24567875 98975815 295609026 460967716 930747971 451593044 451409248 209219386 136613724 227940667 306856205 570085186 795577816 176705710 764493774 225229264 657726976 965076482 763551816 152482652 922034449 714185815 816346638 854457502 288194405 777444740 912532182 970321382 479644448 738916462 49837541 715760226 800055002 547869060 387939459 530374891 423828214 847122838 622862391 745261253 64343493 826567972 542970522 805654338 729875893 446388958 633097786 49273158 371714706 264237532 757465813 583843273 29589801 644968176 508945592 45403971 657633515 198455736 485594838 374050837 55222577 837039550 820024503 971954956 147573033 773857936 587698874 392504437 636810126 389569155 831549425 517431440 866745489 139431773 101141701 538286319 629627603 853220492 87432575 319353426 876841891 625700752 332305818 404387732 129656195 17750465 320978111 978571760 828483282 729539527 370398188 35558980 675547096 626055985 576997088 520475222 832029466 627298319 694344996 824982477 604975885 40845799 934126336 989357242 733459664 60537064 886032645 268730801 65294704 956560063 378487362 830125529 369491532 845218542 263337519 625893847 127297968 735879462 132697327 232538181 691780828 566894606 859191450 932363342 210184740 598429719 405371134 928946374 244447053 997170369 56231578 414757825 640428518 404681971 273817994 663074283 171142137 841056857 212710346 74507755 577936758 123612031 628894450 731982594 306580551 73211671 853663405 620949213 539771989 463138850 620442108 381488668 469706123 610683064 421170132 597903920 19656218 828518258 218716486 807818049 818489563 173088306 751909799 798919654 55589406 691598923 438324233 457473718 814448567 74702016 327651231 263743812 570144118 360958440 947459986 757247157 910474842 120797194 797524839 407047694 450763983 107397809 406701192 290903341 591241570 690428862 675437029 364808515 470141751 662116845 7231085 44292096 334308081 184207443 950116642 518204572 318971532 336467512 86194091 755339318 258151784 622701026 627333420 577210625 800744565 446229928 712361267 956168896 50524576 914523170 981224676 873123162 472755262 288151636 533778656 570679090 742569560 644465671 948144540 429543192 707439076 705181027 262869291 207098883 133526336 132026509 393156814 83880108 253705035 605058398 534520079 714854178 373871498 684300939 853117482 407335478 467673741 428311044 385729448 311915406 12197711 202264905 926595907 116477220 272691032 161800290 743945528 288795037 424410039 920812665 797941168 478855872 307665116 147633838 129391081 565549981 83050871 523517249 19347781 50561628 254764955 263769641 44708700 459852291 558911409 538023152 930203647 338788173 847052929 242960322 9487827 938711811 120790153 582459382 120812311 53565901 919777626 123625521 355075889 525951126 244314184 578924654 614621314 943221311 471930488 873037096 359646387 173554995 561960636 785356988 832248262 871866267 510107921 280772252 658560758 649607793 760628851 459553920 563571170 328996413 620483695 314724318 840960519 724286349 601738011 260678673 662868455 391244723 197089609 879346785 992237713 244624575 163539908 118688219 29917047 854242383 633399543 878758093 205349039 742403396 273587448 2487168 794024821 776633927 658606538 801817570 80773685 726990975 365548153 511713284 306696479 422068032 331168539 165775391 315985747 955416230 228027066 603958586 26747414 474727613 832635386 418454696 269934431 237399692 284155624 670929009 346398696 503500237 788976052 627050448 252684591 941437286 25774885 818865221 902831902 298456533 319669026 306246965 32405814 756939671 997538115 325670057 479309717 667014149 362166564 264763063 895726282 628585178 329213033 741340247 229344783 396483156 219352471 472899605 554320179 20350543 943731484 282562459 42812721 908690563 700382145 537891513 747704672 312320842 369675746 375027207 848640679 476617528 213562084 852558837 216433592 226266425 32669945 932532683 925393408 940845791 159976853 640380614 311961824 75256533 168714468 720268033 621308647 112412592 981617345 179186244 206981648 896892571 54596363 849205382 437097199 704449208 657021536 531776316 717197125 325701184 62934280 923998953 227140443 623683245 956905160 946682145 284549289 411142168 453610478 811013028 589079400 153225686 574667033 681842901 124641243 78075162 64026560 317858856 434783388 934646364 883963179 88084776 132660620 557995777 737601247 139021561 335991173 311596445 661711882 542120235 857789357 429850427 605093001 641557803 912603870 245367629 894362660 53124578 8692722 939557874 751474427 983783099 532238226 739196153 3855108 118280533 2645974 711451556 883125263 257736082 660820995 182092042 640157485 963960277 755577086 754382422 482843551 659080958 12938430 444999762 486266032 719850324 241372768 7929653 848928771 289836846 412828269 789619622 53106929 724480294 673136491 647880178 595361641 245872166 764786631 497797416 984996072 913534689 461845753 724171549 682596962 358704790 108973823 670040488 585981652 430494997 902940112 348677298 756505305 237132251 141158059 19883014 184807416 404367968 609075231 947378327 665108378 851814906 110237186 382321383 681599443 106437490 36171725 377238703 949755540 566414105 617481929 390713823 107943111 113607569 445450999 512028412 438842704 879925669 767328966 670329560 960520158 380576349 915780099 899648971 360600414 689247174 766545257 463025447 171817953 241906755 271284611 151859166 743739056 975746426 245645686 491277774 664689888 759616797 299524210 294478146 260106159 60106431 393823209 325364642 4852126 170263477 713930945 494483224 524835371 480953719 945401709 92077228 823991383 236222276 219829046 518896452 1476698 296148220 969552958 807264610 909778398 20175234 967216379 154601321 357239876 568183738 818487935 335963803 273401251 524953892 594694091 260255098 368845793 317172292 378546989 715419447 452564635 27026175 724762835 594531378 123393425 673752518 760374117 869559363 809963203 445938831 628687990 928712875 104600172 852855220 313227666 454795223 655462516 610629251 721047751 750667388 284633005 786602589 531569123 819421080 63566013 357762168 612537764 406719555 451328909 131615231 506404738 656466490 762958463 129191550 834877263 525801248 736170389 871051264 799171691 469006862 389867717 242161505 652296358 128143551 260351596 654230064 832782571 354075893 859946970 979434855 820159498 15344201 397137434 388733326 643751031 660606830 838805733 30920531 851168336 839018035 84608216 799950451 190872173 517054016 27361504 721648115 22902166 182191500 882147456 439578914 213967325 571131878 574320867 856943022 55352623 149575996 860606438 33215352 310647779 95749368 155344226 98585109 503947670 75333955 130574998 445142661 174483363 309982621 815020588 198132887 336102526 721859865 411211367 930077695 535902563 372456519 224314662 421933183 494075969 420026032 742698704 725828490 527003384 58948984 604643809 195610646 785230174 492536523 301386929 513643562 820308878 435274046 671257522 435363122 958548247 163471272 442139033 989274284 662905763 810971653 517607413 282032950 23545089 507976542 388159696 136726638 628685690 944818390 661806241 486871925 448348839 169921674 276542607 887444033 494104848 853379908 60625177 143593341 410293419 152359389 129197069 257099188 421599574 856677128 285998156 43439893 18889604 334721904 772195262 532938428 499279654 942961170 912048772 891729322 11142995 103952841 680845375 781170256 981373715 378886199 924755400 556549925 711469216 521269925 150444557 307089427 479995477 752393840 686729455 715858207 777138850 838182491 855827995 681897704 803442245 640825584 428855016 554085874 787992902 119033889 624710685 15195181 71003605 661742924 851214163 917337230 751596612 572593101 612693637 628665606 293430650 536343689 991015994 475232092 574112834 838213917 496750624 909210982 932598398 414579577 846399832 929748542 700213025 471003980 590566133 745074171 611770354 352282589 896393356 636075462 928351542 884227027 278031536 220969767 734649615 637692501 184411848 2548664 258612593 349439101 438095496 428389067 658785617 847461104 719803267 641037732 434146788 453247215 359736158 242483788 801649157 489443721 528076368 209551516 568838234 720173062 352840700 429749113 281236752 162666825 562507701 710572664 992316359 665870539 446626314 731229448 762198322 946083157 774294985 207320704 666111003 643524336 751307859 329776628 493442245 480204590 970474127 80614013 436001848 378223903 998464444 206824818 492455853 504158468 551825696 736003299 731626453 795399904 235182769 669086143 60583161 35264779 594319068 688383236 188139347 487222168 91944263 97220326 597520347 76673699 965448184 298015665 9670102 383612516 342657130 801514588 769581646 317527207 10678003 631142680 647376254 559467787 290576757 334125358 294739328 879252299 550552454 22341084 893636467 214621500 882318878 324751716 170291372 721744738 529333859 125606522 879061009 217910259 168856835 168712646 709650097 383249118 549423682 451313493 881151400 138211599 806602588 565241640 86100418 702079785 383063020 956191136 346344755 201440655 419446679 532163849 669953595 951858425 964618769 498899205 909871 848828617 897611813 174034086 793646412 514044700 726473268 331096104 22011728 242249023 973958800 651212690 859786507 653519608 623191592 34575729 770671587 712997051 917546095 632324474 665745363 339041574 307973262 208614369 31845359 688544716 513900077 528141535 620910304 795794428 950109814 228688490 134222626 858372253 247690387 846641918 553776364 124389066 361853040 665014794 840379953 519544909 346760150 884887084 437861944 318612822 491191010 220334627 828741475 178345021 592660377 780863944 999274829 201224164 528557577 598779283 103503950 891484974 186912378 89092782 321751911 11516122 688859626 269067709 885589136 848019336 749460522 463366464 448863811 80758579 479690260 887755827 305631989 49935897 483713171 533981289 881790287 202149236 223818831 251092808 80913498 171177636 468393361 243261054 57654955 233236362 581715266 417512536 796623158 265553444 946686312 326580029 215358723 564782114 379885839 130977056 121895157 117499601 131493865 480851557 529258393 882551859 389381842 530832080 379028429 382229351 737231162 648567158 917146450 338607765 474503343 618118771 433913357 461512636 435660754 542071517 211789679 478733341 716541488 613408549 642695078 188843524 150074896 833462448 7443803 839862955 12248050 848751612 579213869 754340089 255623889 224588392 829511196 435891215 785448337 485559209 31791887 71952454 126821123 665173801 729645820 519818951 245752245 411372580 249588332 549389793 364997959 707500904 960372942 263395031 672035561 110205907 554100490 120127397 980958171 429039928 739475770 850814136 596953200 184320774 921832485 764782851 673425514 195977831 476492915 789931443 199535827 118922636 131226251 377901343 884238645 388843418 379011106 186223437 266601010 22137103 794870208 798983729 615292419 204158442 460021531 835575252 276260437 751190952 392578287 616205802 603937706 142429670 812632146 724729718 376591984 528101341 958949602 944226971 411792620 777353437 320127743 31028788 761287552 150076607 271816733 197376498 226318573 851605371 318366099 329918983 621504837 44273236 708598645 53647884 110893046 322328113 375046233 95160424 511596264 314733659 390492820 169145192 753844239 770912408 393399284 350269124 978744877 506606945 111087899 119047533 78894870 521529534 928653913 703945166 723397860 45527131 574283015 270470451 355831844 953593898 533654076 563221096 259975161 472404948 958652653 572209991 233525845 2289863 504791982 481390452 282480217 59883580 972410788 133372908 146880581 817054311 570616243 819186066 90970375 422199582 82839741 941564206 617377635 432530805 669656076 990398074 705730531 962629516 681712890 379768898 709421785 275209363 117141067 4123747 613020293 941712777 364977341 412744454 4677233 493892715 994354180 562207357 880584189 343733042 519205031 420042371 926962507 690004555 540806433 476408164 953044382 258252197 669795062 344214447 239315433 736835328 128988021 404824165 866544249 294698540 195221867 243778103 252233373 978214901 544635693 50376017 592664856 397187784 30953064 367141502 809390249 676781959 322354799 918819036 269452526 681528398 822782736 867858942 74102259 300990031 569337864 804033861 12250620 754019497 303500183 801669418 467582959 751276671 606066186 255112360 395307960 684440837 657720333 599904507 979824191 686838422 386632960 951144129 216971357 861624692 185432160 977989064 33086753 138595178 876627310 433856697 186299508 871848522 653651758 491316301 345188719 998790511 761839793 706068595 837442414 518887648 825119165 901559139 691224532 468638015 944641072 992561594 891107630 545726847 320427300 393260425 771416629 857857545 506119472 876046350 948458245 822254699 57700930 294760674 948645517 519584625 28573697 586944018 601079258 673178624 79504443 49143432 936118810 217855663 847697624 953391 739998281 388017389 978908232 324615687 702154818 1869876 558388884 506331984 37337454 863108959 954156372 976627313 613908182 770553165 270469080 688683034 256414273 211671275 741227252 726396124 554435277 515505273 775020318 492720994 195903343 212914091 120638603 772481951 481683375 406792800 436131867 876201865 489773795 474340692 190050426 526164016 968111358 532311740 160992771 139704661 950438372 620980833 619362296 754655441 264867917 658264008 907249224 837844129 248280720 538308748 463110898 58433437 900203153 642165444 405984214 594300362 182565104 238192089 467571623 936612600 381483144 19226492 162911980 366234130 329365263 888661231 973322903 598022326 289133140 433126608 671088188 546803844 361786270 723866105 858126994 865145286 799136445 989132980 156875400 860032450 185486455 135824145 178025202 879559375 482319915 789051407 962421642 367969780 642712465 470994704 441051499 842227467 640658041 58819044 649375495 256074623 280460734 579213958 652752156 937192455 146754343 106007559 236938972 940164178 355753623 749153646 276031264 54941794 221962046 453764892 381891621 657554702 451778329 791418027 482059959 43167246 186764505 482617491 954006665 515935294 679010733 239163744 441597676 754456816 195774142 448170092 845299609 395813248 12842662 510602568 156768195 129037231 505367023 96512474 877820120 723913831 171273366 310680225 271101814 185043196 459400445 221804173 140394288 721950658 161847852 61781103 851629385 660938036 28556715 903749252 298587955 748805911 527742249 485735692 74718634 626555744 964718357 735904575 470690428 126723812 686381611 628770769 812058088 56797560 293915747 210329989 175030922 611360426 267051415 127412666 628202760 542002114 574703434 754190174 64408579 627989079 320820083 500239484 18595781 866613594 100791220 629972315 831961519 123387733 274166582 133842002 439650095 665509080 300146195 60495585 289087859 330491526 109398034 620933962 891074146 722871630 605482869 585008444 449334343 757138262 10473288 976123091 314477058 683761937 84871816 413225383 409845179 906609692 36667405 917282038 310839892 508900895 815445939 804717395 23990465 50883172 776089259 774729675 16420052 27407877 390445578 760662810 626830666 215586122 501376570 33663868 656104553 902054622 527976587 665240084 322778914 662305785 994520663 986661280 33282160 844514429 879617010 47228121 276621470 915038759 927118963 344922042 329820918 11307783 34377584 600150106 937503422 142515934 770718683 795022850 822241779 203271504 353552705 994103960 477402097 721274868 991752451 159233990 99000068 227498736 281258527 16244534 344651796 979309108 840893543 183274805 661019125 902548962 178078844 696121211 515755642 457494912 573000553 307041262 245762023 97421803 80702817 461979389 796557598 447294812 494547080 11126410 978834753 413030602 196241645 322731979 623229968 594439505 504264828 223457351 327068050 66775707 916861590 318879010 585054426 947642988 410083448 99876883 913817452 595906831 302248543 614584161 825374330 764479107 244282102 22657358 722470928 537091111 988161087 490503152 297203995 755453585 348199339 398528476 664363857 481706228 937688673 641862900 532958687 733507624 899506589 320324938 744982090 933623226 431198513 985501638 400702000 166532835 823034304 675015373 469329133 285107704 868772495 607239526 229316947 174080135 869694360 445183347 669285720 691188402 179580921 720879691 359047500 494258753 907333617 184954280 973161168 549613125 305063747 178267699 689935820 614196021 149845534 60940090 614756485 899264978 702727251 626515978 569275690 98274390 723838318 545201670 885034590 486419905 677079709 32113085 627406528 983193959 882336921 520400196 630377497 285552027 30895989 536224284 542336883 545004273 897045424 857808061 609725839 668374910 184715379 187765956 428370119 44126357 803657230 54892216 501997733 188823647 769198427 600916212 328991879 745731854 645415097 298267813 366876282 205788923 779763696 354249935 386959662 936421069 866517811 829585103 137832414 356326680 492597378 487541417 984154872 924267603 146055819 732372019 794215148 735852680 700112736 952548201 900309389 626215845 437021068 156070660 360825871 134578115 585908116 452010319 711429788 817943836 274862195 737673965 665888389 952397282 992497049 235125931 422664230 621869240 855821339 56776884 816215722 657850948 455842080 360086564 48475957 161749462 503846783 880166660 527093702 90515051 453407475 380608374 92282888 910214093 969763304 640043228 613398139 626354128 943207503 183258715 81722887 22541262 253115874 398770736 115544891 43873860 784498517 215055910 213563902 261624645 294495209 940696949 273424666 15387615 786003592 433924470 755633597 476224989 682030162 179299817 101298381 588887359 887513868 183291462 713847353 145840766 998789116 854433245 127766099 859038419 571393650 645216209 239797933 502955914 612525297 654697117 37614606 477236721 158374687 251189673 459169585 328786751 804955382 398394441 520139198 286471526 257975242 30236963 804234772 39400041 548638510 79948567 480533680 718563399 869597307 265345319 902050771 713679402 962009875 948993693 122889716 989061969 481896138 511181346 838092975 987615732 866267131 210430512 891628405 704050660 87003249 224556067 367281254 963259291 597718941 268600242 587155645 921796610 452913362 648639753 91535646 916081621 441534317 251278537 312365106 167793163 632399213 840066344 230372203 912361001 892113937 704191369 706438400 627891477 546992718 980993322 912024182 162191758 880226394 910381632 650821521 635641635 12778929 95758517 408436972 658270457 463328386 684525168 171319736 495615202 361313258 109648348 200897512 456397204 781833995 624261061 399680741 631630309 231943052 669265800 805536492 803243829 929384852 474353795 158289926 436407791 701023202 815830213 89359236 507416525 511209458 454789646 32046045 558584205 739428355 418638841 266313088 965630344 242247555 575835736 293644678 419297070 742757038 892627195 936234306 618074880 746262208 811067405 394015250 167605846 411210032 94376403 77816734 339233821 740541904 845150459 832995718 303108819 534381035 253646982 999574665 718223592 616940605 648302604 221901256 344841873 457180660 807302064 805176424 24363926 446035235 660433558 746590744 184210766 151244920 621264754 366809328 217161959 818988426 879293442 609884143 895094720 662052084 744838808 613644619 660064312 948814796 167100238 150874096 367726779 697545403 870454127 114859986 15811804 759715548 524598278 187452533 745596448 804853083 764952459 181273144 768001710 552097290 56914822 258742202 615960903 832706318 43776416 312348987 419073029 21652832 817681267 517533525 969702850 760196580 954939471 511363278 60331534 761537676 50019147 831605345 999006312 672175077 720486608 439966731 915412607 361990307 597693430 787214854 7728706 874505338 741185360 106530427 601230605 236693157 839436500 806972390 568095532 24016407 636136291 878877207 443823798 370160281 37519674 590383890 667727876 503402972 685789595 739679634 765784271 500366101 661126878 110269710 138560358 336939975 923707240 2997965 807537881 844624479 250325682 427229967 482431523 669582515 353535515 561562915 835408761 276188068 48631955 6947726 852890951 468069909 171922064 357616354 100666977 96348898 347171091 419782798 384677720 461368241 165514916 481602016 689869783 342875144 882334039 133737264 737602469 400949860 552379756 592560610 101775769 273426653 872059235 382227368 324929089 72166387 33155232 41984542 971425667 899479379 98505664 855035848 786679803 603614348 412809333 434642044 267558122 667042776 776264022 634973747 584717530 654876327 909070450 769648437 279339992 322737056 69752771 968454088 790731272 172033206 471525187 799881449 564374849 415709916 908887388 122958167 611890741 586941540 624369163 98303670 608801135 389539351 84635254 208954435 470225465 498707224 896044013 401241067 84570051 494794117 399700387 711908955 673201245 799944225 795210421 17110322 984250077 882229280 954435313 654128269 825182894 299894556 403671877 766433753 252762665 270578663 686158243 256838830 101503550 783075173 688550143 749157999 978270984 299323022 708588074 76734716 441633702 131192207 791348312 104730898 628503765 650826069 909567466 617291950 201200890 105706101 11247323 488400853 990742448 667490190 915568363 448813860 540438100 102959950 943414874 139001427 607235370 85670141 856872520 661920488 124969824 534068565 658656900 139290097 599580450 622899719 504283006 185266603 754372162 104212269 452483813 667075130 812137730 134351546 243262782 221354853 127338616 783997748 347054683 496775395 49440504 202784865 821463622 400701815 269553894 397967160 51385552 161639155 215372067 509539192 504503210 667007972 191936398 989956824 205831683 126702411 628300698 526374197 740533467 492369922 802742664 652322957 743411565 353181868 478471699 582653149 745115718 818712524 500693355 989877196 434236419 880251389 138801419 599080638 948703045 731878981 428922152 407517535 718050616 141560306 351701781 643245531 402105952 360318597 535861646 543569972 412408080 696886687 328185850 753662541 181988371 421064250 81466076 238108660 569160107 712787814 618705618 307365132 7905341 555430925 451751758 302202640 377265267 900152485 956999690 480132457 816131682 111475784 299871012 700045803 673807656 247022976 930777824 616031261 678292845 834109892 272572876 656048627 529551324 470402612 342087692 94260349 923928776 871313567 721222535 794892569 780228225 663986018 472234764 25468450 826348456 194257448 690738605 677110126 105831715 459400313 103320718 572872452 81894546 416039882 560197668 96611947 685432036 830714688 79547262 824948082 933781703 679050603 421737342 362642279 843799589 917500871 757633795 139309470 630462559 522231749 648712792 681196491 438199397 153978110 299259247 291193377 43218617 614507336 548199066 370725729 198496164 400157947 499718246 864996495 138133163 258978186 310482345 825506369 331523615 468484398 685819952 316859711 821228934 260689410 513196554 35157088 363064802 212452476 432884859 956117510 53281674 762877115 127429107 716745513 23836300 54284396 617903710 406318296 209168822 359733330 645334079 67131995 44427063 507671679 257063683 325893302 654284466 127618449 297405600 836263750 938858966 308793640 161951461 103321453 547882737 198610460 298103741 626407309 407925321 434330344 983591203 565063332 806983824 337031951 155188229 682505895 642446579 829746002 543244199 612901048 716184664 739656919 942524341 728211455 143163540 585683330 69393801 418323397 204382217 130524083 345239986 542644169 946973250 39788522 102712981 777113737 217594439 802671424 60416645 320925380 387631189 157527853 350456371 664168838 133236151 846965545 461595098 471694783 620512324 843680053 178389880 999376208 418707249 985526739 568702381 796050905 140093238 746884890 693924565 534674261 281728329 652394771 479489392 564787801 446999755 750716169 8049333 411124654 237409236 935480000 40407003 648516301 83950961 574418725 97763591 908751986 590516291 579624379 881690639 868366057 845660173 402384023 695785057 135964913 282742789 910831781 992355491 948285018 528325158 635424097 441103479 609438559 7446351 511125277 246504539 571714472 831826522 756911567 956699392 494422071 998316485 829857996 124162876 600872671 145375053 263826199 491890219 215347526 346805361 537851831 7336020 411536552 377065787 731661785 234548411 697464642 742383302 207770698 446881066 730830030 999143179 890893965 523464190 906763284 979387320 274795539 373035519 231154179 588487489 880926459 827758412 870704951 963860768 842649301 562226934 157764969 420780683 8387463 206581608 863120616 130808661 494654315 493824719 769529670 407256032 473457932 394252714 204981638 349230502 220672056 159707694 747919047 766263194 921807725 981730667 354114525 502171170 722529423 942159475 47176005 768253015 895565578 478920254 118809478 973265643 4282438 500542814 357591336 542069994 677124335 252052729 243852386 795101292 865846721 882064016 6903340 959931782 660539173 300154984 133106907 387121185 596552634 687983508 744908998 183439458 160679585 916280965 902420357 681249880 100733805 49440607 17955536 113680977 721866766 502324999 803117149 551522572 63237011 310916442 595283181 419845906 158891105 594199453 468275210 537426031 877631564 859925411 405699874 186151219 569527833 650637031 921427298 406885263 579006630 921123394 152624455 490335690 531323900 93301620 945655414 705728242 264237660 233962500 151540215 411730475 143975316 86880153 37779594 437797135 694021964 851678859 314643794 944269398 12533980 202418232 917046778 583958111 746088347 567137138 521704340 290649384 423177070 510106873 545163849 534027399 733205544 862301109 868298966 146111589 324409532 961407461 827976062 57415742 65221949 573911846 900941184 846601616 831513788 972878150 198649391 536871419 98890385 13100820 309263230 819115422 629434463 27816918 68238994 923246020 107214615 329545608 334952395 593251268 999655145 912147738 998932786 734451580 988897912 21978858 731827193 740647087 835848142 170627091 874387834 989981423 455810749 932954452 964793687 402087932 815166411 277864509 725164578 58463871 341837368 688443235 10819636 393422634 333075359 106902268 921170478 37638253 349940747 217658973 416926294 634960141 178031329 45883812 389032788 857482042 739055555 340824965 829870302 393708198 70428465 5493276 756761745 374362500 843186454 389689258 612316271 183119307 758002391 281844018 291527843 304040731 155708145 948280841 191686667 736563238 927377245 764354221 849943141 129072705 576282758 489851555 222377640 332840648 520581701 492591780 733210539 230251208 905374102 564495031 521001319 149377997 989225042 333111115 456375962 723658574 636311595 539466564 270199486 888113525 203656069 145395887 488479724 253390014 118354037 945869042 521178191 159837662 868464073 682421217 579631847 316753191 847693422 274951133 17902060 602665661 626573904 379773706 879359099 1795514 525235944 308635082 406862095 689246745 4477641 427364743 865991662 236327367 303522879 892659647 300130511 347112511 530307083 340717242 983443385 941547293 423319136 687552311 771497548 596231133 483561911 105048137 916440832 731712148 585172070 413354178 528591052 803601276 364853821 298053317 782042896 747634694 799589121 645618177 104423103 186753618 722340457 423444188 30397434 285369492 122494710 333218 126893391 402552808 226131667 390161587 822900833 331889064 321067761 87272309 975999977 511255934 244199181 826043381 748261792 262646333 858622698 361075652 929733554 419316173 23404597 209192172 219260126 46001013 178902428 291440156 549318561 26938116 232522202 338427862 252576090 606512989 157615109 726090467 224770282 173581054 368345777 469443447 524541779 95384832 93906558 481460881 384238419 796541426 311038959 111643676 477491134 752269847 382193764 417289725 230844501 623369412 63327498 607546585 314574506 121906024 739332858 236407550 443455105 90214110 605640637 93066423 832163042 2464049 690596968 393369725 888459768 610142022 100295874 234183212 827807585 852894224 810347043 62315527 97563848 576442491 524023125 232917915 723384815 357156592 749879769 747570507 458377885 311139107 555211668 560174484 895797444 959352167 496816222 862025567 577379810 422238333 318685192 714131548 188542848 299271348 275434873 560182698 188419749 230364392 844268 683563371 417115983 83319455 631153965 40988607 990597454 697779905 458827381 513004333 602133893 694119373 831138597 264557950 315129200 881923948 255655173 612536773 93538931 7303920 7642556 276007984 206881081 768177602 597710283 852239093 412321863 369738087 14030554 395479014 762041033 222590447 766655866 341813377 703193740 474060195 862802273 484283247 505638545 68155385 506885160 269711345 210302670 156811407 99585598 24026162 766909015 299890793 772880002 855755354 586391540 38492418 193241600 935232191 45129376 230317788 575926412 261899249 935095503 941464190 34162973 810373496 803487826 794395120 893586591 488256098 393952474 666629339 279573091 759479875 820851442 628307735 989503679 399439625 934343456 667139783 329768449 134266380 948732726 172358843 810923300 909618102 738975120 393170184 316036310 858768449 225950293 630956787 803400096 336694092 799586085 655144946 175031608 651835010 492883739 973803441 863983027 576932338 82196054 949019623 322884540 732818429 560752509 249313731 482006441 853086911 133670724 654446154 812811094 654097909 342422084 314281282 275349749 103110000 516777784 921187720 42844927 779320909 492951649 231584054 109483157 703953687 892904127 196248374 746537758 180131894 245776311 961529676 326478849 823409440 9669389 677250515 57207998 614423864 542457585 660059402 66469473 958147890 744563666 661634765 493411846 442425354 747957691 597044542 205898445 296633758 841505968 213691312 375120667 121773102 631077848 665361041 585503020 695929764 103857628 467819959 380295436 49441524 922860265 123869231 762361946 603419004 393714768 479619050 273413412 694423743 129891529 41082843 749750386 682204474 933328311 278878913 219798246 194130944 871147736 496093216 630530700 935781926 588014616 615571269 23535966 931625351 214574473 231100604 912073052 630335112 968906084 145944474 316233224 446585717 98744219 225861619 766045276 747342513 552416242 433815726 7199754 694690718 610092640 812686823 617846994 717632060 698086723 955460032 133829989 175274957 411296907 886363984 987658066 606416426 610763814 184425522 910422884 991660688 425653453 813706159 802277846 940137805 653279071 929705034 362643591 597502885 184068927 681305875 213214502 469893188 814186769 522444636 432355334 954803569 475660991 896376916 21074425 993240279 292091091 503066205 814524712 374351862 760695575 881205438 35968346 679007050 518823542 794576732 475524402 882497593 532909835 947963022 360446075 597900371 37178223 100509256 964829641 753699026 434696917 571012019 653036468 488254071 727020227 472299243 699457219 563011819 40534420 676837195 820109336 364935582 265327456 380589484 879549323 349916643 113464532 864342179 545088939 459833555 927670446 271107323 988331931 489856169 114757193 569113225 358446175 242641811 332932822 116035543 876984625 896054151 146878962 800937031 669234989 366947846 949438240 733982984 841635459 848213135 729647431 975646707 994145228 766054602 430233331 712283725 78900650 683838949 411907480 997673562 979676835 224906863 830227894 411618775 102881106 326427349 26940489 195565280 690216043 241813724 538689376 985081564 705505032 564090469 544827546 818467316 215732720 463306082 60406380 28880004 274301433 660545503 18078151 165724371 796460975 348343037 866482252 195355041 585042892 942133172 841322349 350364484 633445656 900085766 661614177 827097564 450440185 398099894 808394868 627208092 270405933 956385143 626475909 27177872 267860347 832644679 10156714 646879548 415815510 928437004 614170037 291311071 828161631 379843370 92041206 470843097 547025881 289006069 927479026 541805505 373380835 902715021 938328449 342365335 153683041 946792584 958848176 22407891 601243627 918663419 479030263 644223679 666581131 824876712 979320877 481437484 160975523 245288426 650055795 579442013 629620478 135543821 763476533 462189480 843578488 697607112 678368835 324657980 614663301 847492199 820814848 478384733 486322986 957517150 799709217 660540876 18556646 944497322 424916649 991024767 602158661 900365775 305043147 475300723 816160008 283064989 293605038 725998842 634807544 375314750 597629605 632235173 890141047 776220269 887814498 692372758 670661582 69443111 960905860 238209238 811932497 173301336 636414865 438857834 485739035 709720134 934026537 166965008 478206805 212989725 217900579 937765922 228246178 719091955 393596695 865262015 791698049 950838344 930065886 177100649 877519762 819053934 182660085 857183699 998382873 628885912 455171788 838356252 692572804 316724319 713042218 140270049 303585204 219801863 201597942 190021357 306262697 835858288 663464316 75447627 294363570 948210181 576880400 511746106 572204320 939707612 514655056 806418747 396556498 783504614 772428181 484256813 840700785 241383116 551150126 563154313 364044265 725651184 804672757 865603592 336640356 658754681 261905754 51275741 624598997 854122303 612992151 102826148 237259379 901475478 220325606 48784087 505098658 711952243 254364854 434382206 712257019 990500413 608847918 295773570 598840556 667567080 568809164 176836287 113608079 641586521 238722738 640784664 735446943 464569393 150358091 971884462 18373758 873258410 217844241 639308219 40716330 78537924 102883205 729114195 311779488 711269085 25702172 955658127 880611708 996051259 58612119 829948375 208661921 563394884 672380187 346277376 206164489 13329991 508101942 585028591 660917122 467864176 435029091 728049134 631576071 659567447 608244057 917278705 951020640 555530075 682527515 807161365 578747088 544026638 246424047 285109234 10308910 348082773 764397187 605969773 103967776 697040842 791002633 418415618 27845571 106198824 880505160 832400991 344088646 923620911 405094059 779000153 930337222 430875140 998975511 464266418 353519730 66384233 241629160 922315436 147354607 149996130 463929082 415662041 145257572 397854817 575626128 751813923 629453519 731682923 627545448 608113723 376788687 330550644 929942086 949621637 325442079 181309943 116476694 439636460 210247847 938812748 247877535 560106531 235579321 667811503 876691146 768326577 686608967 273869228 276505003 739085467 719868724 866370691 25504836 956982401 981598734 265541946 61401324 823622718 778584530 138510005 525214624 976220403 221235992 420208868 547793370 4183848 167839386 968237630 538112554 532535380 831303630 792415343 146284091 627126114 954460234 244987207 275994191 289158862 381163722 484749595 966142983 344548495 789816311 788567973 336531552 730878360 223375111 812479004 173460362 737873107 741983275 790173636 397187176 763584373 117853077 727650189 322651366 446443327 990178149 517356194 391056948 7952876 400616746 101488655 838675906 527180615 502054608 461261895 72287121 326732851 608912947 53630130 447392261 109366321 488364596 234240221 934883695 358512713 495713022 569370273 662743926 558730082 161935676 307546736 236326337 136616304 555093654 523519187 504733616 657632068 737492352 290695270 458366838 800008509 280100796 970538555 369536302 46718852 539288661 66631825 127981215 175952861 191230601 588640135 32003530 380866500 757569910 960242934 497142920 832019418 165757496 656521674 620475703 461216358 706701102 382012508 715155669 337967522 813984302 972212055 446506259 951026403 780945966 621434523 226511787 272343384 954896225 520374759 2010589 256332598 435604287 883038957 655135503 404396828 877600503 796440264 241824993 41848828 525164194 124565158 536223117 166575417 80704745 942536217 883715149 226084786 265554712 652023695 159700145 650882228 592622828 520915269 413111480 561224975 868330318 829655772 191367542 780187486 739395811 101058675 655499895 701199577 557883826 130480533 538477501 561022965 731324381 651959462 320534561 776486066 863492625 356839592 150303637 105265038 414068747 294895121 559124762 350438195 635507444 674692840 394506090 630632264 998135939 729347471 312791575 222917669 207271040 667395312 910491994 996445584 867293494 839670339 594288135 531416666 510492205 611768542 410956353 435056354 93067099 315779910 699029102 766620324 549446453 491294951 88283258 375071921 115969379 993792425 499714844 413741397 94392189 730724244 593381086 600907179 886721996 195627456 412792630 717020282 701838849 469962574 534492003 366081214 322888087 129877058 173875924 469140562 316487035 712821284 978143640 346659883 296643575 417721939 153112235 823294995 393171344 843644767 906046337 780964862 799746795 95634078 192805479 757777842 184578453 431476462 285704779 638817149 186827594 796206206 718710005 546832833 847357079 294918228 177584851 720561662 510417403 277703005 938177332 301896764 95301579 188466777 384142124 848454952 141721714 302296778 434991775 388081996 907916514 881574662 767625760 892017997 347972926 798725890 21347598 941882157 217730521 168258449 86997067 212190953 30329708 580584763 639332004 72544759 397576952 534716878 890770212 931874221 122024900 511274875 844994490 158100373 111837422 225366002 281991456 930393000 752218037 301759705 502314252 663667785 369870988 524520939 240490816 437933806 603688131 240241902 46408259 222394675 713476054 298578256 813937260 833095507 855064705 670452165 816805682 753243340 343344550 851779575 705728841 559326132 252248154 566934513 222662491 437245770 406687552 286556313 179543018 562439308 816529870 264820048 665131656 52607701 748353910 806362217 671191688 229549829 884099515 886785192 48392344 275070234 27997696 799975583 317916273 6615173 384971760 490440944 500320066 881887985 246810414 467202285 96252349 692679708 797008315 1896621 898836201 269045738 647160381 835503261 501643025 973379553 668556034 868117611 26874227 588153290 368237111 854930033 680017108 412392934 614382478 573585007 964057416 823133447 347394984 252546921 310420135 436659352 950691625 921871022 699352622 845274025 442244542 39738058 46023152 950952317 191837499 855472196 958371162 518514146 284058171 254163632 968117154 109588730 790462943 712572708 225738965 682596241 972640412 593956834 469385065 736274200 972177575 843284635 49863089 423722719 48222479 739101277 51808816 579321302 352048790 703777778 804067521 333666095 308728239 580740124 756566069 720468410 722745751 647597926 389689021 448584387 914686678 819951707 562554364 190267839 115790906 517832384 420784016 652024465 822171714 501477236 374653356 835231674 312131393 849227161 694377721 651029526 926216019 30291294 207996605 381792654 266950812 578038388 984234383 888635433 481288291 574355551 199455038 886720289 566853012 254605933 351678322 519338413 424589798 607643098 785274557 144201495 210917319 484027846 280545528 325509826 192705607 778153102 253591744 717131178 897017172 895409967 867137875 994530490 348142672 5311857 666026152 441476304 898672819 793517062 358550383 719036714 686011276 850673965 354272632 594043485 976224277 628577866 594163946 684109715 597288463 31530762 860949253 589957021 328648123 137030477 823749879 812249137 753090668 394364372 256711303 681462283 467981306 280187694 372670909 102812988 221718956 307399896 600384718 952947367 316753378 225362504 361988736 304886854 629666915 96390116 110454485 505519131 287944085 724867334 926204252 524557975 908050062 34834192 631535245 391179802 763134842 989929016 898629971 105222478 126556835 557010733 993665332 1104572 62622492 166331223 522351938 922813785 761318177 789489025 865478066 993612040 450595359 557988635 968433625 321164041 353581634 322339242 252016497 805608585 706523372 816886556 868146318 311028004 482268714 466831714 909957613 595277719 955011400 270884752 312821853 34539940 143396769 748564706 67251271 826408298 983162036 914730859 926749658 857585278 900809613 370287285 18456993 697418910 714229662 750880863 86975218 734047231 443578555 445571679 850687754 604463018 928737138 432803057 657673197 326884489 661159384 125597666 551067820 841057228 150890890 498006510 248128504 794955430 745876055 948667737 813578380 29022014 107157408 596135199 675755329 186689153 752374225 445974650 450204058 17736056 180361803 96607463 90782903 628449768 675413831 633586755 11529878 643403146 120752532 53457510 732702962 426557192 659797299 693369078 946431122 216636451 454675783 737574051 646225363 336233735 753891015 917863712 909848795 43250791 708468459 893162866 438008908 323216149 526061775 598499548 429647337 625369586 746460550 716608760 279368596 299530046 902113920 166121247 277187527 597177701 706398136 236896768 934907168 952158328 349296436 124266245 797740877 749238715 31271496 945019986 381375585 758422220 67944378 974118804 649684829 244212334 197531834 625128103 31672474 24749509 558658047 752656825 622615214 724739219 202332106 274088228 622189887 333002246 316752496 51594105 554862221 76675311 215648319 99329959 359994593 867869349 671955354 370416288 925229598 386423632 788211169 936861287 363888754 993921406 138332634 777270162 40382428 713674688 184378026 229761522 966961333 558286574 239594499 364884858 877981230 594129602 633938023 966682746 288712962 524601621 400292828 277949967 107020209 767849240 443845277 753795779 731803887 95438549 651368067 983963403 181227318 765517999 797950262 556277135 298585108 796078318 623027419 178429537 848256321 818446134 409127620 299777707 508688977 202463241 919874745 361691177 825113689 407580532 836899043 871306028 126661354 870682739 565369486 768003604 627995096 235771998 686158338 312673506 318421078 911964863 835616574 556306648 415760692 598155555 721453107 525825768 925097089 160832852 400229082 177568397 219301300 25222229 16482918 304996451 560251918 140932761 979620356 106225606 913203603 558286992 105673683 417776783 230787320 840959980 35675539 559254033 870960626 954896111 314971594 567268450 322451718 245091637 376596841 384512522 399139181 430492093 951040097 527137091 544973788 580791363 270383725 546154746 292009986 145781927 341205096 518960513 892131401 179563475 787100797 580445618 691080933 121515699 818253563 470642701 990895033 969105399 302019392 277856132 408095819 482421761 769380818 891668825 182123673 114996898 993254185 790644433 159399674 798692889 513883185 110460960 574920629 531808063 372950690 578961863 166583912 89576527 101850323 354353595 569001744 354081071 401997497 398103036 572163469 985622941 879411346 212295167 339137400 419258994 86590337 324737114 492697588 47208680 214820051 212902885 563096219 880422316 733130058 866619792 399115345 678588350 802117300 410321602 682757526 834041265 92264668 977709469 628294814 823125961 170055386 576322275 876554185 186109817 725439819 485786489 994262011 428846350 438663329 24116001 464117478 811988812 143204010 635034998 377396876 994011615 591758588 887511728 404877150 654938604 937313496 758835633 359671850 676982985 307240827 927002225 735624178 217288102 27768696 199928543 188424523 606595576 929337358 792212444 417625062 657294295 26402033 170662618 819274954 387142559 155881883 710038521 141211376 156418886 975231060 321641173 491681222 891583149 410667413 445121114 328611379 665076793 315903565 305266392 390626660 473820636 781314459 361105614 862478937 624309104 781711694 306183258 188858387 893284199 111241342 578074865 720006722 756680705 544277925 898444564 710020312 888535330 801968676 895226798 91883220 80035577 248520961 416416752 404796272 190903607 984930314 443255197 521982053 685571675 668299536 236154914 102662324 188261938 765848346 436632367 342147194 865824774 917045198 721322224 432298068 389525007 517127496 34435087 756639279 991183986 863195216 330787754 658361604 437555847 469785709 327094846 610775585 348358347 529336575 841198113 627405321 638803833 257947582 419021277 926375285 694160089 350316232 495207209 526811756 463112684 260242816 967605540 657179770 838296663 784704035 881555528 885154698 475111851 769751663 600171668 480365934 113409441 256275651 561709423 446878946 678710315 23544765 665549020 207685442 422622856 190792200 936871125 506303741 295483101 953248707 728263685 302827981 220282687 318658208 277707330 362765871 933499876 805144866 295202394 996804327 230357437 136255533 68888374 585226990 327039386 479886505 485101600 738611293 607973986 136339291 118440635 323814952 869001681 834039846 171315789 582021698 809066023 286267693 805006338 681995722 204123213 530679399 692477492 695661133 829032643 389309014 590754512 416664045 151423059 667912489 990341954 892389154 941696735 662243177 932308444 613922125 275595387 564417248 925376679 637280517 175594308 171951791 711633147 106663217 878759000 805398845 704270012 76700801 279858907 737292106 806074122 204213886 570895841 597629376 975230341 184326033 561047675 702616706 135220402 91815020 935825491 470381988 293328372 451638100 391484220 74153661 263000696 449653629 885797052 338686468 660831286 355955684 883089094 532609128 912145780 414967636 343934652 97436670 391238840 771464917 111664109 627857320 42238724 833052434 590252062 121804221 298649958 490357325 691448864 339901652 259976872 61531567 767436861 804117253 350500469 810946658 581393264 492130482 591146867 324040739 475987009 155138519 195862693 343713513 113959584 410741900 951696096 928396252 490258857 625447470 927170853 79743842 990520060 116221341 767228905 733963309 426202611 360548852 458291966 271057180 38934013 118463857 825209378 866733187 389675394 859308443 563564162 683269245 356986463 956308067 690888054 728364020 801031989 362047896 932472733 453505530 619745697 863172783 171852838 393150121 682449183 903343642 793932558 848261073 6057690 671653039 79135899 764738726 292331586 527649308 542771299 721070717 484161470 520736618 968133731 500238520 4800325 750151089 868837751 176019662 76600132 387020796 402461681 410182096 400576135 573848798 757417732 125269123 989069648 46139742 833703386 137110822 553558522 909726979 536641920 618007809 687855866 851890061 46557218 656048572 706665958 653520247 521720894 542766566 821770415 242712867 825616299 333891259 712031104 843930734 761810936 413932240 313623413 975142946 126952780 852919570 634514769 487852048 484645208 690567657 243889358 263195004 538691087 908732181 253389669 239383759 437193919 18269979 377901573 964464221 781732649 638960662 763735367 941419698 499607881 117580759 215474327 746592856 534331395 915127949 170071816 259732587 743415515 587998110 624726837 97210725 852548432 437348594 5002128 143941484 873680043 10441579 467609914 949807144 652315929 71333821 925946087 46314842 638601417 940496809 513140325 100790431 869804843 169336475 49017070 100087784 246968093 108112928 118522587 276407593 721830970 785448176 665249717 741719683 292663530 958494866 342548796 202098665 336305117 836872427 230951950 313398455 604278800 150239209 786794982 697576170 947792922 595487306 493180679 671523017 206883077 760160211 178262941 881097420 501707065 274353117 391029339 6951485 329964568 473946175 570486897 924259685 816116374 208487880 343087710 144579278 584836430 960566809 555037906 671762872 157291546 528952310 443799275 5679986 100036795 957386242 53119759 238493923 877690344 910924788 931162216 746289179 828229360 650907805 276863005 426649611 255701657 308062608 95596355 574058409 914061893 938331446 937586130 459525962 707882983 778540509 922727846 729913359 606254571 238953298 760596239 987218743 227881735 328956720 972770180 817579895 887697060 823637714 154502838 820351747 521797834 672023450 409902271 246745095 879453262 545903445 763978415 426621600 329148658 379951663 553785277 66577905 698171564 615446627 589111578 325871289 928465958 888369661 268758823 312645508 131209720 963579678 345922922 644876831 842028498 903655258 121406150 667937329 383294076 200659306 963028112 850529840 24908568 866462854 647151410 75754386 926274764 893236055 527565762 742017840 540511509 180618834 683690021 730242331 845588382 944794016 156901980 772070931 795549240 915702561 204292973 278620986 790396217 170328433 679879106 329445118 470508412 217799427 934297017 735423462 139135888 114461087 202057531 141364065 998335938 777092872 903074318 286329005 277152268 184166845 799911669 70507684 168409518 924890010 243778912 9084855 386573099 376669150 591439677 744182644 838722560 799844587 976395192 648436969 83241601 96374638 642271252 952774014 916308244 117579689 966170237 856583858 707720031 597895389 195444436 679211873 994951175 697428800 297266983 748736024 167139332 652752348 237592972 581494587 782308385 284459210 874185797 309429023 70843969 976902139 646590072 811514986 214291170 345432296 904387748 935922246 373652019 872922977 938835477 75755378 443715511 311438122 171444918 374018879 85502957 502620504 350538356 115810043 566176874 663799521 683001540 509080277 58897199 130369940 42763065 78689293 729541402 419882675 346258526 68758374 78402774 391535979 933756480 110661743 731317808 213497206 483396304 354951403 204694565 671475372 329318483 887800173 732919401 302417871 583475741 136725518 60330418 457706257 881170646 362373755 844364558 416057734 191469485 643516137 951233504 969820922 734685574 958415087 291413468 566727350 251363192 219596735 819792119 877831436 221579951 155845865 952259763 273252033 389643653 183590797 980704359 467800218 788631640 565656699 359308292 336634572 600736119 291359385 378680017 874482914 797695690 797075898 490166539 774717980 404302607 213790209 420439424 213539133 790615435 373956782 788381198 89324575 610309542 940484966 122933270 748928829 804975301 703969499 846890053 399652717 624461861 873809781 870863765 761705617 59806647 648987132 488270987 755520787 767107766 862230709 838131904 338471356 888937894 110921991 615091195 450458859 698803215 298792834 208118334 938536199 464016639 202935467 204310589 616475200 689881079 169505518 956750386 954571725 490803165 474470092 950980252 531531357 277208755 628251140 394044088 136531947 376341892 652148384 111791319 796914262 321181611 442545326 723897580 785788505 454348197 701710560 372280452 116685324 358751963 421571235 806874207 166919448 217247276 113749084 524933341 519157962 74405607 802281232 357266561 586466378 188006269 882890064 268137752 423086176 261633224 781125788 131658043 954783651 863595312 973775445 409476588 509901834 478259230 87901806 798031294 880413578 120088614 890993363 391262020 395977539 232802912 41218050 933747810 653901019 309452788 238067271 699337589 371775824 154196573 490635335 355095616 467298232 479977804 948350834 523067245 51707055 582938753 687719605 568711277 122414300 440522751 163329907 234878914 92573490 414668533 49499663 782904059 798552754 562983254 785978193 154599450 512884663 565110969 180678752 547247842 726770185 232268594 337958146 874622096 752040005 472688765 465647059 302829531 15369654 543626205 892952677 360502086 293112054 758182963 837287641 907013148 463059769 679810711 502172318 734483850 442373483 186957139 661541304 262985332 267745605 16971744 83345077 738618344 585855131 14001344 204660778 682871331 160835501 274999841 460368383 166294858 92546848 612279691 310734238 862942719 831849144 198007848 382842064 435757256 531688842 115272884 984997512 183828583 398302641 555328577 528071746 422671756 716245908 716688673 867898331 734231492 28358140 423928039 476581637 56458922 788725992 988376452 613343379 789878252 142926143 82232685 118993161 824789828 12251109 356182366 799625784 160017840 166182007 128961681 771313659 655669378 646736436 328895616 511442088 849786681 278543987 16854916 632598083 676726828 802309891 638140833 952246743 111915403 342734343 563925182 176461763 969651364 861782415 449424110 16007324 529598952 712154378 40140057 626332955 727713648 723161198 239295854 645227640 299413349 994559499 39009020 507298502 765880007 639017551 696129119 432413452 42650643 996509114 271469318 733459119 417563531 245109163 303847154 217478127 187651956 860159570 98182857 490030781 297007250 428282347 538890292 934221567 713019630 918078287 890778015 329906830 74147396 975907426 578786367 107420477 686835474 221188446 454382312 497591703 682437561 107398491 251248694 814171853 132435835 663981116 207505523 408956573 927512828 448269835 815634364 664713151 167709204 18286022 407304194 445712312 173311354 406262167 1039243 221498728 194663321 53383854 753667387 606337553 370423672 233993142 765319848 485251987 583868030 125204234 257032352 427088463 520744374 755918968 865426639 320832063 892478011 472815034 659450532 945651629 79079520 418949635 868454761 485859557 24864941 74954539 802380205 268663041 4071419 878707205 387043841 744579108 681586841 717177133 508116916 928168467 759791436 887276815 84625103 920658527 662887527 149017226 470568106 857129246 472104067 691249297 707409829 470110131 339911256 277144854 133980589 127488666 902534850 140670071 367871547 115808738 562781227 842415998 68222632 622116539 362955804 442219720 607609450 319212438 30590011 585259255 989843725 180540358 823637677 278086859 908805196 930420432 899955827 698766984 349308096 397191127 932980418 728558826 747800185 923538765 507096177 906357969 327591308 442790535 671320471 894536553 15338944 736970038 201177422 719261547 17804687 832754452 314426401 770703531 815487350 46506336 539974092 957665090 975809912 478861903 635686050 105351418 85243724 454868418 362663033 568817801 566141707 745314721 820427790 946473485 906320555 29018489 180785030 616186563 936495130 494187094 538046530 476944709 313629471 283424987 10216945 571130365 947569832 935405059 169312995 51896186 724411983 451514947 57313697 320029775 565086557 672468509 468279677 924547182 336790944 332489444 489517336 650718308 711336688 223441950 927949208 642477097 192412128 215297298 36923467 67940658 303539540 723558968 563220997 607853577 987481045 631408551 167327094 895120091 101483376 95643512 870758397 757881618 669692415 289428839 93069514 51912264 614241741 370053882 37872330 587102463 35708499 854962599 476956370 532468913 417084343 295179212 459883164 391386188 58527528 595534212 606622188 102612694 471350891 787291950 460439622 551435922 732766136 135847912 790059043 74313058 134987639 570065269 977404405 62795923 738524596 867534648 735786384 212503351 12774765 257813991 364250966 630303448 109425048 782879642 583684650 710777912 649986829 742716653 829695059 128596425 603659131 610813693 372133477 226134033 85369608 5174337 548316564 501384095 374058337 76018688 604532160 119083974 510387829 311172242 715949164 751314683 401896737 601462589 928217484 214509225 337036773 151925353 236636569 919233449 113653369 972177286 451934068 234706434 924442924 971448065 130630710 383808914 751323232 559381386 985186463 596166173 814192108 56242204 97229858 977205081 747730730 80356615 820200335 238295090 70746992 880550260 564736992 727906897 797391677 932892865 590146270 509982551 319753216 941980642 820717825 89113998 422735389 76359776 593361682 328762760 650175148 59902031 878582755 562007812 658682552 759015524 555627889 944001038 609289217 658103913 952589425 474596678 480389051 612350569 896499453 407082595 922634884 299052366 460593741 459532331 188934681 338650744 181114414 14780051 181739734 20436372 233275460 425134369 684089995 433417839 799377580 787815511 905496797 740481711 829203430 667537142 744768151 705548327 930540769 618095284 453663607 107265711 435465137 870985862 710316116 24713732 901932422 606927796 116577172 884687324 579391145 351399168 656110131 41386196 879134663 712953224 827702770 691986557 410414089 795776702 783491182 539468535 982980971 594599069 232582442 408462135 335470301 924898949 657161723 566093847 44041463 198469448 425957738 373305713 132658161 512666507 510787058 202218883 344294029 827941438 202392137 607776294 497385605 452914031 430939258 604817595 665608858 501344428 525210170 93873570 380224146 697599871 439525063 33766950 89438171 392895760 626342124 707938864 279477127 351529005 28230872 578697610 212898704 145546961 791638279 941170371 614324608 138731389 393136449 606490655 511291979 46265007 865509759 879209664 623388549 850133121 352329599 844614490 168936046 565092026 4031004 882432368 594903113 782177537 88612118 216941821 154904576 587411188 250835889 526901231 132030275 747074108 831644007 69256367 280086520 52698014 461636114 65857999 842547970 434065011 912861716 175927425 914096476 671034940 774361734 310076277 438586966 513141998 314624656 50260019 284049275 372319329 689322936 179242043 744067339 64155131 664329303 410231608 531769732 443703817 61845300 851539256 968124447 648421039 911001199 543040720 113449112 52146534 25369150 886115426 528294412 369798655 860097274 10240010 606255448 440260074 543269406 860138431 568244949 864404709 704517746 258687207 542202982 953789749 178327894 100490769 786863101 402250705 836386337 212394635 288369685 87545993 819267441 867235371 287847560 657627572 386839968 880312261 798679816 838130716 331348207 583111860 810747399 658827733 265299528 698481306 362262094 148990591 520392045 698006698 67031231 845356653 673488392 594142492 5041786 921780939 472294748 672080552 12716832 712855878 368328255 307861687 889773312 437663382 78729570 276250904 20484016 134102608 340161023 324721435 480898667 628297238 711881635 359207655 80636917 908158436 426956737 719240474 621889975 963890273 73773779 359663782 75068746 645742651 245728855 719130668 453368385 361092598 57603532 398321718 710681024 672277451 997389079 52989886 774295994 466196365 818509224 241736274 938020020 805987244 903138244 19184859 991204992 593207250 759125923 539862246 397162610 201116447 708881218 424655942 269692020 385919492 726775768 329932372 668388485 919967447 323571657 587298701 678312703 488564302 576553009 836988357 204209662 385189468 806707958 577336197 325497638 956124998 684578826 390851394 255972564 714577030 597186261 271956685 429267874 855728367 497918109 446474568 555883497 488477497 923048525 283100986 463447744 754081232 445688278 363232495 568109908 662056753 109698577 126778005 978776899 133926604 260637872 658201607 743193911 340587811 57860201 102652812 935686747 85913324 77985639 477946088 781479808 530251308 992064764 142834402 221731048 32400558 404091040 999841580 768132420 758047029 901552662 319803081 710710321 955261871 887895373 242575443 805973635 102274761 833618000 298006112 995250715 931486421 608181673 593219261 575024323 625102695 657937295 615903504 175789598 646604901 959214627 295006474 687819779 462399084 23903329 925083832 52960724 530337901 689667054 823708868 408307062 843553973 653432695 756773177 224807054 417605470 3318334 899365401 833930746 400590953 144871294 158573853 632424447 56790161 762150025 200110560 282372095 651978556 995953707 442747672 151507830 251440416 633320992 27404866 519502959 14814975 368499133 34761315 319551948 362428262 471923009 762430646 455242077 648486365 705471576 17071970 671343099 612033970 278474607 689627853 58772732 577355739 366523033 471728884 362997837 290283192 223613595 104964393 289547480 841587258 471975316 839725325 601295982 52633142 238508568 173525512 140042657 319437268 922913539 163510150 760269792 3804078 380391134 551054740 485475425 792367249 1717754 250317277 246980546 869537740 99859932 887136227 667338776 756868156 478121165 878071269 605456366 780782088 828351733 679809040 766628097 385668031 861496094 670846369 123554895 770772225 205123255 888571429 382372366 212798451 940017966 624412964 915035438 927249045 787850919 560959551 338466779 28711612 43949773 114987320 156811766 538485506 447845908 22487494 941757372 705735150 784076044 927568045 87389227 467217997 559088024 689433987 937395684 511090972 320435871 659601209 420137032 974986221 856950113 648393773 49921336 160148809 143945354 148575945 815829953 598214619 880859800 925972407 887393533 196710083 815322953 482634390 422533439 326108315 310644197 449618126 44211831 196774038 596847658 443172194 462949957 624593578 408639279 409627632 468264752 694123661 778979489 327209422 904053531 437715447 917756698 187593940 404487397 271451712 161890777 196490592 799970390 280117483 291939860 449872539 73196999 598101600 976152157 850586939 612360772 21071032 174553550 521385371 941764280 161903890 169620793 733243856 648618691 894262239 797219355 979062675 821095042 401229340 764059612 424299992 97182013 330377064 598228182 92948201 629982179 39977352 478833498 655005337 951323446 87972038 595539759 111230935 569647628 870782914 40045094 776979693 375636499 548585385 626716275 648587867 508185119 23607317 941130879 579180224 612602704 673528479 136861410 217283932 152527061 507047857 826426506 867154501 507746311 558978968 734791800 385099254 922361746 970632465 699762616 721889979 242634328 184296236 248195778 551055813 740710527 886017909 996063255 674555914 926857255 737369729 821390049 484467175 909687645 907997134 349403807 451957477 956205782 602200592 231608867 113420480 688869768 798727895 119059387 31834086 352435099 611294454 829491047 11322457 905860256 26327481 77377885 86026978 83695318 168175016 706250066 324209359 853855474 827109446 369884356 381643412 680205320 367604214 464715048 717634187 176603438 674883028 723303515 218372805 635098808 588653688 54320087 397027438 395575269 850887443 297753854 103394555 247712543 494322270 990757838 519459547 864257962 520170674 978604812 112042628 709675574 944389528 101349065 543528874 186669671 890708208 667466255 436452180 29618913 943361176 735977682 131549910 413932164 528175167 212430290 530304574 190212201 398755171 759738885 361410990 542725769 610722892 193872146 445099466 364962462 460299867 314141685 716949165 426736195 26599891 894839036 714433676 600195616 800966214 825389170 778248538 872473979 267131281 460837469 286918772 900711777 813505306 949667595 899067059 114371479 997078162 743609437 116571371 400811795 409749159 261734845 604143931 863496399 424516348 801749619 113217028 166637186 38976972 996088525 157085417 570444239 492428398 968474673 60243086 216288988 697907250 638636009 84747164 751440178 366793402 239965678 480076259 119389060 636652116 24051455 942494148 287772700 934315819 423399338 228934862 969001468 613357060 208381102 753208008 313418123 567750749 360338539 751617237 157170301 918609491 212750004 80294358 158275427 913463884 652648224 273472723 508510558 588043996 516445783 930186495 560143583 254114476 122250974 428618236 925591911 613995617 144008775 739077619 172461978 304853541 208797457 995444273 253323809 244963055 1999790 234997514 440801511 61359834 656875418 675126255 198962954 779651099 479861131 236647478 738601633 498585897 851884162 847879796 115467869 926188297 473448762 117173009 208303323 546481223 205603128 293643660 677961703 69524912 597181071 502704121 733335052 146824444 811790193 368209384 527709228 190712111 788038000 903574643 915948339 88058752 309480038 855525092 949857946 335220119 676205108 794196743 59292398 312121310 194694187 931449323 667389939 154722868 275787409 520598340 627650970 14223598 436137 473862035 826890681 71392228 802084974 639500467 227830105 703007643 126075672 406829982 880046616 540400336 402067385 359152854 437112107 614157092 321877944 242821293 126459847 321247564 484370776 733084455 104855130 136336782 835036646 975426058 434078689 105410803 916469226 902255986 676652263 405791462 94471007 151438735 485847321 261252583 78849597 46750536 237896848 846681162 457988236 69505477 876289972 598508608 669753229 463693348 48359527 61724793 170585913 898460535 841882906 507149081 68235576 646785133 622937230 390237498 698586918 124522877 117892344 915137023 981021681 567121631 825817702 532086323 367597820 386460823 645717562 549051561 830575730 418850924 371677517 428441774 689386472 103948847 75082971 322759120 96541017 650802973 709093416 602939726 434908582 118288347 869770765 950362314 539955874 345075743 643594684 364843304 304215420 588211746 858331345 499380092 309856165 219556291 623909216 817839816 725173581 898812882 751323730 735095658 430174400 195730970 301374149 719024557 285495762 604964816 5117388 375203667 398961337 647933345 993422957 66749883 78161534 469771460 749793330 535562858 63608139 829618794 726714646 297567890 78300113 84023282 324142993 517142971 249646236 391928879 971648089 264180495 106730422 378456624 863802246 67516534 86183 270080587 441224555 51126127 695488569 179550205 827940568 482851870 628449485 441235251 607902814 748730371 326431832 562364567 939818927 322903349 387356604 960917657 854253395 279942743 438518365 492938091 683423906 739323417 888955780 365509971 510077127 526695952 695728277 808494805 456060679 96020185 305067136 550878055 961294794 987166457 330052099 317237157 953477220 477873472 463368 857770017 235664534 503972441 870251459 685243141 801252542 155674613 977595469 493352805 945332049 713385701 421977139 270949303 28892085 929195485 826450225 402985679 346835162 561356736 702622199 372199427 596109577 640561830 936777570 461360588 944269134 627522307 849417367 653063979 30078187 659901900 196195941 998820612 975406314 891348771 643907510 974755239 794973538 148193617 643343029 501317437 854524518 615582877 715270066 225733602 716278132 51074578 60296188 500769980 226361974 929985148 857568073 555760521 235298561 231126891 606395262 751462644 190639973 333702704 209575090 809797973 253525698 921403729 534541363 843900268 561371053 219895096 346836698 653917800 780148216 271832563 468380845 18078707 177893812 884775452 993051318 104504076 636179003 882512739 404750488 226944423 279089409 99452921 405698069 370555889 974872178 676992214 305771280 448335205 396453732 516849864 173018009 992918388 818772352 634346887 590326430 833617299 625458283 550725414 65532029 895042456 552455340 763905563 299777582 921308656 278014776 322703502 777966412 45632603 793581400 48988887 828253934 819093297 709816634 973542092 753954903 631385295 382815656 303637266 982809852 403127769 833394277 615632657 306925163 914952875 280474311 252513139 422003501 676737731 145302829 275084148 557645611 281572143 326278329 639912372 798425279 57154464 171397839 294042849 311852580 531489312 159197703 606876891 242031977 742902390 613646161 480419862 483297613 362629927 754478537 324748909 476190327 610598766 495877934 434846342 95735129 734781753 849705475 78903925 934941185 643627614 633562041 709879344 266123404 903145377 383590641 216474935 594374035 232363043 449001437 825093989 954027189 850689734 635916398 330493854 5081212 475977580 598601039 13105176 232723048 970413176 545832993 471041597 776717428 223668804 575806327 155807878 478105313 551229097 183595761 418147381 233680189 192982066 939523433 857534300 540264401 844385656 13242849 656076232 706743056 27490996 783151437 293471339 189386651 150879554 284924043 560785169 812892078 967467505 511620172 964796858 743383952 886877714 16852689 854602791 12793016 402179358 122024611 85572693 843651540 936864116 397853091 929499251 850221861 465501214 984070325 841955238 869083297 294820296 489121040 718238696 614924924 413159752 697433239 327028176 910347681 788532384 13201749 649057769 592093929 832915536 39096249 712569716 470066496 321276390 268679030 217292777 281055726 298050868 170988556 554063644 932419488 346114074 647309512 306798441 968885214 903851091 371366508 319906932 643079285 691196160 757686264 887909684 695921063 466988653 739487630 595488766 432884343 177277815 646935721 615325248 809778518 894128618 627179623 324302513 240611541 920123468 343775725 652998865 305576171 52955412 219163883 537234018 131458703 400260300 150197674 100720458 18951542 61270511 529931953 717464341 14919235 196460101 295184757 919621927 892856672 830352279 626765371 213212880 67837945 252513788 106159922 94262554 719512595 483661691 264878917 816014429 925468750 546353992 791726874 839755152 440714602 187239764 85534893 908067278 958645532 677164078 285043894 402771416 290709519 5220999 461416909 534279216 672218690 971684656 144507319 279265830 821176304 318583660 221588696 841127329 802428374 321589785 856546378 842228881 967534071 669069904 555466980 475197541 254348094 363932473 630039418 61321113 350900412 228195311 444240784 366004549 762072086 820591182 552869952 723365889 249890973 172782398 396102560 53076564 593398343 328348074 219027684 449386079 120661218 159424026 959764537 620774269 907301191 620796355 240238876 306580863 323076491 286130582 748965568 481456857 178604140 141421289 198976263 633876902 769317186 497977874 3872175 591536703 548149454 919393972 283006702 561091662 40439059 501258886 61917789 577198520 569559829 328488730 10537903 773302514 165253463 542469303 464778684 732859258 484925446 27788548 830567323 153954203 618355956 66365941 568823674 188393577 254912639 251406273 524871595 269880103 565248730 267935861 574158693 577921211 426278778 864638505 746952020 454574539 881536343 706369334 985646761 646243619 328431390 88791569 962264222 683301410 735042232 362643536 827391894 403746595 997371094 615256461 334845174 206187002 823721285 213283892 509671334 942208954 254262081 507050210 483312639 32906159 575585078 811433834 113266850 757224381 576700138 202480112 225879232 293234891 189103771 113664089 587054254 290991811 372643853 895447578 360912661 369946598 842843737 555998958 835986113 771663979 757240756 723601642 253179558 773214547 183443648 816992369 922202696 457913476 704501222 773737752 151413422 197501746 687351190 775932107 836390673 497486569 38200857 114406316 905902338 932578597 726806501 190141963 529774560 376343057 420838242 460381420 976338645 112685042 765426293 894618992 569914468 113578003 808620314 386081036 72256256 450740658 639808467 949732331 399090145 855092668 791063174 795572679 779932631 126672262 803302177 285836049 940908766 386577089 121864664 727474022 585667514 6632076 319160859 207170660 578811207 970705029 786391723 87861277 826451089 413990944 99008701 293481399 232104545 594286448 823216018 465601109 957492549 847093772 94301601 351252527 939054818 776319084 741225082 867130675 748248200 262142732 778227564 553450145 333948807 74572269 714639767 74720724 341697211 402994881 221334050 40579507 947689659 70045373 474195609 237237053 472909047 667410054 557998533 948689651 667984807 33785068 778691650 671449339 685968734 646747966 901538722 524251552 814375124 229755663 465751161 860364755 267123169 876433992 416124763 425109779 379345450 76395063 323177803 297638820 440440491 61029284 313175909 547269251 183049631 599988634 777834635 890443160 699802745 149035561 894144878 171606982 985861755 826124374 933822193 329957120 994692204 944501282 843134714 966356683 116972789 483424420 128687917 377657015 413004915 270183426 196331621 16204466 275926103 10749615 748864397 326198057 950932923 783718315 282083932 484364537 636586420 127195355 620931614 940795150 274098829 570067503 892031996 975974841 553437430 417430541 998538584 777692836 376068080 261267034 545566538 531560770 225229049 246281228 669395736 878602539 218939806 954872493 961281144 934432765 699734880 693728325 443214080 69047221 805668204 28901697 933297024 996039164 368824696 527022684 653810228 158975374 37308559 154199676 109178791 573710568 584517771 297770897 480591263 401757923 609986095 79869593 221333080 857666011 155270793 452113371 640273022 142587516 462199869 181280201 352895723 46127023 354087000 232295325 159734940 291480787 617672785 211989127 597451621 142406555 784254040 4820110 781952174 351455151 89795098 117647428 577877838 981585648 943314093 968492961 368527810 52294115 715073967 336335805 569677042 496162366 239304002 78627631 392760162 451738833 194463989 98801864 733847036 796182972 856828217 280732859 5574541 240059716 425569130 749303321 124958225 171720596 534878571 660008505 887224763 180762731 505316981 125475021 17025354 853777136 616461077 888545503 651953162 924681403 626003015 644967245 469173747 791620432 347800419 805624427 419226781 819013238 915563334 775069404 465600160 149042520 441895999 55746266 767970883 165143612 251015353 230542184 202230043 738924332 751879247 668245772 433169106 821833154 442662886 60950817 749164174 194476963 906349040 733010120 166830341 825374708 253831906 118699424 887366695 9174227 258685703 305114121 61582968 14924031 375703556 227647970 615626198 550001799 78822295 629243035 568100792 391638527 776964497 5725533 621452437 206722008 228147859 418241397 780512622 927241904 580677307 352105871 238652142 239309235 328397313 578084988 479622570 446763839 519310796 624476535 561366818 150077512 609495829 137038604 445223320 339691913 450661596 602647149 22631012 468347962 296242572 598499022 218473485 437127512 380194014 559042286 692001583 437009451 965759526 476838748 856787470 119755127 239792436 788571963 805092354 633360064 714474064 278724021 684315640 720702163 104873953 162267284 472358188 898420491 685731103 268033276 724078179 732055542 885473327 283121088 687899802 809027596 881007606 939864378 912782943 908553043 325247540 410860563 402489010 286066800 4898728 113769842 288847817 411585355 535094165 736489471 852590934 609105412 688320970 826043549 394475043 191479980 212882766 886865838 546360400 246658932 746057804 921205010 816220451 21255353 128034157 50179621 736307952 144755201 50537974 350267557 62551146 811421861 200279591 7303377 745278177 118374696 570287532 474562263 157800293 215585807 641145641 158225098 192545354 577308348 455293706 367154588 129076309 347754822 334655415 832009062 124700059 67993878 326353386 493377289 524641912 137484984 595828805 6718846 628507884 358491099 58227081 679176525 605673933 314861559 969580698 569486162 420506149 695039337 272232625 525716898 863803909 679672821 853654625 36634733 304697713 690955459 407705888 766639641 889311049 773493212 125775582 788135258 447449671 262102417 308693629 315675568 18077723 826245173 844002375 775390723 796870805 854675928 130146139 622323231 504545797 173167295 862499497 14318489 573246535 931965517 455386709 477150823 453210666 114288085 287814373 692641032 138308181 934091369 50715095 102962043 281325995 473678957 363810906 137978862 985002453 201412040 545396472 172363338 519079856 669366290 359504339 904514046 444650472 841038886 669193093 825589346 236172321 316944834 102270107 299016319 869798713 794626357 952907835 343867669 700512766 661667307 587190510 403642751 161515442 174702079 302862338 288545018 150125091 763716458 374854611 125556668 299765575 587574549 495698783 253876991 843416515 367560699 604314332 451745013 646936727 87985078 893078416 307707051 65384158 766239824 386785958 128336162 641961661 59113845 144372280 434231741 697244971 587074812 130092233 658333097 322266977 212315037 554655366 387307017 67715600 165942722 327314989 675941268 702446727 302671364 631120554 827442845 16034431 340258821 695331953 304253939 184752054 474155731 747404270 166050848 80337785 306469226 823859956 890207661 253160631 779899272 68646273 485297587 36891578 112386437 93404319 613466392 743505103 431251174 219023539 52379650 207425590 361535352 10481502 118314993 501936804 717882266 278728232 551939530 981502182 85457144 700785942 778758578 468213515 878587701 755336553 863889132 33250551 65074661 481598156 772079602 238704467 699901017 394974915 181015384 323222871 998304641 229007917 954742698 50153482 195524052 796423981 865616871 241623289 968189342 383638418 568545787 364874895 40510394 816763383 684769245 806504710 149268792 442383548 822494172 617844139 589464835 661014104 472919321 985579170 661530120 764068103 947086792 92761228 753955935 652716805 447569744 767951006 396170373 217516389 161985077 383089446 959956599 913283558 95024453 259454397 788874666 685471032 939820636 287854388 838291434 518076917 347587317 30874783 601257186 679111623 608962741 140421826 601426322 242681460 386172473 546518011 506470955 203106392 380248989 616962873 640695348 385358427 129729317 455822776 614103588 709260413 420164123 342624805 195220681 968015100 687428050 798538592 528393499 414019270 255361404 863437466 421880769 473695656 616586062 649133945 271513157 117797343 614304693 176165712 494514988 841094965 401993767 94734711 757517946 714625365 163535662 219561351 720677819 370697516 958916194 235997266 791324654 24341887 732849344 380328768 695636822 118552704 118596289 369604331 856911897 194796970 744697499 463250460 692404828 219560719 484491682 994637484 831129836 617758206 80385093 540176764 712759093 676026369 133859030 895216292 672563572 192190389 306703238 672532622 208963043 93824249 250600482 567567345 947876788 153879630 782840294 756122811 128624670 553738112 701385146 749441580 890363070 312810568 277175211 810174416 107995103 382404170 989295224 838357133 832925489 463994683 972874221 644223442 854147731 726062634 289861604 915367340 208728936 344485490 14654413 886364500 629842316 817390104 156985525 542447444 599153404 414771616 921198014 67678210 996242449 109732570 801581673 423961424 734225485 329991611 974054189 399271139 404401048 290030298 863111324 798910762 957519294 467880161 223136680 954988151 625354832 560311417 157390026 452323575 815668243 867648173 868232357 331230389 912453344 492122656 472766098 333997651 357812312 430958742 291826992 413539454 316048773 556119518 125786583 20046575 991372629 242339259 176690268 949825874 101273685 808182216 190736635 912656731 526196 555363866 7328705 248725564 161298565 787938079 229768843 106437645 660153056 804016130 169675524 358033162 927853105 421786272 653650906 300233780 169467542 95078644 721227633 474783364 333408440 305763711 186767705 157876850 67153781 919030540 967629899 123067067 350861729 209638162 120977489 277301748 376275129 228338010 646466901 545215933 822645853 834218262 347254527 658730394 843419140 989371834 470411285 633793848 831757017 72318440 649292661 54965663 709536442 629616648 267997973 404401559 285359863 870415289 64652109 912882184 225002005 444238072 409524977 377779781 418680600 422224299 453674133 386229849 898475519 778031987 777101609 989484384 943367537 735668709 488293363 957154807 352718746 85967490 187679232 129266733 364832040 341082414 432470237 51936839 618145912 455249831 7385024 74989851 208182301 870804004 9352390 319774726 889332453 515541208 62781159 105233573 673236728 417978081 34811137 830338572 179292655 530761424 458175987 73704868 363482329 520274321 286741456 812016485 892791121 76500789 530992942 651386808 615486662 911669729 469466582 766843795 654290509 33767511 187967347 579871164 837513816 623756678 710130701 663982323 895604406 370793478 583806209 296536705 674452248 456463187 100669521 119019665 165664921 229032555 828593272 381459362 464268672 191422929 607216773 952475784 607221406 938404471 607283921 465772195 534405109 355766043 549998738 447193969 737261102 204228047 256232836 518944213 934679928 768659595 896879625 606374521 348636772 388055684 580332276 945891345 34078478 529957708 698834871 862405769 766681348 354799875 846489933 801791376 962915818 699809520 120488526 488868093 466538566 871704477 75028603 270382903 127420884 139392933 96287944 439536973 639191567 646335249 45831528 413804747 639686322 789490849 831456599 357478993 459021075 991551232 322814895 844625991 873414548 178870419 454919228 723493486 90965862 582239733 461700908 670188570 322519497 357897888 773761227 398187726 478089541 45244903 381079023 574121937 47331164 66161870 783945707 437513699 525125974 531728895 76409932 892270638 72199005 250479153 247906080 156674814 408395702 954621255 177174784 531642314 150748022 525239635 962532855 216309192 340260332 898345093 657617595 920070359 22998716 87861527 156086068 814502388 372170555 673808137 747919647 281155249 640581667 307359361 485557995 664869784 824845563 190133088 282510457 79942489 521798434 254289311 991082337 532744280 332722018 554293849 428426151 212486987 277480033 335088019 785840329 12966908 216152944 118776510 672352539 275163568 337593008 681358224 531126043 408305376 860020328 701732074 155702779 219399438 283955886 48333953 2403439 409777473 995767140 110526523 532329868 817060403 352053110 731627901 665216125 528747374 689450140 150666900 968967700 674864225 337446722 691924042 293199050 134829723 90427056 733043927 555367973 495387493 297628665 268731506 357816263 412213914 57443921 467384421 137144842 255218889 477279136 861558719 346448226 4068026 254864333 174722234 789919399 810069078 320647081 361890627 203888866 800614272 428844124 852237924 584580878 128538157 889787341 727264797 522052262 790934735 343962226 761810690 873857306 742296222 971396710 984276054 121154889 801453992 332109671 483266215 573013221 777061817 199252082 543874902 527152552 338810197 423965003 282920324 204884958 736165747 541602054 90275756 188685048 678977015 106042874 955786107 547741135 270691661 443100750 258097071 107181689 361474031 294928506 531963533 533130030 181054591 948809548 79979643 259678019 309571581 789306356 422560286 667131607 926399333 817350618 823420546 669990422 8953437 497277520 231376386 221024270 340848993 922398896 503218076 808505602 318629396 72660234 8369603 462075724 154439691 946384861 881249547 360256870 857670680 195042962 362321771 740885165 108158898 430945584 636639777 598086891 526540674 581998097 562893733 775290112 859783763 640438381 720663749 697302108 262324106 631384786 469329078 581048244 446692764 928092389 479245677 958471070 439472046 318472566 990921993 834245466 871473448 402639722 362505563 839269124 894598244 709974054 50043041 484516407 869044947 448090661 582427313 569552326 818018251 781253943 442389160 566442260 601870933 92174745 37461783 299835606 757693596 33140111 455078697 842799468 354968209 919615782 937056684 819466640 782074817 432957226 89272763 555328754 712460523 367584302 828610244 797911810 615843786 923977781 22067063 950894648 750552621 50909116 579685469 570936032 415780166 651500339 492440071 873485941 903563233 828142754 785233099 939637133 914829820 462327709 830736318 709103252 250136586 240198020 155714155 947261914 3747487 990048131 370268407 909495422 930393090 403366905 264984938 767062661 889983438 178251810 691503833 957944113 728808184 373917512 420696001 411314454 510244507 997131653 319230490 67913031 430118595 455905089 181524261 790013797 607122314 908236196 624173693 576637459 926782849 61035713 552964155 427271028 364875963 345949296 231939539 585836047 593103506 808866688 466530781 583668686 272264195 956825997 806880640 821733106 557428019 141775397 328716709 845138552 43282692 109782808 860488759 517046191 961658919 696722636 175734502 795674128 931786306 12130175 695956734 916474930 620961506 336988420 633265114 787761081 695831266 325330587 351423201 21665620 297268915 398418372 636743831 911368998 567596938 824671437 403957669 900404197 465005262 630276001 524468229 795720234 310490787 167643954 77109740 421552651 303452406 35548178 409804822 442533725 285718648 492494152 370622002 863378040 554244658 756135053 682713993 367881121 872581963 626411220 234547698 331075745 908195872 966204642 820194636 992587009 801369817 918132450 770406459 648416127 186462721 690392458 906486354 121711573 33584043 609547394 855878155 979648681 938124745 352798103 57355449 348961978 910705733 417249785 571231026 104113903 409518279 80056441 250695452 365405453 949172661 183988314 525275400 648336976 982302426 247530146 123856827 225390583 156259446 564505038 38480737 216064433 80189289 521798269 725161417 142095092 659070360 78037038 850665321 95149538 80047999 752262094 249748141 694625165 620640001 147013581 254734499 130537742 742382531 701683855 863593272 927323709 315426378 251566004 597478641 594840299 249539676 950263849 724017936 249719395 229162974 301787632 995210515 675368679 824818868 579845209 203965298 730896902 695390474 202817287 417994308 909524232 329630003 131312421 904778707 519825164 797785743 172904878 588984083 344313610 446658211 627501655 718683932 775191738 94698807 517732010 993223365 525120992 572546905 521549064 301085697 292203031 825176429 244116991 185738466 909717294 801687270 840694891 214374508 669773143 593452587 252291827 268628828 543611131 823256025 732642066 380329499 261731158 730844410 893787416 366406969 643675268 475657579 572841417 610208106 676536936 779451065 711285554 474470404 214439329 928128659 930978986 921677584 343436195 759460365 890756175 147392145 975260899 229846496 557881253 541640439 317378303 622435291 460317734 410269324 591764522 679285896 497549251 327901697 360135126 824121256 502317684 499717843 870243242 455408036 645326403 778424213 914139785 832203448 405700256 405599873 586519019 794140843 880156540 196784505 350091016 604367383 982587202 266499495 461473985 147017317 572756210 446504607 967714899 205770962 145392226 99789670 591612349 901660496 494650509 565959124 461735851 348491284 371411497 107906924 122532424 175457777 209905327 764794319 164947034 438895598 776020701 543890173 737310135 629369645 375519705 746174350 384881794 139890260 279241857 137281334 223239878 539406951 482079998 970601541 40065095 633505094 378453656 506008712 14543077 360368786 763618022 775010790 981122079 673119100 741081971 768654376 46453180 82700371 557538991 573458422 225667615 851212563 862111481 197038974 657853341 507847057 458917397 214144530 859128154 741266338 283874288 435014592 832229946 915013137 296162968 600787861 341728696 135115267 802292337 311296660 697082665 941584655 729713558 896816432 712694598 191877295 962022457 141108602 643643530 319113222 739540615 83396589 46155337 328756464 602090310 541597135 334881263 356523161 61059387 469047869 961957127 65256053 230591433 975452569 222165667 167177523 194417638 383087587 363929059 270567756 691993633 970005672 963768510 111562252 217903719 745921686 635515879 177479168 561938872 156542303 352098811 523265756 440383531 989655977 217698447 161336928 787749190 917188034 470778459 157132607 682848051 154798997 56142963 633840128 976012538 764690412 715699667 980276688 960051567 14542074 100633731 80251076 209831944 629271982 646126440 782401844 544077309 919289561 11207452 849796894 111027431 990496395 272662684 674652489 506212301 130543685 628232468 942266966 171588861 407076930 881277886 275886497 58689164 366503714 695535311 266046352 784252414 464367506 865143174 633179898 136350728 832167736 496787414 195411482 84973550 617838123 752579304 246195413 472774909 761970091 28918740 520484135 295161301 216909669 871600045 332291041 337050970 901326844 534895731 965385034 14788210 980814428 879422671 187525986 496649291 48131618 749873099 343057822 268085800 392407544 410188859 460899213 68163160 29043488 543516901 107060953 381388621 888008555 801772806 81416697 999719098 432571272 213379094 656902280 336613830 135456286 215796273 625295450 153245662 415456175 463277975 242322350 993275984 587023229 83194161 23334199 248558964 309015265 842355306 963373400 833734176 405590158 467470237 513279210 866796220 512007062 963563460 888727188 779378597 245577760 507547505 589727736 124031232 378912335 926045513 370639003 192109946 12226206 826054384 558426278 230192880 553829644 354767198 938950158 374033420 547211699 9258580 627001210 139462746 16774224 248647179 871774258 26665220 670089874 74133909 262786109 254573422 1519107 40980640 323920091 939436861 516404533 613439255 422812783 581052655 622242224 521347245 493278821 369561590 306148462 865073479 739867145 747538716 802329633 280181461 883164872 62318906 822204643 883497519 895194276 42396955 907804580 763158826 757414934 502563036 17085039 16174179 39246469 516401845 452661877 198665850 101853552 594496459 553332152 383401101 214896927 590502291 451597468 885032691 493889605 602181664 390506766 99548393 726492751 527521836 234111084 148737709 905627013 445830068 40604775 586054844 107099333 846117028 515914263 433278949 504791319 989690335 903656387 769577881 429824516 603724246 495106856 437672985 761331893 108026031 498426703 213081247 756577166 301040795 61271656 978981298 269866546 33640476 79867986 243505993 775416320 473789651 991876740 269006794 602728844 189615348 645358997 528230086 771944083 747805972 632117366 751842099 818644845 795391201 594045860 394936893 334981636 13434541 447035523 458634274 210900495 468069772 490710191 861317327 640835007 788156168 844044508 786519753 157029576 321329479 350864494 714924897 745623536 280071809 810617693 883071260 883464748 221942689 127165656 394754634 747353101 17304379 913975270 922965333 683216591 842127858 761828775 868331605 7072617 784253679 759876258 200888322 838848399 807150698 255689490 143038344 396063831 837682950 848464759 393132602 49969068 334825161 145026203 138055353 257592493 710248465 544521991 907143526 855926939 568550992 542376852 925436622 210327469 32087033 161841484 253061464 440103960 313138402 7819048 982527097 54604469 358482413 393980899 489089899 580112673 816919708 651995063 381953296 663561007 204377414 400267267 206298552 739696405 733899842 544040342 208472793 320156563 91996479 163405966 948261404 828306842 198356610 726622906 547639366 415771863 941244160 48919544 915866981 621314046 159106462 26231715 756300357 661505876 176234332 258319417 615393609 4286557 544265551 1016062 811116901 500392811 746264371 810635040 554669303 112135809 732838394 479700045 692514361 528805183 818036638 595763864 978552657 146243391 252708748 213978218 311065513 724246977 805083314 630314918 169878757 297209581 57152740 38965257 348959137 413600897 501011352 646008690 273407320 54075835 968956492 805795801 814459586 918273684 168321614 791961105 892809944 707526098 117055951 468443427 572923124 928421332 89341709 850831352 138039571 533343339 863475970 905905216 424692424 144892361 806700179 514237043 966797714 336911504 742570411 15300314 730841345 631824348 147045284 826314082 639216429 544282551 919751508 865691189 179453497 246665300 641459747 942257346 211174769 558977146 700543053 826786496 871203597 104346411 270678472 269595579 296369268 697932629 359056978 845720115 448948403 261839950 936230953 368576451 660482257 529154787 131651426 710482576 36684375 579202401 378544097 439140213 269380964 59915725 501813331 585350582 18533920 916482299 448967463 92643985 314622806 481902788 806139281 66893463 430601335 424838578 612195801 321733669 76386174 758832234 124006311 40822420 406215478 514032974 3966732 600006336 824895521 708649645 802965509 922991556 654677805 862773462 773655823 385643427 380185938 177451732 304743218 486742035 262082963 985174060 577750336 368018532 600691955 776042833 231664098 710428887 231965709 168445263 699350911 178728401 577258041 605249212 593571412 555485748 903866766 844253878 8846275 81786835 647276062 318432244 44698183 631973709 266339239 724324965 228115957 794733880 345889060 557969589 932312750 187946850 791557387 830987131 219202114 705317425 853008448 143016799 562613263 108007324 242589721 87653624 891838142 45127384 546565934 836622448 580035092 280690017 821021224 9499304 230017942 607649122 580255529 384587615 433152713 586272027 48221799 479671249 761490649 597814406 220103008 905520195 862879166 170551043 611533561 216186620 272794950 617400841 298580046 237549376 574890325 123601705 460576112 932566648 507726053 12301220 991549342 325872213 945777067 887256151 213492229 530366752 78751988 691478195 615440225 688098394 999829902 619370361 33501905 752580937 598976786 229597567 835491877 955022725 45233738 274605466 460833122 757368927 353225656 662026153 664419515 537724352 895609622 39191839 414380525 128150839 731354158 627686852 537560717 931021738 631623397 686610018 311324854 21925974 831787794 213308011 308699031 881884807 864692918 86820607 699936942 303067586 905285715 134426977 943020188 90474164 750399218 140484324 909410473 943584190 379805603 512248999 544265839 93102075 860155062 626412335 633518985 52624783 479244492 626612579 45220076 477736443 488867753 810822989 28330852 858159918 121115169 990257728 865592290 336163124 182636103 177148128 323766585 168111350 359896296 679553246 230883945 623639400 339841931 783912010 905386511 896344107 115315366 778164868 202091990 548295942 813192211 471024223 170366083 300937907 755753149 248320262 851487863 13900346 480136204 374107952 162832964 486153425 852629687 31044024 591098660 871808702 372190451 911342006 38472435 831972502 36596764 557741304 695053945 831428090 281557896 446276612 198548588 153695520 659520151 517368265 658832349 513648940 690961048 35344410 420702120 777630143 697627441 145922591 49454696 408549307 380010302 537217948 691113163 573948611 164882187 29549369 721728724 472602765 127645987 304776151 835392745 407872544 150508583 868433517 63164528 286044059 64128812 913162979 529598799 221471195 293555356 65584482 657965239 782857563 751239497 578713911 426162646 411753368 685624755 485185357 239379757 185373912 937177578 43057001 706444757 508195971 989656486 549312617 830288456 191214120 952090872 385424230 325822234 216156627 913155927 242442234 489348611 700805957 644438810 428029152 760920152 561536176 241602232 960244047 588097828 480278842 632801468 820491475 398611976 674951554 105721858 729495585 793345273 69789624 656396714 408091177 284770692 79171353 558725960 714128562 311378379 857706805 128046791 843508478 208112918 246854176 37389075 481064575 429358190 482810867 922952388 490656752 572243579 774061663 967348444 998518632 636193644 941647194 50342871 531176361 320351940 359905099 651497082 718256301 178675412 968847409 34431830 407803062 828139243 540336282 15218415 572967792 692376235 535456788 397809655 959377810 753062760 481761967 990410585 421527909 566458646 22297237 558365096 521997484 977579467 61217704 875070984 734749822 18856271 396840447 614493013 455401445 73051357 232327188 201679810 664121293 501404597 366992761 105215953 144501708 760718899 178763649 720940748 613402936 859963987 383572740 744620992 319904368 802895889 286099455 96840053 483254224 257954670 691820952 806441114 412253747 43241894 966241125 855902663 440187549 564687558 963707984 956932074 562538446 181639028 453755107 318375535 911875901 4067945 522776158 418787937 777503412 12965923 132918502 929053205 167878680 510365190 61411621 908067766 622860096 150815079 112740747 610018207 635576000 667575425 987895308 840242450 327489655 311076147 333742544 503139977 966239553 437474383 873832938 260947216 980200472 55981217 751951961 104548551 984053072 497992744 23941227 936442785 662750479 58020152 151419084 606336967 109174857 856328078 408177932 208592217 172331024 551361413 150184423 200395633 242755270 383062800 796058717 126245509 57043570 429518371 456393022 16343939 920001885 985146973 410022539 589147895 167982181 79919765 503865697 792650750 616511866 174502088 426747315 161339379 981041910 117947586 394360293 212689602 777771630 96285517 598327799 398993746 467216745 763997788 679533043 438109431 584220197 897915036 688743940 413995356 484775049 945327800 509367960 863950252 130380345 398783804 753891240 554374432 774681044 427280306 810642173 600215370 786985259 314457504 815768721 618556428 39264520 971577922 996351016 752451734 22536059 486685910 368249682 270141425 974733228 263679402 836544457 400452928 347581859 735398928 103250209 420939110 492252549 22822824 893766974 812196641 135921948 231193513 414324263 121801834 432517449 797057835 613855691 549283616 168350737 879828018 68965772 818437659 894281350 500824700 694749295 271696053 926560319 982249761 222122816 964808261 674965972 947613188 972237719 846957105 464608197 951688372 340284206 799476756 621151453 570701956 315212712 331126987 375065015 474880795 997999798 172345213 872776395 707871069 824977579 711729505 701444584 1937070 863899674 395066820 457598829 431013502 91823328 504150214 718062525 741570516 719107224 505495437 496556552 261965437 14982921 7701525 807152433 108103198 783175611 307023961 749691039 425535761 664423512 923043694 924855772 534264524 836643592 376823987 504650336 878634755 751230316 180919698 506322297 359469571 934640403 752091381 233191488 818774322 954372208 317794128 647942084 246874601 533825954 991100482 861437264 114258289 350891151 355040042 242578477 603703689 749588080 257177782 251467784 920793186 711875376 622810827 955079905 436584036 640928361 993146579 178821298 145574221 480911303 132349253 1699027 876577272 265260481 740268255 303279752 224717849 492227230 886011149 928919105 747255929 12517035 180419132 296597914 306728694 600147500 74832043 55393965 662297986 765568969 944180379 244973581 197751658 377308930 111874057 930019286 621548405 763273086 857303543 188872830 919826775 652938046 391478568 436725253 426434095 23810742 834549141 20676379 603255611 577074984 301387934 29799286 773239369 927056225 312833903 979963223 770040653 91358814 96764375 707080966 21654310 236641397 764432725 929318513 650514199 35837731 505389209 291720323 285574233 496660718 415999577 132623583 282301095 484458232 842999571 81253430 217975872 613048637 237677224 612872864 894510218 838011221 124282080 723158310 706107589 353464986 156924835 312200170 156353513 648687267 649343163 449796346 470305608 159173823 456237891 663844921 920205817 977164657 237377038 364273434 747404572 63002236 981661759 119381298 175556288 844328283 866030689 27348320 631531050 596896538 564910898 519518795 615363487 884420462 141954727 344025590 578615662 148867308 784616505 128554924 815478143 629776069 871699778 581858648 536435559 565876254 105632318 636020686 329948898 311614091 527603919 900392016 357892247 630226743 872736802 797557168 737033127 662873487 586928 944061146 738353565 292913387 453104956 311543973 227821017 339727623 218680370 68062940 510203335 967872652 23548503 475028171 865665839 568878651 890534423 262707279 580839639 902599561 151984333 857860350 840492750 434443066 307836651 770464356 358444288 988670002 943579746 252197955 99221652 689083260 529929400 449050373 382719564 600189113 544482418 298603094 199326932 53443985 545982584 134568612 558503070 523257893 846343500 598087935 11293060 579824986 579427251 850294356 462117192 555894656 85743160 817319259 814135678 748574068 910415253 16518086 2337373 732279847 521447585 684360020 520954758 588402259 271577858 425903288 214574975 308552542 676321851 941831486 873584063 917966120 688039591 482090596 44003578 170875243 155696880 162258226 872440255 234168231 845748178 364987235 742494971 717224100 109733377 185030091 315163505 228178082 133614162 886542008 824640283 386371204 395347130 591588759 386489439 704836044 129749089 191470959 455406870 324580645 940417202 686672467 850646382 38307465 322521741 29007949 614116757 328011897 358393906 55181651 811379104 920638831 682639621 945719378 312527703 948419822 117452288 221751103 65952557 587831466 678055440 654845156 28438296 674075610 343440889 858714125 263050014 114769321 899678135 610798949 391001035 573534492 483752945 445044173 329401083 61513431 104361880 404858715 950921963 700288287 724779447 495753848 601404417 544667835 840919190 323094577 783744160 80083169 248501247 306815159 239478501 347986551 90371635 449413873 408058877 812722712 787057100 159257409 285129032 794780695 727985402 151539844 641935948 218082430 867755957 981455458 816607858 221600905 277635903 53806238 827743250 174447619 410097192 752395576 268950628 179450720 896136304 604260553 890967267 801376865 268945052 367190015 962257556 503317498 395443058 458265381 343400623 401783740 505146279 692857507 254972343 364070454 721764821 435880888 835436121 259729247 814020142 58403185 409149518 871818023 153269355 375313635 221060085 888283946 751821037 799567227 462942785 102710738 868895588 466926018 752346415 440694468 206326410 184247069 917682770 816485801 889062853 100509447 284267693 208085986 959170094 209935925 993342351 590156626 343766100 312922920 903960250 351771307 163497116 604406044 685528693 507344923 152040095 179689186 924193740 67820589 195085760 771595251 492275171 770610944 482807942 892881665 384322466 635905417 849912214 92359747 49582442 878461109 255390242 333976159 616903659 815242398 570662630 869408138 756694696 335908212 122861715 864831996 837429138 739134452 880280433 180933461 150713818 519074586 989100321 639433717 989582190 628852218 806435818 1138806 24621981 675653299 815373818 25922820 737837670 846902457 348376549 775181315 774796493 77081178 973868698 698408910 979753923 669615991 593037607 585088544 507810282 69379506 873482556 782707102 654087411 90305873 919795030 80522836 573575181 224826169 183737196 61014782 688428990 613117371 1593638 439382510 802892867 950787696 724384629 83176238 93972643 700307709 231702322 249510357 626965146 908549162 92367414 805759740 915205668 986776590 718291439 118281226 633725069 371798498 322274712 101951818 109997771 765384039 688663046 304512236 525155262 999773160 826581387 178262157 380852714 971149306 909610627 67063036 51233689 5323339 320371916 296079551 511903473 878605496 248949557 179719802 704871745 564118087 3900022 564263263 218239370 952006758 889782446 315470730 497575430 786996865 961555051 489991373 599242821 425242586 837977879 730809591 887793479 102346287 319479971 412214917 692327525 552041227 27799034 148685416 659187280 497636902 672773683 566378529 512006447 402445390 569353788 176403979 334452620 96839360 771301130 949303940 570144572 355318151 936085161 534996704 181765266 482373628 183332154 896763155 70104685 749062346 285608264 545915014 492209394 852599014 305715998 118541262 629670674 121996175 711120394 173581082 911307854 253585330 691741030 701348790 704029282 504053971 351686837 56062156 277868635 382537578 737014860 926033226 234268911 107912621 690030673 872625904 82452190 584698520 629107830 641212854 742777732 10155976 486148890 687984591 641608881 910999375 193418254 91338920 695548710 39788715 38817072 849263574 467371167 586038320 192871413 348114528 412117678 800744961 853754917 853769680 596957936 180006810 719779801 220562694 436436478 165139800 104074658 469453889 145633477 106397813 968130754 409171673 681264811 667743942 23422290 520869860 963369516 183115028 49353502 340621064 762764026 141716875 323177662 965132309 322824317 724040432 96086669 930997077 967702222 170382815 436726795 9100478 982273978 952786122 40688150 534388529 389525596 620130504 808013465 156918935 561407 949420046 813252863 477268375 569227017 761122551 584064949 383133493 953349608 944460101 671779436 186699474 182460164 758257375 989731508 348976642 328771058 567791618 40712638 5062400 58060403 586695595 79659002 202696747 236764618 576163570 880020050 193577151 824971818 673455781 165673189 42192052 55303131 733048897 286893227 45315553 418717237 325591232 676226260 903820664 64154198 80324297 396651592 438277737 738320161 317966667 551083949 658838188 853749096 712607414 5491242 316390957 107436183 765705470 418066144 682169602 742534888 683656402 129263126 261075158 444300927 75989810 7211044 16661648 855714263 325712432 735785848 641167962 712878640 725014858 215077241 864891252 213622044 712975377 58731236 203685995 916478302 292122562 423884932 671031784 167211620 201747508 762647165 610061271 101404522 948717620 783725624 660336394 754208407 633565346 508022560 936240641 213761245 676758631 796145765 282510080 892327937 778171535 814431836 110697199 635415183 78868175 149341840 54438581 273907564 522851399 759177682 84128929 181004325 592599615 537100226 97014301 617822369 71877840 545344653 608394935 452252809 135563657 95746359 674840710 361415119 390707908 903956392 775918944 462909945 261059553 395348907 703835323 53433256 525467146 515028298 255092456 746522295 752471576 619304016 597679938 184946338 293676489 589740443 302512196 242701959 946270509 288398833 86629837 278267776 930645156 868222548 909639467 466095194 157663786 763813521 959368334 314158250 489158384 861437476 33238345 853828497 964670106 750918528 85704365 353064514 787172770 646338513 755306033 36888401 279669919 802117920 620394500 87788488 415178427 47760106 594255510 245136700 271866067 266687448 235260220 386888832 920156851 985918515 797890497 34507691 448716891 442424878 241000621 113522005 965209881 62167135 136284449 671412246 250404266 763786807 29811730 836383967 412571545 691933562 743642938 77572058 994393315 194667869 291100513 76736878 921211227 463974969 504191025 646261216 661329979 612590727 574503504 110774980 142849691 525875 819488626 298648962 392580371 284361858 663761205 461129933 673192083 259961951 521444983 429020871 919718171 732204108 739594665 525726002 380252823 976604318 331459938 202690450 652626909 610462145 722868317 692576178 765988547 786208898 713592572 200850178 851978054 688041010 484158089 420246537 679145509 120342778 613928985 552452868 184238715 930206403 955828985 16155841 736730206 305417111 450858025 517410325 642548019 796605909 227350703 498941844 802669556 8832237 232957126 793120583 563007392 140583470 30684920 795922653 284481524 499283612 990127197 573981239 598678389 595284966 210963392 707177760 46340594 568475756 48418729 700514827 248937340 991259297 817391515 790194739 15276777 335498701 661412127 345339752 809871397 28124827 946717629 647742394 727367845 739714996 322576075 95210469 22874064 931452775 169529608 956523928 697513633 571452697 125401433 322879676 989234262 317751370 87118967 551674409 296918517 221574398 534586398 62389327 802034545 108181274 634681773 602539861 91289657 369030311 289676479 667076648 609909938 468350223 748483607 331289261 671507466 623005690 575214725 90557182 220278941 652047507 745942184 444613388 665571005 3451254 61673357 492613764 761642712 711610607 514806620 447621454 879900255 187898389 471732375 823623822 984670118 759715721 729646907 336359307 294342203 804156364 569176804 52127929 141194258 367639359 541917807 164078027 730389840 75971166 862469036 578963828 196937202 462783504 884904329 811565850 509925177 65949124 293681172 681661565 950756664 75046282 916143864 830220730 830758122 513969392 100486997 925511579 450094895 457509277 170238354 314674570 775977874 436786340 371831379 728826182 559078422 814991622 660114058 925088930 45339070 43688131 646381163 280359625 570075290 758013934 727319920 805808033 427960554 915256586 244334935 377600831 617635659 850595621 978660634 422722151 142126770 928537764 499762666 802392167 489091475 215181340 189911872 698875012 987040394 681105814 325669880 261279873 134203999 809189421 474801132 191261538 415401634 559788879 148457242 111678550 888922514 783905312 523838280 223777755 420081695 961808003 539404435 833672048 723232707 648367913 750880165 197479714 525253013 963067524 989781489 150013444 370747730 81257231 287578631 822215272 568618473 252842600 823996813 712174549 619974954 536128784 423571504 720173874 207237575 233505553 175339493 745208420 592554578 486853221 376846637 290680174 643382905 808315337 397622194 728886336 52891042 512360900 81469525 157636782 873285288 227612670 491945318 522716308 630363188 947284012 560418723 371010776 404092190 731889440 927033844 506598179 841067353 128150992 212262299 535073487 382268543 437900064 47709152 793787749 199251089 623340196 562808553 299905638 566648788 421523271 729533374 987276985 673993586 576537399 429298385 92404654 45707467 374560692 444398428 353264914 918358370 487463488 973359466 91189031 957382987 7067242 882668383 595400806 750786635 813871886 609243563 800845864 372314428 630154749 652481934 357028792 351390677 79382650 697796260 142620621 836779665 911609353 350452718 159907014 277322376 793202521 938966703 482792373 814393150 157759190 108276580 699538404 965533700 415355197 512588106 782536534 965846005 471151918 273043413 470815185 645586830 356702716 112612484 686972693 251399243 713122596 241867708 670541756 110418452 602367058 295036685 636955823 980545566 69337096 376004020 320155533 478306285 427278348 660868130 303278355 611391713 315594991 489262919 602444816 449613145 438164264 542934093 263915659 315416278 255488349 263576971 438587717 869830728 326546855 53021755 175006622 435981238 272225309 812086693 296084146 883711761 843711611 371123260 884914201 517338903 600865391 90330478 573505015 965729605 262552547 60589363 359779719 990248617 523485315 383880459 874299573 276157951 195948916 701800639 763565824 895649502 358421609 382360256 811015096 403253413 55602934 793524964 115316251 523790693 816373190 981576608 595940416 555930745 606427825 80667482 42107393 452877391 108410281 963682374 389969142 115200874 224574381 96651641 26526678 465308167 662916722 392107725 404816850 219379637 870182012 751834536 952857264 756715050 854510756 593111069 200402864 533597359 887384270 155582234 431684156 582745385 925360748 409220900 526375987 716362086 438961612 877481633 84255543 314537264 860808036 12067638 184384820 663295284 194771048 633921675 908198489 418060377 722624137 452394187 184685747 570620963 234416211 154811303 668520828 920023965 297885536 730116312 746411720 367691603 194116910 455035144 773560573 287476373 844870260 144782913 831436202 110553549 484757296 379194912 440697160 530000767 721543734 597376728 585128465 171785556 207038666 32480034 257978699 846847075 528817865 461281744 199820226 788778807 405047318 773494335 649657312 180703896 90044401 25635288 931873995 383439221 289135634 698082592 296040692 959078455 517873509 838050974 584842361 784985975 770765533 446926995 261554658 875858639 94085266 988158167 521164817 118083465 379386282 595267555 17324523 605370206 951630522 986889770 932710387 42326150 274194506 315293910 26763320 460462946 297409739 8343228 83438152 286050931 404128418 407856442 635763637 866944378 828520447 636786510 693581576 900750422 943379704 461553453 829740395 803334901 257899958 706530157 899755682 410359087 294693390 346303031 251380973 763273191 472332668 857337786 620263721 847635648 129463272 445923875 821372019 358635099 568658078 127855750 816000176 793822831 833665899 13109382 922012001 393303658 507596431 756173961 405761692 721783283 620981736 647136257 945848879 607705015 929784957 487849076 607583727 448341647 630397553 201799458 119825014 978383423 989043722 416025826 290050272 648782377 852014903 565215025 648950782 113361740 273301206 491629935 189528860 781369933 760146982 200615363 612308481 860924015 934031392 230683547 822633476 667448548 529722562 581608926 434244088 176630390 680144310 847491192 933777285 139677985 648486496 695635771 88156600 704350332 274535579 630410535 143314384 979823596 462240052 94137882 119749663 204175838 527507454 395634392 526192269 471748215 432514667 524380097 344959937 754786601 470373738 988042717 225108733 878913670 710270781 438781816 137954978 229979957 561047770 643087783 473633530 640906105 67358221 368281247 562826589 781578402 935768566 722149027 876931822 591650927 728001126 785727909 957371918 354730985 326595907 512659050 837169235 966402783 413746959 426392679 17821584 855382685 195296835 748397660 372644976 364080488 386859856 253272606 302827681 805610017 359709918 655279051 643243443 959036578 200219964 494891471 500829674 44518179 390204025 180408314 859915616 925190235 956073319 634704670 46033433 949696890 324496787 361597246 21000432 617046793 494237297 461332621 873632969 933440674 808732702 520469802 724860606 320740795 178940166 404639553 316330701 965000697 576838861 744883715 790445679 845849536 446962838 434131226 133720348 279629324 361783029 362605577 83350540 48922415 638961497 496412556 647702137 132991456 135478797 402814865 848295976 327510271 996096381 95810644 285733662 860040447 632030746 882819712 105378754 563334440 692699223 103101965 145730102 216716802 748979977 145952363 750504659 894498979 302461077 145681000 816687456 238556128 434038905 374346215 584318170 80816095 618853484 293024094 194571344 845186459 666843245 139635542 912623965 658925051 366905619 982529677 414674453 956112387 343264147 956412162 768536912 758784026 231266002 344095104 707910392 716439058 794562574 812628645 206139766 279118917 220628603 57570688 244201628 48804622 748060355 806626366 913764952 68438857 504495781 924382680 384329517 415455613 900313204 128501389 671235914 277769241 819793938 669094723 830358879 789686073 858590448 321117651 682925581 79667448 180566450 584488303 282247287 946344888 852828765 449254937 276049228 125324006 484399728 152613384 590394920 242510721 321204969 427995781 231458377 743609605 495701636 919521838 25744821 329199185 302858689 799665997 165006912 946718707 542375749 361837719 991622556 198883087 60945193 358685564 522940855 994075835 520786168 114274563 892358572 528691608 942708504 896015649 776656512 500856065 610998952 139086433 587613961 200144758 326153240 367284761 174903791 687272175 493762790 916080958 605990048 956416948 347788904 992537627 346764309 203938670 930342390 434648409 898248032 777273187 839206156 402033326 482215450 908530947 773383322 672923182 173580870 408278041 218991919 796527243 767834091 915066307 308770909 664295505 721188920 718746333 632770565 638531045 690254057 170490001 654888636 799661005 388873472 296772369 960460995 502294229 855370953 56422849 383413645 231791993 830115594 67316411 247348051 847297419 904665718 906828946 690237717 376436742 218111603 154853117 241731965 335425968 867769147 300336230 670998262 843614729 454313313 826539476 874950467 961604134 749727929 601968728 65103025 861839147 687329478 986595661 674747902 856925702 143433214 313174134 458543840 710117132 180686771 495246191 939245819 370508972 165093973 300132075 61312456 240629142 781297420 678619817 781318724 574207469 916022917 983597213 784061203 665562366 908538197 876564933 50446814 853367675 412456822 611197552 80508729 893538680 845324111 68882768 934069721 152332201 782904073 468990247 678098119 811183378 223054096 342686586 48977487 588079722 769484421 959020658 82182143 635681506 249875511 757247956 673154962 211981586 192724407 427450988 633475648 623083432 166130453 335060460 580882682 691084644 969246922 290844511 72611089 356124797 59448285 707764146 53209681 686278955 985042066 451820231 755561825 777361433 581519292 607757505 7452539 288314567 269991871 604757600 794819152 606056634 802000807 774041857 854064238 896910905 996839690 797623555 700546917 546597290 684728445 195467699 126106189 249554454 502319661 138007292 784128969 272216879 38423669 291836808 555549258 899573193 808294254 101808103 630414362 10353355 847592680 368142505 599644693 379986299 945499087 792982534 642871700 324458984 46218071 721682715 112649822 62580978 613642379 17237387 362580120 446250474 603435433 814608419 675779547 755925549 532332426 647641222 594200861 947040726 488511066 869737730 593940892 304914885 139441141 638246306 857374502 759587013 94009782 892615572 149019588 334689456 445159112 436269755 67704882 746718076 209836054 757360529 914170839 395300068 470449714 948148005 783757760 612291257 654625312 168613461 996100019 523245176 413033835 25062900 728755845 78915150 380958286 839296263 39564894 645195276 86014126 189357593 104752699 335791478 454031930 219100418 575335975 160095403 838585780 980965296 653845191 216377071 85753619 462287938 849305833 697224084 364272595 649927801 250613675 327069361 928606427 455582689 849960055 840830693 635265242 588255918 545817853 746613122 466250443 777772960 157967585 333614306 55110034 49581065 703609221 292516371 332971817 178669154 778250390 905446360 421540216 852945342 867031053 938908125 346009474 823667523 223732886 69940564 999003742 218071309 869994218 911805552 290828316 928829782 300331944 504381970 545401086 571856631 278760491 206446351 669155373 760496221 897088073 693862977 29360527 264959996 173187103 193862080 378088699 56355417 932685106 5221698 442153903 289892684 413096138 533618649 328584235 432926806 630792523 995295343 698012457 974603376 548722132 146950085 469155578 191081046 110237370 649725234 212297775 305560199 459078304 492792120 184496721 324357429 496821141 988981777 9545509 101496070 445616272 252698555 445747984 280028014 81087919 144853000 464481308 518695740 839874175 519750321 875348010 338057221 406261468 214936983 468870562 938019869 736176250 911705530 327161767 493985047 820489018 101215889 837938917 777097931 862517610 80343823 734059671 255386698 234560987 386110061 545282074 350696771 86524853 177174862 55795129 300653861 374361738 757332694 473158772 699264048 859218689 381885612 308214933 463611756 151622828 464262440 607354482 611368121 697016917 765158379 561210347 935313906 125013099 7362486 183114479 998582904 130414936 792246320 662655319 738935392 45501539 912671759 931629643 157329677 747479915 245008240 36497581 122153930 10610158 44760076 227150701 668373517 916118177 101797808 859995250 734505201 929945985 314211849 549920656 264797395 916460830 981520467 798775055 442793240 970404575 493649814 440891151 572218329 923316338 258066367 966874199 752913863 528185943 124495634 876315337 568057318 364689391 902868310 701251743 579607485 886596834 300490372 339378014 872182786 111992243 863798289 816541206 25529512 522467876 784163218 66771396 376952950 519496778 410267989 829816166 365599611 376403891 831529158 335233591 168787574 910167778 652254100 27633302 647694672 950820574 898655461 773194517 788655044 367851438 653235421 811217989 828422515 987756947 836322875 220309628 419680161 101583825 38395676 201343803 117199632 157639208 639307923 309063638 326731933 101743179 385186554 516790453 260731152 894582413 767916526 718151514 536754575 383800543 881607559 304744964 4425256 380998488 880943226 380244716 219796076 856293182 923412921 758348697 121223871 275646781 337456233 838503535 63762639 837070319 345587853 550419026 89081762 285720463 419537654 47396545 45609688 119138836 166769215 699915653 937281607 220013431 766570031 562592734 248177365 635525103 708573925 635698160 461960086 490364332 192014580 548667774 650809912 593073275 459776674 628453191 530862908 142194807 985392941 855092769 788782336 734650681 633834953 770181817 330418214 231297759 611449416 836512207 487411302 422528917 184905728 29966561 296098950 427718911 666282307 116267015 806405120 193575675 197982682 653792822 198491369 915068044 400577875 111854239 245848074 628417850 764968910 692909535 602837495 483117230 90011941 650734643 638911594 748808791 983881530 335540405 900608867 548553413 605922221 777965490 327064834 248011083 702212761 973951054 479620357 592988629 5687927 847552664 311594662 891380908 655609906 918746700 30277878 421052186 551004593 250687403 565795200 232668454 706997866 158641322 541841216 111975376 97065043 428453008 423253990 969452499 718383631 668916500 718371761 638425484 609076749 228991934 555062099 618660468 720572442 500680596 64330165 736127033 765943519 12093925 172318372 478412040 47914412 494846988 922378968 956313761 798091546 703873199 315876179 559185033 704969419 40780938 935748008 877685795 185151527 236484098 362875542 762920581 298303545 738609304 653673586 434062914 161414338 582375671 562579325 673471282 550432717 468073475 726853179 879218262 618848987 212117194 238606388 37130751 442967832 810965933 642873016 84469687 402737030 408722265 302041129 738506994 434671311 57161714 28941228 910934172 881314763 558795899 493793317 72788763 748105051 465627516 626727689 484060337 336474094 643490116 871641762 296407176 9897628 891447131 380105379 503585604 756420197 202159171 88392878 698040596 695616245 177195037 476196959 907210032 695947450 432324797 710574988 705758721 644102798 85189192 474596291 867879401 749803127 523892919 375917375 650421087 454903403 288752598 52397099 953222705 114587157 507526135 719223103 462387357 92938175 493055640 664078186 84212605 730321183 645217753 864829424 475285666 939513283 656209117 557114161 297215535 307183876 475799000 425301810 565199972 774762504 327208279 742543542 574323429 118410091 481622240 747461363 688004856 937253827 371404636 537774806 526107413 89657952 33295368 592876198 681314058 413248952 277919847 726527374 876599642 900807796 722799961 544045242 71502562 340673746 892257366 386951627 665645644 537219965 956187188 334789218 910235860 283999511 908541304 121186139 378172712 875855048 162190622 791307657 895688291 408395183 858645370 351216768 262310630 28899146 45385793 813294957 188729819 369111648 96411976 187953657 59534884 648845791 733919947 572064356 517122090 216382136 49931108 636353049 845137638 598233914 479743003 776923817 865765156 150803852 286032507 271459463 582049427 957664211 299533165 247691834 111222921 922773003 723092976 991248980 447666131 216489146 969001132 314354450 161976059 672440391 881306625 265747515 359155336 647286426 720437091 976282327 144496424 47086166 11534476 228647465 888451597 634577298 392100127 239944619 788043222 442161426 456727506 168750543 472644002 100982781 305900018 441519965 346052235 41276117 531763736 665744468 854640591 458434998 361505237 57867673 908048840 51828390 77549611 205431975 488469695 330352620 354660915 227000672 753264355 112384754 584690560 683542367 527457490 535931436 283634474 113725496 25203463 646434049 838887949 716373786 197018879 2140801 716344469 669169103 2899038 738455208 448940360 730430782 581516374 475222128 13123299 665433103 532606900 966832067 699446789 993425395 335460733 265481432 171510906 448885156 777264102 856276203 26053572 298041871 734981566 441248082 130958900 254780513 879799286 819553663 245927026 545179086 145488926 444967457 441661672 269191659 921276752 821716432 589043172 330194015 297979748 537777888 395173605 134191082 356389622 38677172 707077725 162568015 8013902 940813227 509240877 267675069 351148618 145617107 803752069 725975613 977958694 868688228 233024110 53907290 965964409 628703853 530721702 917232219 970507579 406445319 447514473 886274072 792518963 704772500 206753760 349718623 185463047 633695767 624069620 504682235 387680059 421042916 672906025 519509547 534317634 745683815 48412766 681123810 752664475 588018295 592058992 69745315 740332334 43397401 955267719 345019251 345365248 465552242 568529650 463468020 429404860 321498397 795246877 651799815 337688753 326252148 474765469 537177960 270000407 302901476 22878121 706718253 328607639 62801389 652991970 88999876 825002293 251823550 711372520 491049636 112885289 255126232 230433436 361542379 185263796 224215085 910189551 933338415 60249688 229518903 455692204 482713923 540588179 199840381 55353097 543385486 665117863 948804172 964560746 277493703 697663120 403688945 111707371 593057162 274808262 115644006 836607929 295615084 628728874 933164647 864412275 875590393 367985868 952066950 875500984 59464676 238524472 108481642 270953856 330882244 946714042 978328221 820427822 65180306 316990629 70755195 525487397 307753558 876776904 454023061 405270620 320637025 992737959 365265877 862916030 984848222 750516788 135837570 273455544 403996704 273360276 885288150 994819813 10131695 250519409 163059045 321299301 847562722 43155742 892534363 45021727 436285429 171673298 676012035 599715966 451370981 914265041 464610436 14710181 810426763 159690658 647244756 527078246 146148659 135767268 402495617 386150944 914977503 44293811 396972516 577127218 907164119 795258410 125711062 965082920 998134626 255861939 555834308 396229880 107838358 935448856 278085807 336268834 342721038 557932407 942197800 799625946 826234168 744682328 338835057 936852918 14236257 564507406 334051893 129272568 97385099 268986196 29323449 820149890 624736063 473094756 19466769 665409831 747618573 201155195 757969149 506894381 103380436 801887333 249132063 892622908 399175201 133802235 949843765 246020012 179429588 758258923 909399396 241304659 415091222 351767047 105556572 864308507 463231136 337047252 559799322 644552293 741663674 521594545 391407951 751660568 150058338 658084160 347535984 905161324 529305419 374202219 898779529 588377494 247068218 120189263 482256607 401857032 690216876 355776517 526957981 211405833 266886949 82513489 490168105 174583166 26656709 619185660 975657819 2756063 906334541 105755679 300400832 349652804 892735425 120918811 979955928 209948354 71785504 190156746 369113093 233903818 611987237 507190883 289807262 579350198 670705040 747925762 678162785 68037169 160330323 316100753 431528652 197971018 221592450 815655947 618331597 205439544 211287531 628258095 335574004 482453758 465099087 806205118 462216541 100251464 385817437 139318261 886348690 394386894 781433497 502763880 153539822 702258382 682230025 853130877 384056051 292908020 891408068 686725634 716470816 376905959 109981701 588969284 68983581 471518485 39322701 30464639 3274326 713726451 892801658 556582527 870894777 647168779 801130785 427193430 735240139 226836616 522443853 29444847 601934243 406367020 877223735 356457176 410022434 629278708 585785 981952687 930584299 598387139 832249870 890472559 695759186 850030966 935154540 433937793 931153507 202983565 955790512 441483503 857291148 823035892 358389210 263781964 800728365 942958051 673435198 25380948 279592191 914933774 683399787 434493167 710093030 328303775 300920203 597360668 13820289 501375991 283862924 244181165 370256774 541846594 80470971 159322436 919739082 88774344 700258097 484852997 825584491 454603650 834975849 442698851 607557630 835850724 580654903 325877314 923317965 690447340 571208549 313424597 632072462 835931587 840000616 335254680 806412491 983366626 529865414 920721931 885291142 60164536 579831677 513744172 137096034 727196726 836895349 5250705 272853819 33711402 389819230 555173163 827626561 87485892 755951934 269828414 566789878 433652859 131697051 327770409 965576127 995277192 257582283 172928329 994465671 141920252 485443279 163189103 609830236 418261251 528204057 236139014 285517857 238645910 697253409 833652456 937120805 217470361 880505786 546086331 123588724 941480376 337218696 521945405 303682458 267247624 353573946 720954020 459587968 41909504 985617292 663918395 272589899 316671453 415473365 280774596 223970616 148076305 437222904 44740017 697876400 699422042 681729408 393978057 896946967 528015852 550578277 517963788 174694823 255498782 288455486 221033998 339251943 499565324 195321101 876728893 731303555 418961605 649890830 426915161 511837942 339299299 347049766 180617279 718567944 478000752 484861129 486957847 128444356 85222335 59397975 726028288 223958288 289498879 44631594 381332559 975154508 236120871 741266618 724424578 584067261 419538781 953282356 24979445 269547953 509692271 5216404 426308747 860714470 237081609 196806161 719557546 140405371 842436376 323307494 267181242 642383427 630221026 346790198 798906028 280470537 561521206 779287971 811072461 913874281 616369811 818888585 269829483 556156339 916502233 285418290 773937599 636514915 741457424 960680883 195171812 534267514 379432536 795019112 461875859 549922393 698901012 208908508 130419227 392166131 254993612 138108924 882621792 139195342 764847556 414811808 349530132 681321110 205073637 493227335 887553164 586617030 355492251 200476168 932330034 347594706 393868943 938397201 639760614 928903999 600737578 984989207 900395926 76251916 476602895 573107468 958529738 846177889 214737593 538447525 384585345 803729193 780151153 139131055 944383931 582136830 951811277 352504354 775343745 335001352 969781996 802175391 457259560 121309367 328266888 204354414 25249926 506214624 454153135 446072687 269563439 793996743 13401110 447978960 486817678 159644169 149018039 362560347 554007941 989133877 608005605 109917279 105739544 890498907 529290971 438075884 379695127 539486407 959857804 321349374 11601145 599347461 269080907 392540788 815635098 369204729 926901471 169574618 718710203 239146011 825012853 367867413 220439562 292299290 436697424 571276456 170657604 232319033 442952696 270820564 537267716 113471040 636955603 320192525 20738641 334209469 66414124 127465170 605752479 578789943 548015647 134726042 586769221 869806882 428345337 420800689 543884608 17050931 249815619 687042889 531781443 976589653 636552202 981321641 456572286 817375237 203245910 255261111 122201270 374006368 965521034 558618833 826175651 369527493 214396923 473000362 638052971 228596561 197935481 496489069 334850697 101795163 822086197 987471397 319039783 444526054 837367499 221069005 198271170 332768960 204993507 185467342 152806151 828471830 55310156 145196946 253377422 982233390 394168611 828207143 323869414 978937219 714695691 104459497 736497897 148100008 191138508 947707336 816959130 314410652 630138436 493566583 479962367 237611370 448846061 150245922 906621055 562224334 284116740 851709391 648558560 15039590 809724585 977638671 160532949 467733456 446446733 616520650 56253463 266977832 627840864 163877023 300651413 653024647 576372074 39515545 42081448 944806958 743335315 489174305 268519627 163746522 251851978 142898882 344847646 811758852 319305778 972266843 873335998 739644363 676788952 180146450 631586389 876005647 926724907 656890113 609545763 209552864 250578757 116060034 981052227 811970818 582029991 633761234 170001903 795778474 834035905 177804321 758414415 63381781 960275118 759130508 590544429 490759893 756180639 587023254 403092839 835154645 667832153 270346985 889767819 816167980 88108536 888769259 769680024 135276724 417405856 251153246 821834988 875965938 544734094 322470439 972317508 510288929 472092013 207781796 165136110 995469882 982383647 669534403 274296203 436244784 736052430 306513514 203893866 745609077 193440742 575625710 485958475 675488013 599497727 790485579 973961886 841097511 27069030 18819352 154155175 24564706 431615346 959821876 57252422 149363934 150590560 488260689 481975524 101213910 170198899 564435096 444767642 398403867 118321935 682188906 654606268 972001072 960194896 592582599 726265191 822681740 629267954 370478289 308889476 524464529 996817698 918667311 788988573 978940815 583994081 785867792 731195589 412795898 690979117 87528944 418716835 797224251 935945828 273535809 321540428 364018281 784320046 323871532 327979759 989623619 623843856 354336182 408152959 728304945 743579197 594787052 92725473 518307512 113256328 902737476 901269303 854724704 942463165 589001135 984897736 611123663 965131353 550294215 762072156 148626377 953845718 374568625 782755108 365438481 151762968 205408385 637658412 160892724 312064456 495240291 951256218 461052615 456771136 499297559 344498032 764711694 371605191 254664716 90007186 755118902 649932487 205740534 76291170 388692543 17012060 688947276 637393861 157059441 226144007 593052038 387392424 832543923 930287488 72162371 975525117 131035444 172957098 406073520 793936418 173595146 779317476 20819019 770387199 540284291 930265981 883127386 230685591 376637347 411409520 939424091 889439033 992191978 435878439 815192143 962785438 911118522 87964516 639013783 135423430 94820907 411970389 46202096 497327018 345910549 518559418 184092671 947502301 69983118 314235486 506966429 268664963 186889761 103384224 340119856 21479453 971875091 784266599 956501384 417473449 100054032 652036218 675387113 33371306 776891646 513190 378679663 618669824 827738787 895449328 297740495 803665578 331081954 615979887 736298694 391790677 772373783 539789475 630350441 214545182 50782269 690539682 302398120 488675128 241444876 115309701 217484562 498355171 145066515 643435865 124433313 264100985 97226648 291883810 594925712 806629249 384171757 592992797 387890808 161397527 344282435 717863371 41355044 970225727 560723721 214473777 66072975 140482411 688483986 70288659 882248800 889788276 311708532 830624108 404496849 19111141 856191821 849985918 380212356 94042321 133316683 462980207 450109813 939789784 221725903 102760799 57047305 269026033 507013795 317443189 561962779 966442324 48595545 217264532 324550829 933216886 128600144 806136895 675453290 186694207 767696376 239610906 42727250 745119507 627743886 566347903 169518084 540559120 404115003 358912634 549399349 850711062 264785676 215345246 896863327 683275426 203483114 307756564 321932323 227217148 456758494 642759841 459757708 181717124 571487379 156273498 412069639 732551548 891142295 590531641 982419247 565622898 728111653 141421486 696331577 119742418 710406448 703009536 77865383 461623920 969007635 659203787 492752725 822087340 209473833 67219439 685443742 592152743 265230766 778396390 809673476 254997197 568427716 46976278 430768748 947765015 837118162 665881914 241413950 171372724 25162275 147119841 924099480 883198404 793929538 114085760 504806500 958392012 893700915 506301497 216221612 746024057 325707472 291586388 10057210 8112499 105147147 600500616 813191185 859171264 435558137 993752845 223145038 936381410 606877824 442499511 605998138 943058935 911083173 911068168 76098292 794471278 743768098 791182814 720439887 692932747 216596541 692508486 703411685 305524919 622772533 73856643 164120037 336132905 522736364 177464769 78845292 284402925 973660960 534239925 77670518 509709736 283049004 920426165 482068798 943228749 489048195 278765366 497495689 369376612 744055496 763856254 612753136 833726569 686307763 637828970 663395726 608581443 211912990 184991911 610926703 96691498 805460902 7567408 539309012 611285062 23343825 898005193 905279490 50832014 702620088 815019806 96958672 842749623 81584840 398256069 37077945 432379939 830888101 463959505 469116679 679750040 159570134 166663992 475303773 970618284 85559049 610426266 800860974 108555571 678943261 305390215 472023974 477723680 804424550 869403635 609860907 517737994 632239477 605639971 932008858 145671636 190665324 569710935 66920680 896918702 595068867 419274220 93032546 36936146 957289058 685735214 199756748 539045934 791450641 270630837 593209863 922293486 90369831 86507227 446765096 389237604 666548892 206710526 461144560 470587651 617536714 348041950 517261026 152636317 153343609 631956358 35682419 49211572 597384080 235623174 7356413 220619104 447362285 234673366 791621746 211128827 627755072 931450512 562798857 130858142 435168259 965889231 103219249 832900663 62705449 983735875 694620465 387060565 249819824 158184838 380987175 644527570 675937374 15118173 312411313 289551082 389236218 739360420 864186633 10968962 236691486 217625649 579224276 351621334 233291165 289932583 252311582 665243679 331898310 740070228 85291375 12001630 57454162 503106675 513476373 558363332 586165304 326742398 257405698 439835470 687091392 803427718 974149519 784432461 85758727 931784607 423131311 258469690 526724395 859352644 854260045 335840396 934585147 282157828 97387853 782965396 154290747 504053483 377960988 436710167 759508545 562569322 862993676 632935528 374618337 551058270 64657940 975145982 60145573 895317088 299105109 866048735 511890857 686916139 15399295 390135135 47034392 161347348 681129511 575949783 531922811 909369613 373292130 167695414 281062606 691846496 710245924 879282153 910558820 296287643 328564967 47114409 425156007 27280353 688284068 304703472 928570699 833862207 724075683 906314825 818948641 370156626 247865801 448579579 96265562 501336303 178531777 959465419 625142753 61337573 184025465 882343389 452530873 833770013 705661631 220672300 361732329 114181067 820544049 210811864 351742466 92211508 143127729 993059368 908861068 511445449 188080093 219961452 263173818 833500918 365239167 532414653 233386454 43979830 475074988 588392901 228985986 141411891 260383892 220561712 502663384 448294631 111863061 569512792 612285762 756646609 525668166 273080770 348494581 21740549 232061025 428619734 932220073 345786557 42575384 210580351 290712464 122122224 589652867 240858004 984257112 450906682 530448332 132024087 905268318 97627430 850795553 989665432 375796647 735471988 406852835 986432439 387794068 582073660 23101093 648736982 447095428 950150914 555886502 290782341 724601335 285630035 466738139 269557295 813311609 151024020 902022510 183298547 785488295 661674981 973996878 984517922 761642885 815984128 545076112 684690949 636959247 970114294 309163171 32631108 657229757 388000437 515947013 587055737 481051841 359943889 143548031 589246677 418264628 590521532 224329945 373521974 953394253 41974387 283203804 776634447 749301989 80469355 428702948 890973868 531502991 755824851 917700082 574045336 541991063 809754781 508017102 260771679 1329446 772948639 174674457 529395833 86276140 577723545 41940848 360277979 605989436 774418564 735799362 230670056 693917588 337168033 986298440 112214867 662235858 257481740 999291941 658741550 199654519 884324213 858627637 742914444 949387237 357859141 927013734 573804734 297295379 381826849 906277275 900929196 562332977 92541545 772222151 122920556 328930194 8290184 77009112 965686682 385384034 734209888 116466821 461073873 718407226 321712060 424689649 120249064 787272757 11348229 357269121 314091008 373938706 315522108 322204967 218031219 520211078 807468887 388800062 45457143 336968800 30002708 968203345 943917542 537517372 231815796 764289931 854793161 685237334 691081007 610637030 920627856 750768167 781205228 730342297 130002748 669818704 167107282 877288184 704977762 106342314 171692636 819289970 835972433 88891383 23066360 191890310 742695796 190983312 73366647 322244055 712163464 814351370 103554911 260334758 541550093 852226511 525047127 759799767 195707154 745340475 652125449 28537583 869189988 337517635 397810049 986857021 331350260 470456031 194527894 189890575 350186434 881396169 308243787 240707664 149129035 507295638 830812524 725013629 645238115 957323002 385645868 798698978 497327086 656472225 434953068 449716372 697181118 865380232 569230250 538248003 970186224 798212807 416667546 829578179 747196988 401728398 932943110 109916662 67477008 217316934 947588262 693218150 637482823 988447423 371524246 516150694 862713418 529018524 858547241 884260005 949858986 455060723 552245726 639416804 204568761 733697635 185965595 419466878 878398011 610191570 55879331 648674900 479521807 390197281 833832929 578029959 859854597 347679570 923150264 600632886 540233133 905175195 121332694 320701833 919680444 388791056 352287401 666994543 302171235 192240528 620410061 365878046 927053781 751469804 869046122 744503775 422770853 139156420 531175848 356644348 866315633 742216871 491515104 886576614 216690426 13372045 851281959 583748017 161483203 19321348 82774743 831016767 155937421 446104482 715135846 447330928 480254331 631536394 708721532 57241726 637807069 702094594 341057109 313542783 405620755 80617343 652640377 693707026 998663165 452738465 617451719 552078992 94096696 965080294 862036501 804945517 653599459 52234776 9642350 538588349 559165816 145188515 834231122 678472635 11066972 244304415 924346046 927002773 833566176 677043617 634366651 33396530 185922191 382440308 17966461 496713601 165735672 958230245 390759102 603031215 110625982 458416829 358158095 830581762 583362453 606102172 388181527 835822975 745057859 18030650 825825531 108752843 189740305 398250945 343965802 786112871 270593433 286281814 484989984 359501721 696225300 819330985 122835507 342527539 641563208 237197283 338290950 790374878 795571345 615911402 374109027 673562359 383428948 183215179 693179543 899235074 853973963 123777158 241757701 818482595 703430457 852044832 304101081 274743410 973586644 522751708 14450913 228121022 929795263 866187867 80524208 90185432 86540853 638840746 390211164 728392568 339663459 710250309 873146256 85122181 782598885 825852258 859310633 969338736 244332261 837561579 798277835 466291602 879950895 106703421 128504569 776559201 354176796 957709948 155257532 55779819 829782717 813420185 167289371 867659771 288473202 472329470 306159266 183639278 695003624 800595890 157066562 605190929 311456021 276178010 359366151 611792240 535813339 94887123 485342935 635007204 569311082 358917921 869580290 780998210 899052509 72740646 759276620 287433381 452890050 911027044 321281966 839740386 211897325 535739419 671760207 705682893 18912539 988998902 806655830 717039227 122778209 792887912 964870032 747348707 555032962 153407101 95140355 398931485 627679718 923613720 245651155 920849738 123146438 582413034 286718454 592777916 83410207 854956582 328569936 975567404 251115222 534538794 801483511 727285827 967713508 660207914 406882986 503551278 345172362 36091354 293740905 435770596 178713763 402354505 351733055 320963232 859947258 758218593 714118104 393577107 356887102 505066818 957219417 997823831 401614822 68667819 333829967 401018201 385934535 797726210 22791999 206801747 663559541 968115618 506988412 526610860 735390029 579155109 830590401 671681798 901100800 345381957 716602084 764554558 635633173 205986131 228685495 515484224 887283393 472767307 898571325 912732408 615658612 582830216 705035828 406927278 93583066 558087600 294682988 53562935 41643369 678105962 788600143 278573788 648074217 482521711 640406496 29788561 933370856 736540640 56768315 84831251 105950138 138583557 853845055 697877798 94749101 32287826 704408541 854205250 958465490 761189598 977924063 371907188 428042619 787690247 216490713 110511972 782506081 719407427 409190237 943241916 584886935 545305663 48251959 253608400 227350002 106429835 244116183 147910644 34963536 835633656 64048141 646009959 797577579 584378030 27341470 365888774 909066412 512712077 305751198 413142657 857711525 831557327 395723629 384381191 134500673 303830809 754635778 461602541 149760439 59178387 170699762 310823061 412890728 316906938 856158090 268647468 826429785 696098725 273213431 444223088 592051442 804662809 668948909 385606768 620042524 383695168 572888092 613377920 287989070 754818726 667402745 643578763 76693061 583007563 588079474 589977917 288555356 106400454 840458640 665285785 128384148 208919239 524304621 391873418 743189861 614302301 166023329 138622189 527201863 200548343 372302439 250795789 156647374 610978848 36221834 751990996 637349011 271979489 669335493 556344837 973907844 472389112 444030082 702756102 255518427 585712882 524667972 737520096 372862972 819964432 215761567 314935116 709379929 143720664 979682029 588890686 798095035 446204725 585704614 851476198 396060057 638090463 974984350 760670367 644403789 300340499 898088251 551939862 475468095 415050004 282339530 678954216 206055902 583681305 912135801 628158665 515610715 523660715 908766066 857852425 529362850 748824396 311141028 339682781 642907798 290101223 851103141 101883102 536346900 299006942 625295651 183032976 349671930 637641102 383876386 355603662 531644009 96594198 902589610 159661302 667842667 720088023 354299768 205772621 623345158 382828352 546951957 684891411 255402478 362082743 979154640 762711894 220109866 588100776 167738795 246829205 556005028 256058219 205347387 529063557 748315832 120573062 492873963 934565281 617266640 747898399 217617913 820817898 923166609 50225353 924751334 368028382 435208782 985039981 463572823 76355428 72810754 447085078 143918430 332551082 204261324 349680882 879124301 405670604 645731982 766246836 358309573 883487855 120860210 365817237 280804388 876612484 665455170 134991649 870296183 525279679 565071469 401020488 605843383 473298648 161875238 759710005 47538227 885013113 910474870 430293630 499654825 710123267 706323234 502958337 214739003 276457591 272424774 281905435 981141373 750475271 558362371 172116540 386010704 175576798 463197912 856672947 237183408 539038972 490615896 507946258 392136752 695136813 321654057 216090168 240264644 529446456 173028013 636174732 706174552 440958640 452211205 761953973 153280479 710258936 515248709 662416600 358128614 724627808 606956586 436433277 799076582 876286859 419178351 169482154 91508086 336248181 594987584 641515984 533295975 627070464 970333399 300744396 86265529 640544830 710294673 765351798 135232177 908796368 206727192 968506517 963837974 457983228 193829323 782221517 733360656 358202286 654534083 449076214 160220450 209299024 713508650 335178333 909168516 388055322 408310870 407098656 142986075 12699592 890484097 498322335 245829754 112842450 577533207 217664133 136184039 107117823 926815876 947824575 344071791 507123975 270273948 362297060 751116156 488669896 56967660 590364098 81432401 118060188 502135115 534711001 397244777 718444647 857997754 419031200 698156908 350279638 389617401 27999410 677620514 636169339 267248841 323692869 244700000 78764911 651511307 727877263 262641622 135582892 689115669 363698330 958526559 489441920 836930056 414529852 710724235 790558981 449550300 152699129 432558021 552804241 634029798 893536502 595590377 777383700 417709482 246026752 76205669 496563689 645583385 693349386 152470377 325070094 190466268 950700414 206795204 979221735 268354005 24777390 208112951 505250639 295839833 270957734 616510916 241993839 944378380 11910775 939980663 770386458 539578648 275801992 914057823 885305456 672526551 716378309 877738211 665364267 998602504 597826298 804080296 338123415 332414758 139980814 907076948 834499156 62705351 280543921 805088550 10667705 283648246 505650847 989225831 464097998 417578200 956637977 251871390 837041864 901909082 347643143 885599238 676467587 978285930 541152499 472687835 504135921 48063344 266954548 349611747 609207898 214744902 278772900 948540416 380973943 682533361 992632416 352135964 862233184 759465711 621367749 328663069 426243675 34872535 264087875 682572164 886335166 172081430 450679797 972456687 823402448 166817004 67899760 274857063 597509620 192298106 193581487 508335226 10386250 244020721 710728046 535816137 429510863 949599394 164279091 792543536 204955370 769982715 911246405 167345982 208453907 304127619 389426320 110134628 438841094 138048597 381663293 70225587 401482864 278475487 163218196 5488851 787043713 21221946 130739727 745306518 814583670 485852574 322780459 148225047 32134751 540308652 559242261 697241528 15223613 590988049 724499090 803935241 980572646 954665632 584407401 222238852 896633887 742071994 614930598 711858669 723500183 590318205 689790136 52045197 346343451 79261921 903469747 295104309 848815064 641609974 283408997 595171754 928518791 113158015 924011653 72525010 469590068 729165440 976185586 934616990 107309811 236398101 699944735 854274367 212773169 755242985 56484897 845429128 796873575 883373700 702996455 306031783 764445324 152942451 291157931 452515068 154433232 690149359 746752503 97740353 152912273 310783560 261822758 547767737 395560211 85365883 67115743 990269444 254965759 638118820 300322663 595222649 710869385 539485963 407642107 713330013 270486203 450504849 247497522 258341589 568452121 91806172 748685953 954042591 404649566 759121874 493469292 596756794 165199168 248317021 112278094 208038008 981481049 333547276 352255089 945298040 724592950 322161283 726483102 762308070 101678073 13242736 889587868 36468368 687129184 156324436 597357852 318419020 17065347 952206496 674406091 53756912 558117263 453182434 276207253 83453407 844007045 433068679 571402080 59858839 300565502 800937325 908008295 114304050 504531018 296857100 804302536 124741929 423064122 364711597 484187192 80020848 553798026 18192959 269720207 794671494 787172834 907554123 520599808 162263235 8526097 51493503 326700091 334507929 364277221 492332371 762858927 32783442 478947166 521123609 798837618 497624729 507549887 420677080 565971859 339169446 338685748 385867589 480181733 692404783 815926387 210400359 456383792 816905515 352601771 995534169 585168786 537518449 26024015 528432518 555510612 314968540 157597395 748129871 435464096 240044067 489219481 403482044 848093310 842578807 388298478 679785389 53359935 908399170 589657956 981813896 719305895 574095367 725891000 446722961 428169318 352003848 968953595 761520589 778379757 482427767 227726089 767001900 26098554 516333977 304530717 608181097 891895613 564304404 370499424 167226497 661268001 919225529 631427448 759266817 580192019 35654492 665560500 771381084 523264912 115687689 171937041 840099349 416903833 861804799 164943309 910706224 533595272 547357582 354161331 350173814 745445331 630567520 933187030 587231115 585347567 805586390 863862813 472177115 184198343 590854931 998563497 827385997 886446671 439678486 426283862 141867211 527110405 938803112 936028559 710085084 414803517 593161950 419357247 632954982 734387537 103024307 538177349 572391382 539540217 729183099 439868449 442720549 978332697 602287469 830533351 800981271 175056390 344147530 790594438 709279282 416613282 326884899 686888785 878083570 771046421 606252507 567098728 307822881 660131835 375375932 875765326 733697079 107015635 992263480 778656066 978299096 346219596 28905182 607478530 598396437 242362394 834949408 208335433 555975121 13708797 371835575 574081090 718207043 36812872 246405435 329620750 446283946 693811722 838935338 587148486 321210246 638641588 420610186 811766600 570126841 189601883 649865172 498134885 788931433 999698901 508550543 663334102 988924687 642655323 47629677 118666202 598075208 873414076 981905807 979470036 419013785 579615425 432578331 696916183 869545441 883888636 772855955 543007540 48370115 864107278 506089762 695707254 920589581 601139100 9700680 878194940 54199882 514096190 233956975 520972528 384022264 976239225 488089834 522860666 283201018 458433366 603164939 671737218 424771147 634498433 894112128 480153892 619449693 778455566 227423017 662373936 471161509 51767114 802200440 152088435 399178886 429022965 993810230 791771609 842855034 78293767 822289504 653998310 606475137 500579041 957465568 10693890 912658547 894476133 970505679 805885783 18408620 761022365 371657804 592403733 772677756 112103696 844597022 995671302 479834956 81673124 740721855 626088602 524651780 881075757 726848635 952142886 304509703 38755427 175838366 686943902 126950845 937143746 257842406 285230697 476165375 820283250 843120770 32969214 680084392 870178823 798570596 867497455 467347647 473008712 110840721 591747529 294796221 324959200 630866773 796062790 731186034 991659564 251716006 546547941 527568391 500946691 860315819 391879685 249967073 21198307 915945137 687345311 343469612 270702539 861955210 677282207 713190396 177781783 821272314 391953344 909717480 732898271 80962037 874346746 930268833 690230688 272044513 434600712 145590783 677168483 462689921 138781612 95246945 92390612 516862188 379985965 221299989 537085494 190560929 737048380 836786317 389369606 656201209 484825219 604007713 590474592 371059146 467162492 990459658 333918890 381977650 230394046 929065380 272090296 714538838 682619244 660479236 711563610 362522638 501800735 402041151 737624297 656037528 792547388 702224357 115505977 186379837 484082773 517275394 683456237 982327311 153989333 504743835 356348615 841339343 165665904 873288347 378631301 596348093 976091942 234566162 662628729 37930095 597824080 894952838 539330948 219702738 706485274 979057901 178303434 18443453 239947041 331093748 397496952 367409622 533319307 276892133 686654567 811971111 75866902 711952954 671214289 117267001 582886762 365702523 829822361 188365277 523666360 35227044 299705118 718907206 503170804 747639223 159722872 697545199 659987047 664270161 625456499 977671958 728279177 467263969 958715971 825775671 583890283 382572155 266811240 535949346 59632586 501752447 637951661 36070488 296484872 812105103 846350474 74524737 655638476 925022995 857545720 313307350 603398740 424727818 158213282 360768493 952998466 720533822 505830615 501823313 301709667 898605451 86278139 501860015 93257971 754703492 204878189 984453590 660871368 269148926 782416934 454204288 589800224 818555333 731166690 19876069 414501535 691777590 31112861 858681006 824053706 689529718 953420072 103278386 555078689 400209277 760948190 165174536 723076763 23555741 41015625 648427308 107652382 352830050 971243482 115310856 37362927 444782669 705489368 66146307 83450680 102494257 44941165 995155401 213734844 689813858 723943276 708050732 109596634 306357560 153634119 709203371 597045651 426874670 982105154 537089960 458692552 953751130 120937008 578717152 863487333 23063027 638972549 915839580 851678556 711621600 49955485 94484536 174326920 869280698 783484003 809659649 506326244 302795968 683431549 629966146 291481786 388667258 808471156 949340543 912905878 410771398 801964595 330621034 830273373 374629879 894104860 170988919 778209819 160086730 412374774 727105298 430996301 567158053 374506109 55394610 174576437 205289923 823476712 799495142 79185951 989801527 129433400 929856951 496207750 280542176 598752557 223181695 470394087 269979269 424923313 495525644 322937327 144360691 74606059 661441066 140324897 374424437 898045716 115049159 339683 715899024 137160 723622796 655718732 649579940 685768630 774783781 663744959 762334513 698939235 937131586 251184886 224950584 385357782 64843148 703155083 529276337 161121504 553838991 939982063 514850536 501084756 694582910 966472646 143152218 992937253 285573413 818586319 545909598 290624952 25117259 14359618 266580300 352661996 527867458 777911196 903445477 483248579 110091552 704299898 18690058 586028627 651686160 697772529 381512709 378268394 80137044 118632005 49478748 449294466 120292838 53289198 783749848 927036819 771143382 573956740 730662360 255142066 673569810 929696924 989743848 520812717 670969596 403806692 490498334 611637441 545353358 384098023 32062430 792836651 659811731 81805619 723698866 128488550 697649476 32575494 613062121 732818356 275707998 470273228 811288369 27412261 989174679 412150051 4177572 506908337 23889763 825827365 897382222 764493682 301214132 471403209 740755568 539595135 47003536 444395981 203872259 944312224 317326550 940700091 862383958 621964559 380105685 869244772 901880473 457845502 387132890 656614083 74250811 470102226 938583816 632383413 632665923 90361329 664820277 55958560 499729550 221733817 539726143 446256764 285279929 906357887 697048277 521577619 889325522 237096042 209712470 53754993 232528918 655574532 839014392 984863680 817663418 610297166 317831326 679557629 991028077 778638416 137561235 292680660 349805822 699085313 119752510 532232850 901408913 607059333 193135461 86925162 815104005 743957861 922457247 206419046 154466729 412766563 287115402 840926385 600006084 985116471 215430120 634854151 404227611 441210271 728806143 46955939 191697804 705633909 21052060 295436164 301723712 868623982 557100105 53842332 258833452 255371470 217553666 481792087 761445288 584680879 187028783 289293453 394833005 608289189 251157638 379888593 645357074 825956636 738345863 495524838 191634802 389248835 650725973 84026547 791818602 927515428 119449158 466838394 429423178 724926028 730742517 508301502 781524995 74650898 197958657 473597070 337015644 23076834 291745151 922713586 908803068 827743224 242908928 2218589 644020697 486431290 114397685 950961759 840868012 23046010 766986589 703306653 623490488 640222182 299341796 209068884 661130430 190047338 988951704 779115873 642142081 583535841 664136683 898337825 272614002 271515361 67173705 373077228 303136752 736277568 849917746 757526895 774806548 867454595 62594746 754391445 437265635 600375569 440206676 793532567 351192983 660913369 620907122 801200397 967496675 689308520 447407729 97691038 662966575 96538203 567822005 348163539 902762805 804790501 472847789 912371386 765641569 763230400 889279301 675888743 657289260 726584885 375385549 865241738 695637131 12165943 477634771 593782327 867076300 325195773 463809991 507219730 772121927 415023712 234374583 746050325 541521853 662018291 910565211 482805835 421723633 604236381 549438372 111768095 161198378 419035061 394789676 365997454 248358129 337402829 441738233 919717196 693345622 276441013 955792384 939855937 931684366 322489414 648369850 810188293 90183245 699002207 915616527 90420516 476802405 144939657 875652743 741306429 655383211 479588831 762428852 697440386 327301718 254299380 701102541 984027138 70307596 683501396 77768936 159489200 724382897 567447729 652990864 778397852 528963942 834884137 834395594 555410291 70746092 759587192 930311422 472306872 82850209 921223945 301842095 790282771 741102222 182894045 876253988 356006418 350814079 661471276 441596279 431166214 126843823 536011420 490918511 599325740 98599261 313528527 588550753 445742017 373860420 838820950 502853990 774563405 494867009 507498777 34713739 69004094 932351355 686305930 89810153 47143503 597768239 351129995 496459362 191011428 749589081 574591875 884838788 214593833 646219688 119803652 287490161 635725688 464037979 320510011 373465283 443708925 686867780 226782728 703969750 26552451 11289306 411522358 186239189 175208838 127717330 827480428 852404567 602484191 680870017 7023900 487214990 302899693 199510674 27727401 845592463 413175612 3921155 417700198 626136426 828056619 750985687 172725995 767084004 504853438 233109382 645608976 816686018 606857667 109501282 128774610 326108529 705881367 499085188 493343729 406634115 678253654 783063826 538013911 829723516 666681376 955331058 832224559 955741435 906533305 941368017 608455938 867578403 555304156 585711424 353318835 521538120 2034603 53567870 916106591 298824030 326976395 56695982 809044986 340702276 975631201 279839528 631507729 880221451 205049070 949921323 134751256 887708965 232322363 722659195 717992471 333827797 315968813 716438640 444761568 428226864 766763696 222485637 557200155 363883160 277119258 378643178 743443753 489902924 743427739 931617518 906013150 336369733 639524492 229069574 970912848 420922711 600583149 572244016 235497350 981650405 637967151 443310794 418787947 757543240 557748738 613415533 586965694 126790764 149739605 362542233 458235211 156288488 267616724 134358995 362195250 986861842 607547505 996496737 805584321 448651389 28133932 150633231 290851842 319147748 720316735 53007370 975686739 446060955 342144700 771599782 783749856 505494180 5745526 846720778 708141362 129355725 655897256 364756850 823131452 71392237 306281515 382837742 537769564 861454814 540947139 297794887 948857868 431709952 80492146 829910598 714480900 578013023 171809680 323695520 5406079 650087807 317646148 672745402 88340668 163000389 481198033 30726510 799334785 171641204 195001475 973709606 870544548 97072636 792097464 497747413 437062121 391595220 887574353 425537774 857591592 885694649 20345443 46996220 965003894 542921688 262772460 362667371 790744016 766463142 70595553 567093485 80706054 824824218 250147614 541201722 875748828 631957139 125093217 10175635 44932393 860977535 288690373 982275117 60743437 714450770 802523971 581509145 182265209 53321038 311202523 959103197 354691924 149798316 630557306 537224480 296972722 751481999 544920375 312824889 189195668 463834991 758497827 325193150 711474150 455091724 205801575 545663768 701646258 505207875 545031147 630089003 679688897 975306771 679411422 748325739 504693104 201867599 167842385 412310476 666204658 652142934 945942070 230380647 706025852 608444730 399425129 871813120 967071294 81906497 615660108 678618658 10112826 979356725 785951906 925662311 477295461 983617971 536983709 590890974 629200708 814610203 46544820 11872752 563074833 497430729 591178505 675146605 219769137 306776150 894384314 559841392 658705750 759801241 158924864 93275557 520500371 69612671 241629961 321430454 695249840 588398521 468545599 702385738 863173488 612608465 167006060 595470007 8914432 124800876 615043165 469037990 139152953 828039765 932941548 877328251 981423153 116784242 753777555 417876348 968853220 168618067 808331819 427556721 627596891 558242126 134957851 868592168 729545459 518923665 842051685 969243411 758223880 449617624 205130606 72659550 695903803 918101184 426325601 890988976 241404604 313752362 617736224 884260117 534528519 303530495 296368792 318406549 327281652 124375587 535142128 375473072 524675458 311937656 314557513 931599561 592382751 5732449 449824345 797110240 936438477 605478888 392884323 493142940 675582689 843507956 452327774 518307431 337666028 513445879 277141909 11790167 595084170 618974110 117924287 403201237 379367992 354701211 533986855 844893185 560436731 503700445 828133016 779330056 8195704 93867456 797609049 213721076 827417078 338734138 598121194 459297862 425172939 424865926 262854808 414215964 826994298 135359934 160006343 389099015 739409291 954288567 587979325 77213233 83368044 273425591 937189230 587618160 146937001 894361664 410866605 258529892 21495024 978956954 476071236 644277578 297907064 230662995 440299464 858192000 224755089 852292598 83781503 441328252 267503198 195172209 359297419 701776059 331093686 540363232 909365174 2923999 794139908 821683111 916397894 327580159 38564298 936520047 135517335 580861410 131327870 969938253 577263666 18259877 589922442 47484326 357439743 715471058 354998141 977138856 770987421 581556157 127555127 903685560 897738707 459798809 102912653 383284095 521524242 596579175 622094166 579151458 209952905 952486453 989625243 200554671 190212870 616632713 794015621 817313645 671405424 256366877 535325637 585823323 354808407 90013218 735686164 146852169 80975878 342085374 803880433 850338113 566318424 49663746 957470280 824095617 738899725 381831629 188942062 72469458 775559707 365642040 603320125 743762293 334800566 600757685 479210404 161420799 802394583 624619756 503244386 79704868 154626130 65042690 137652283 179860985 618942504 548744389 686981444 701517711 786126295 19667278 969915261 576464337 973046106 370417926 91911632 241991623 6869716 356197666 620314192 662841999 64728819 714878258 735498087 246051302 218539888 38843126 930027985 989432892 197721796 805818504 640803433 989590457 190665204 472483456 250794569 775495638 770901655 596504590 343069244 687348711 673814015 98848714 568029332 54817108 162191733 890610336 511490895 34420433 91386264 237437921 384473917 59813577 842951248 847092470 706189438 421883616 226330103 98878376 642268313 413586785 608625205 177733524 903576712 459340096 853100017 178944337 949728069 207916418 671459890 979836794 458047847 862898147 73133828 146744162 673154716 461398245 377748581 128116811 426506268 198060392 795504446 342446438 355464074 246708755 264892422 818903691 631411010 421467085 976789002 48757820 852711508 712173812 773101772 292519494 837025340 312936675 130799830 861434925 884764214 767514728 582932977 781942336 951044821 72452147 882572633 477349076 23589861 83010719 773389265 517156143 846701392 368496044 152754095 988576388 156247097 28202984 841124432 648756873 792989460 109872833 187787368 995706634 550757790 39801904 845619918 173286415 166390600 774520841 825707282 184926842 349836548 822559572 393000355 798683845 135731387 407384000 286566751 874763814 307615281 913256369 285685198 553698970 668452130 874974169 231102734 972886544 645051038 455403472 525902200 27140979 332110811 29659165 424884573 97889480 324009372 847919014 32157629 18322767 333567690 41657096 863862201 502065749 433573360 35222196 500452344 784091162 923979109 570690792 485782315 56958401 640059609 870858350 577698015 180129844 649332771 770733270 303715128 203107822 911540717 299551794 955716747 600515820 833781011 678491186 291479066 153074437 565465175 40115566 38207288 671626901 654462156 126910591 244191830 987158793 146429859 272059498 939400975 177763065 868087012 201307714 552505144 968374453 166597547 326943552 899018641 690043007 603833957 989197432 780315857 110100064 859671986 248902028 681693520 574292178 590324342 955071880 311602391 119022004 495639491 53850444 685226451 412417318 558290501 434960420 259825909 358856990 52755770 101140606 693227778 115442513 179942778 502886682 418762792 936305057 717976305 247456445 208670170 639824246 14097268 298675434 746332772 372479036 595600650 664896924 414598598 445570561 555930514 850747221 914729994 397214438 650258225 837109992 872306410 556798239 844341019 545974578 447664989 975990551 604533753 525717053 236745565 633458879 403739185 601019850 682790113 793403276 880409105 642672238 731012308 855748862 414929820 249586722 156748895 161838529 174912716 826402313 424735772 841373045 207861075 60720394 489121887 641040807 351938261 823746919 825094842 892714167 419170232 913281921 500418822 436590995 157655025 161961990 511954240 719769045 627331313 846311580 913823130 110699935 815889212 289433045 945947642 381653927 849378269 107268673 764020897 293888251 205282794 221380371 92882281 946219932 808147402 187013774 136818131 315817501 120319214 901272863 556990742 274261276 340962385 960051746 179656607 284320648 144430348 30260213 296102556 851478388 995966417 235788318 791803568 305526735 885730789 253415127 147958216 80434555 137887677 186660717 938034744 355280901 975737644 409764981 633763024 631403120 423328411 603624501 130178799 845962227 318217928 690162109 8753027 147238019 60839141 911909628 567129728 845612888 245441725 87746719 448569723 252908364 945634619 862549193 775393546 231705208 556172795 895934906 504046998 329019427 59015081 66551359 203718024 984912445 460774027 908772257 112676572 725946354 133837057 776181416 380603968 315514401 573160160 968707370 905190725 804813917 403278304 426574866 324294156 183294182 109039894 828045075 254003652 744208870 329205479 415440032 358436493 764500956 645219871 777261861 998999903 510893274 61149384 816924065 673529154 752362154 626517252 838166470 944044923 383497699 740687408 506306094 4072221 122283818 509715098 948965904 748318307 987334508 110015468 458769008 295715392 128602946 190996756 32811891 918735200 159213124 120010105 254127034 958823030 602785092 400916981 805655022 158197304 899656156 760330843 999616306 681575422 705057068 406847367 643210355 674536963 741002065 597362880 406131749 691633714 176612139 398249435 615377717 90270280 648294857 490821311 848658391 769784886 725737029 592018436 113580106 812479862 910162323 794256991 857770266 93534761 332559086 729714129 978724214 431012227 884669583 775804 498642285 256218240 855516277 693732264 700887340 68914045 247609425 807120580 24957400 316380057 1698340 300102851 466315237 449529952 85016338 657717539 4214933 240245237 138648740 670522663 336992947 125982619 40164849 370458046 381181398 391204968 110563469 323851179 239011897 347659666 679218040 962940480 923046503 659384311 882357027 45110867 160558098 326608856 775653327 983221086 22592644 938468222 3142445 302699706 425245080 829060848 727733427 888327294 918007410 625694541 164195279 638839252 694949115 913156946 566655880 800075216 743831232 837390703 514120255 753721096 714702853 790620706 481381276 804441654 616671791 350402310 105820420 821282059 343829985 517923437 992876533 951218084 640132796 398596359 957212 535063722 377945181 129580952 283557113 552651826 625351281 875487157 454848464 366653310 376188347 853191703 23190553 344654890 529475421 912756418 834537720 586229924 81828985 583988874 493347991 735128030 204076322 996283658 29281526 546473380 103261821 82423284 473098978 324362092 406946248 301704101 313928873 2230019 230134536 468394381 818083550 816619293 811089743 152271120 98209003 268523225 984477908 422762797 81072881 385446413 59298939 373682185 378858593 111213333 82424169 637053318 157604745 544377422 561234004 782727085 533044798 951411319 284063901 572417416 320199231 542452095 245537245 93728507 394615169 526590008 440748827 737606743 531343269 418099148 697429524 363964869 705976579 944892132 806314652 203320134 365591345 384542312 196616030 299115478 984576273 211413139 748998782 479089357 433451748 628276145 378188019 691452144 615007596 486579938 297646422 460794637 374259746 972110049 564455023 971775480 272471434 506462587 256222298 924381449 234003083 435599148 118859392 578100318 87554367 863161443 187777168 600171787 229914229 237790861 929942477 946775716 684203005 345666092 406264807 354603165 831009870 314602850 452341548 748113350 799311606 499219818 438016528 399425954 340513062 938945070 275315609 350329411 488423619 996449606 953030643 173240799 401220153 250063155 131120470 436590420 186056734 890433288 366018763 74488216 993836893 184044814 675467964 829934787 466149352 101703582 991048322 596332044 369629232 935092807 629617878 169533875 674817862 130443174 614425321 188270776 766546096 867674592 995622603 630388742 340460742 310458872 509145175 44026275 157390520 642755117 627825797 117786574 460324980 323705173 963622896 649386458 636970073 406014908 835232449 295630002 904027597 194931656 3392253 321969183 28317186 52295059 80313019 182270319 843611981 802153575 612713750 313965662 456206366 153590986 606239181 538148962 894022340 289736179 870881642 819453113 319917683 801134910 738839802 28341038 585774907 392645543 982112596 806061393 646283243 814239056 546986669 171515633 307197244 975202769 263390480 861889674 202172279 850884815 125889172 184117406 814213526 671819537 839656555 53056897 911678279 265840919 33337808 127259267 150958258 753292035 520954281 203553962 975582277 661743951 230581934 166102436 835133155 715893583 487192020 347124827 531274513 513328313 468043997 973676928 101827004 622722099 46177917 237158970 795569469 861682486 737347393 285628096 548041700 787587485 115639152 942874683 636705399 57880439 725852935 416863752 517680620 832642847 576557924 404429288 97628361 21738539 982491805 844410805 319486427 157853509 802031465 654841867 701559938 185151689 559398213 774816325 993177640 505297301 33457630 49404233 971738978 122402286 583564521 668887400 751337716 616132923 909294279 969532223 816120645 254916591 559992202 195621038 649846820 772134559 374638179 27152865 473932729 269672345 32812411 671795212 523230384 700455767 654237972 152150161 16649942 960775281 729034293 665694058 609670313 242091444 466951113 865950833 70457826 982126081 821162394 313456937 332096079 601135362 335675078 615517948 495389237 559355507 798896983 111291132 758057708 846070184 951195112 26631845 231209875 334637438 530543769 919291974 454147225 492041750 197027525 108772620 636119924 659445284 316442027 367568377 412786806 208851156 567670131 756091519 869024099 999428520 629886428 179340767 935422061 498200992 466300126 921774575 764031449 874563104 476303681 658675417 975808704 195787110 381103685 192036485 429408439 913224832 107819064 75915032 129337044 217615070 615105970 249814535 756472169 788473319 322488879 597813515 473170304 418914511 515608230 859901357 934874797 325640137 519088299 251985847 133005373 308099125 252354662 586926132 568066563 152404980 546429559 334277841 569297255 217515260 308706443 794326520 611061130 935790164 143798337 404890449 270590960 538096839 555113385 659664110 750609412 997790160 283841459 676177801 724597936 372860234 239663894 600815302 789313067 946931781 392822415 843533914 274472023 306511515 423536831 421867336 406434010 761620913 652418298 547416121 85455052 604863289 66200556 197528725 652561953 331048371 488738895 253903044 423177271 680901354 787394475 556196289 466258672 343023428 349668720 331480263 799638523 63886031 752238177 59273904 181072161 133328785 956314010 147554209 7414811 635872762 840461347 3633299 992038802 999896172 33402601 807650749 683292685 126910268 814458957 347292100 288712026 965930816 272425683 260598071 488615721 142169832 310040093 661590222 340108490 80841835 447154880 614934662 985111906 722935475 734427651 283220760 96533020 469446582 977871221 518962631 270542353 657545750 88130873 454132267 876209656 837452639 27387146 972822520 445272326 907003737 115023550 910286122 194192484 181938865 494455215 450423294 730937106 464290572 80254205 641241095 774110069 296794319 541666589 544035720 85115323 905383997 185299880 787051578 336735431 78983251 794356556 387887967 324002679 82283282 523668784 963494027 249352815 261220238 718300679 838612032 57166536 680861996 548696632 244120682 209200092 526513111 267749905 684036818 611985062 535860219 402536106 187214965 1863223 407012749 510815721 627464139 858614800 550797302 966395527 195486704 875036102 639973931 397598756 372649444 646345844 335365340 78669857 720152468 602182287 698427497 950670596 108433388 206543270 360036592 817072558 262392791 495893950 8431154 302362375 383305050 863069337 772086743 87634497 200105744 959805662 49412900 402546094 787445069 116548997 977577164 504044429 895092508 467697401 52801885 139615377 441554785 944688885 837901381 617775978 354384152 189793787 977808084 235993461 752535732 914446071 24467247 908277435 554032464 220306213 847335244 842013258 734636054 240647668 775537354 614958481 563686379 286971050 168989129 116383911 959871399 851536083 816310566 929041522 124834640 320365120 289303388 151554117 895090884 799798643 819519761 243884360 383098741 542834766 143418821 364190039 756280989 195390370 257969361 696177909 662632633 25895197 641412474 296906880 913297785 999276489 512849153 764243095 741444649 235935298 72009305 280945998 784932462 547706471 733006482 493019618 867272284 296426773 862274409 871411 978049722 345802447 932455387 618276842 391546576 489082699 478976238 412546298 536479616 502762136 842485310 356426620 365752179 964252303 180925088 533906529 172706604 183274718 375748619 336952637 773204616 910530212 562144984 665730778 267976617 114213596 775778154 416625171 654722441 5159654 153632787 680107285 131998548 268401824 852469520 226713117 39949945 556678876 915215102 845027867 995419834 96891892 866459458 518968385 667792987 959444892 676538488 15332492 728619401 846135508 190135253 409704024 570924498 854350811 896385986 796816242 520650616 388805496 362306736 675730622 848358822 933269961 167324836 717233334 179033375 564948748 187963610 148048761 281250881 557082810 694124700 704078313 89952886 111990469 175662308 141077557 338295784 675380829 377162556 67297652 446744071 351264747 970884852 575037420 798455524 571174978 356304442 655382949 735615968 2862669 231558947 749651149 356727358 64619196 841899300 714824538 392960739 174027875 285807869 48659015 23839213 56635630 393840228 410252263 517168683 579728 243002979 466701199 427941937 457878533 680761424 966374483 49985071 819727718 544241002 191512483 181585738 4484615 288526694 996799156 95832353 637614174 313096517 52042401 641855769 706647602 992669869 934804118 982379293 172235618 810585726 354732181 918092660 849399559 183788241 165937861 446949113 638375599 293315564 603457920 195896425 207743854 484207173 734080223 567501735 770246415 391116620 421303835 346183498 49008842 487490363 38006855 678707636 566056733 585812087 504459646 820231150 421606840 775995781 527270058 468325360 266345265 160555770 585310893 189603166 347646742 975136205 91589282 376336987 619190481 974835937 546423662 737429502 256124502 559430260 88425662 160659969 995694833 516613358 787312055 807573266 197953665 845616438 38012735 315588976 828882060 771724321 65035480 876948603 903005759 636355848 586081523 272895433 223715455 586989004 436265462 487661467 273874746 246548872 181091208 289971680 526853025 641861787 286222314 673579493 822864094 112582174 245901346 863176053 497132420 254597442 256748528 99478731 592840859 620964080 233170171 857899749 935783000 923658248 93802259 524070935 75252761 45261250 884123151 565311826 832591498 845863901 242375943 740918631 924997098 532566699 819197479 863833606 390347473 273984237 355290361 492838022 736451449 363482266 856114872 180750989 64739071 634671045 403042203 656305290 9916230 181077981 38580425 766030370 176047383 294610600 184577064 186864364 347380742 804763588 1107411 433816024 283025106 544426566 899569766 854465072 852011730 557107608 433747286 952996493 532104056 483323303 351390639 736552811 372837226 835106352 942735724 390211229 871869765 32047653 830382610 402084031 692641938 887827864 987410348 995307896 360812342 882545791 817503657 448579622 984636171 961919239 330847381 919840502 241612980 836711580 465931729 203763989 202788899 33288958 613873546 581653633 20611595 578640206 811154281 918729078 566830221 833657833 808866764 255102939 273255793 689120450 799495398 22108790 977441079 870165661 335609958 683561258 658111786 58702864 667094750 509467800 249250828 366120091 465487434 280277668 352860394 253407846 413485618 537363179 674707361 555302603 297619266 103891672 469044732 791296036 472749310 356096127 696954414 720910347 571822039 276862190 344202917 870146317 192326524 593272919 890490009 935364764 153621171 730697703 89451752 748997622 388633368 581859066 113830974 529678444 989166160 221536855 532218121 237999524 335846540 322478382 466868125 377174442 638238530 294071023 405217208 882586093 403893786 152858948 971034088 694589975 972050079 431594385 118355800 527709034 214202341 4903727 47411542 837012478 989555364 277243416 711320641 237215796 342002349 396471956 948011261 11581231 58102746 316930693 411634260 255063602 469870711 745984625 586715439 823762546 179776220 108610622 759452211 198041827 428378658 57457059 77138689 458734484 612896651 892408045 348088765 582155150 796437532 444638911 932982883 757904583 405485280 281959602 163871788 905615855 558221712 914548108 174703211 824801778 639921380 360344868 600827340 246698423 199584967 796066510 225274094 890112088 188460816 669629528 880395718 860699563 565863898 207330388 475783158 997458096 11574783 1263644 912928493 813803253 163379070 970146404 419917278 38130453 816990017 876168140 204429395 449418018 412157497 643299849 522598005 548432404 992898214 513899335 743115702 225343236 947463257 125080376 972252459 243660886 311200710 606139975 845120862 111427384 623647221 212976813 832238389 884170671 625123720 993538554 433775937 374039061 155597151 115352558 81155920 584418440 402265986 536285914 828578665 805534954 650594272 496761766 742583912 534651313 987250471 673356504 90909311 799622044 138996221 114435767 737143922 912071102 45890521 797716738 67393842 757391601 725751029 278924411 586258565 545140956 948557843 570465743 435419323 255222885 899378397 397642929 354233642 13152159 320691431 95793235 660814951 701406435 258292371 353836937 84618082 105663064 68858225 419453838 782367828 546532085 209223192 256538367 689802322 318015803 101600289 302792588 991864209 906670645 427816696 937676017 321957745 759285755 908016023 670719439 318407390 859261017 910409991 893352301 502872397 90487670 553891698 113552052 585935093 984015445 72260901 904034495 464861531 309845037 926777873 917820717 975139685 153198077 795262983 399952899 22451673 570786515 60364449 70055648 295126626 946018437 748778703 258450884 535198863 892224247 896142695 487903455 840300034 71644980 703055238 181198339 437375231 876888853 479167051 963999843 92876320 18152616 606567559 838788181 389242078 719276096 24536268 574689954 79866858 812486413 927755761 865959405 147413274 789500864 516986769 412700884 540526799 183102786 763450336 462617845 479541324 143323747 737398354 355279657 22896107 320432358 876200231 932224412 412537552 395004341 93651289 286909425 77898354 666934531 820002520 998451434 10312611 365307544 708319608 749246771 220942944 252466868 144251099 550831683 974848223 88413087 520758152 643502127 277168736 235675541 117710635 872546420 392452040 621452593 534291237 465822579 226673827 9025569 38676993 274584191 369586644 118596658 173185867 167995226 775990183 816167592 887306169 185528466 228050700 879056098 62163083 101444181 954958440 536601404 464682520 630943044 217453966 322712029 68278695 649035636 688438212 987048920 324750789 849976882 697299618 384472597 287322537 285188465 382153756 740158151 102730723 423238806 475185706 37555062 774396129 477655356 376599100 880832950 994933832 318745949 845536169 892704170 650623985 992721627 918659413 808690057 252362302 369050682 552110727 296831724 663710317 8423716 335598326 719184729 981212912 919655389 848704844 496410548 14218225 76229209 870234204 682413893 91882041 219164644 656352335 698677039 937976564 851354024 553008162 43869591 574351931 105637840 281422825 886559518 513250886 432688882 747264989 414115470 168301718 648871302 664336031 107239400 179622884 403092439 100255371 166735204 573484198 906477596 198177743 412178005 539440256 189541073 645359267 158652361 942417052 573012372 734648148 92853612 178405680 645893917 848383908 38465087 604208357 844820230 819909004 248362444 631957229 630118704 207151004 138532992 726618674 923620058 318569663 54091023 850018490 266771165 463356301 227953897 963017475 340162826 209192914 961408826 361421552 845061672 312776298 749776756 44210943 308041619 878424579 122276569 554761665 714286094 867307559 172957210 904741165 920484708 337076649 158196075 985054288 449393547 111508584 575728618 139115767 645634642 291799927 596709041 912047556 742266910 59595301 469450830 347642192 599709867 918575226 266853824 387626454 389207630 175380239 955700261 570032817 741021252 779569841 352190226 725089822 793884561 868574694 678708440 833917620 892276549 640839147 46920012 834368922 740387963 213886736 184410373 677588424 41506825 424522730 43938857 382507143 9141902 418054183 511519039 471358443 950545668 655063078 303007754 575192049 169971328 789037704 653872769 720293649 864570999 67148067 670891829 353346745 833250638 547850668 486480663 904053675 819692614 201766232 383158406 629257854 773767684 734625534 347730072 149167931 860568883 836910414 414955605 417672818 513217327 967589336 187421415 554309241 885752446 613806218 68825700 92198075 606047431 732059839 34444585 319672670 829897992 226533326 214166267 615256144 866476319 119181710 167023459 364474838 686256789 148998928 452623132 786730646 74499731 520896425 468734792 979439220 635720857 851857931 567338186 962212698 658104464 370075811 350784474 115973346 811028333 674547372 205341874 664981849 342844082 593155408 722309282 644845583 616265482 119882233 754502274 542701553 963483777 583851401 906916868 10500387 530186779 511996371 108495588 990410686 494582467 811428375 594416824 960771583 348301174 673746026 42084272 166784759 971006290 803648440 934926115 668872139 401408021 414381319 749934056 999302993 684139770 520680393 652494250 479312120 736980267 719385467 973019598 302210618 916561564 199161194 357624777 706646323 843979517 638244363 315550241 213267905 987310461 65734087 411019023 520223529 86083453 781214093 372608767 722222970 588665689 67483008 416526208 921146894 97536477 317911416 906920292 257880711 354208366 132121776 940584213 786540016 909496219 174372690 142935504 803685494 670151659 519166447 448936584 902326739 938214774 876037753 654484496 203234727 431397266 694240980 314736870 755047051 186281448 749041311 209550382 622249833 796720269 642289279 824674907 93738174 420668305 126732569 668394012 881440520 923946004 580480135 732166029 225763311 239491873 370969364 808243105 749104722 636586128 208213100 336279570 447786900 143374644 943331869 534950153 912179927 593582561 956063726 149634875 933348013 710998112 790999452 522330396 739514121 147531011 778473703 671852359 433408955 557762756 662582085 221879593 276856600 248502217 345544195 952508840 948361055 708531919 995716820 862522239 355185097 98264484 618593414 920074366 642678634 789796681 675077627 616373273 536634430 517949339 439036584 332133781 460228175 547180453 493453746 845927365 65102929 194970953 658946375 608494086 644608018 219984472 465967712 497242795 689117156 105440852 303911830 528652786 783569349 413544309 381253613 13080401 107785062 81770497 996332981 777870971 690676732 154748386 692552138 173650650 366969426 749018322 960653240 994274732 373004538 411278726 484512681 684342012 342226140 289762733 29720568 306078100 654692592 971036599 38583002 556994988 295507901 884107060 560239209 233368274 594512853 200906027 680271095 503705258 307686984 312491715 926960324 426113396 16123771 506097459 732105573 673776928 211837938 268623666 380049131 918818170 240934177 428509259 216135341 539889587 846948482 118589183 280588295 699509300 618884808 560088438 782719631 31467607 117369574 47808404 603199038 395629425 355910713 147813286 323132362 716992959 675481379 535724441 934768772 395876560 567604065 585662132 773730335 326489271 495556127 843098252 740042467 439811269 544964850 807961480 735187038 444570521 986640106 644002004 837636813 261473298 370193960 889469240 222968935 115094935 89961775 555127839 301435848 574004067 998899261 624187661 258000493 294776930 302576095 525534412 950540841 6217066 691082502 183714826 674660780 392862087 964753039 377842301 237068732 343609892 479783599 114548851 698476907 866070706 252366673 984319013 615363943 150401183 479786894 459379191 805224682 618866048 48052420 947699170 4435729 960874409 729506440 378412176 88701137 550872079 459885092 212561980 462840563 225374204 274026249 637215669 945942966 419124722 878701464 10606978 86490965 242912928 81710002 839225876 114009310 105231372 26177681 821214522 218722737 266842820 486786846 247950170 204980396 368606629 924344250 504343914 837846534 776836642 590671472 606980618 681177151 218304000 630317599 986990781 404017583 433894541 483129443 168587107 983943868 948384997 536499567 237530889 180482453 29050702 960617193 618709036 455074874 313140327 166219566 160523340 726581183 905435994 371302377 81719949 51755118 819174613 461669891 965541737 815860141 347334533 191949507 999869679 386017588 324777420 311630511 59555946 408883525 171092797 182572242 923619133 534368507 72434126 562522946 255450363 924592018 928025922 769644333 459395399 446499075 960830139 144422193 906321248 902058569 307470941 196922445 795725331 240808686 989263735 850098710 531012645 460073501 48565773 771322293 962265283 937371512 282785025 593527664 851236067 814429858 712019069 84273225 541648788 870932935 660067715 17327417 549453907 722704386 889886024 93146048 446075527 794377394 584461039 375314899 780689513 574147774 886122363 687393700 308069975 170132539 36768443 575772929 542188490 726467825 613357409 226392719 103854348 26697435 753657645 147113848 360969942 478732584 717773776 694221466 353715937 781382216 942480537 451384046 755812271 769211978 87540583 563832734 410524193 102527946 6124994 731191800 366446205 646921096 247916946 941579799 887272536 567032082 747090094 160551855 519997445 6311954 908683766 618714890 203108369 866212843 720953050 27410132 398845373 929673184 341522509 671145662 456015658 14022012 363776302 344478857 114268884 973602763 96444851 69880103 865915267 821458700 79142211 984785239 121147669 48953581 242644597 474670367 197180289 210679228 333266729 216751956 582291869 897700694 154913336 888729847 969076067 619423521 55682029 819955073 407447169 904099449 273261984 389300504 110017860 910847008 81578848 891250999 135117246 886238785 158724640 833890320 160216512 848549370 900231928 850184343 698602865 495495978 389381589 385301937 891468850 410263318 150033664 491836625 840880936 916904898 951481274 381748640 802768900 695717422 797976310 511718852 702440271 804715533 68131362 732446222 449799361 737525688 603837742 81520521 614396705 366936358 364532668 884481972 152455772 886556582 157409191 326306661 833512070 69752697 418048746 223754745 883851654 65002973 751293204 663583016 351757038 16566281 311927187 360227127 591473691 583621756 575527623 983302465 321119435 306718690 738016177 295719762 345134107 190909904 678156981 987773826 148223510 790706352 103504209 817997529 380309242 796992595 96770117 403627805 979853615 113697034 327100433 810955553 335204022 436614332 376934749 652929211 726448787 50331401 272919460 950159566 679044227 656952147 632236616 650847415 812400149 483495225 70156958 940038620 612307276 690636545 214829325 362200405 281587388 70277219 334835912 707423160 976248973 943110951 464793720 303507983 140948226 895944909 767997862 363002129 657485062 446240490 155750935 521769739 986069732 599137648 612632077 217354635 152087571 73825962 332575853 487432157 740700739 42439917 103696756 149358743 413416476 700095008 581244348 477138395 618447624 518884004 734668424 40943824 844337752 515057380 764929919 490613477 947495639 739091126 49812699 184594822 166653227 692203589 551443055 737153919 19066718 452724674 404741942 748702431 224087528 889499611 194769795 625902370 818325204 723499938 243272323 799664629 759545484 715677174 426519091 659813929 284893565 513114313 991784279 301702182 154893962 795402864 950038771 441199548 305588477 431045101 906709918 739424815 496873206 104935034 954942214 17079278 79614056 626143302 338316568 85388842 9900513 22424627 236517316 227899362 399431427 501101100 797448751 657531622 31683739 95359742 497985989 525873873 755350152 560586662 239416192 858590453 411722254 789106490 783533968 70251187 404733005 613807321 726337211 142717249 233122898 179160255 116986033 154149762 895338182 542264862 44900730 848316596 851812486 87363367 442324678 549533312 964564213 780946843 737919906 803589468 476004101 673234161 212941677 182968677 146728260 908360393 265200872 782713355 670977217 198769851 489873899 858526116 46554037 732377771 718002913 622507426 435365782 106935404 441502667 633989136 461298214 590456026 657029347 968272271 271768450 345433868 578493431 363424921 653052953 902386957 318362407 421379558 720825434 568570402 125700300 703446075 159375497 695340246 222938779 902932296 158428679 832850790 628589030 138580321 334930497 181272574 982158495 259284833 634158250 71883364 148511385 180001531 4748470 964162231 904250538 639084275 902837123 132748563 411543929 204529083 197939625 613103935 421149306 103180280 461667031 120170731 203088073 610460842 79075578 105284134 835535975 739111732 895022677 288079556 490372090 243443346 875203295 676063030 27338289 939550847 269151759 415062778 878071240 124712437 70248717 314869470 414102903 942243221 533870739 825776781 163873756 556326897 942339762 102960280 253109259 445312989 812980821 390545432 613946659 89792058 144664608 136319878 132827552 190106480 777437951 204923766 959676846 684101773 48140553 347434641 607190444 961983132 694653101 515254858 249175252 397283250 143874268 570476284 807807376 433156644 264714881 960176401 518307589 407669992 522529250 136563715 527011602 523621701 144996068 484293949 259703014 318303969 185483391 441588050 249671876 653589976 66109553 438095072 310033025 958055481 861026068 89088993 42288482 316437677 788400079 274757801 862176064 991500998 554089061 871800265 745392400 705001708 667696745 39200509 1094348 47021741 993460947 223946044 304854164 705418606 813295903 662176830 850555175 200996177 421477940 613708946 850427159 29774942 435410344 174073116 852382230 986459683 781491275 835865036 254974700 393171290 220498841 619696523 992962226 505020855 848114997 996434496 798168022 710280393 470184148 328332160 220406802 233666562 120109844 520719726 797357876 187358900 913032581 619334552 720240701 741744532 646186495 677318588 228097532 262199424 239788850 676187651 509968925 632809509 140687339 391690807 238922269 687206375 865283822 727976686 497612289 510201783 413876299 404132752 347991076 110166907 755931285 693888444 265009743 159047191 502009694 94926981 708812203 252130855 165928947 100912297 386582497 560447023 534977004 832518761 352788720 83594496 376757243 896465148 615700986 590293367 92862682 711534009 760758299 230687643 484039134 474455359 133075341 761372314 56470184 386214493 90281487 35812217 533157184 833071888 744657762 641642588 861896504 271027966 128684050 303628506 474074811 270075596 986663759 550750027 380509278 816632333 997698878 613294673 330896760 745638505 595807354 368029914 768888554 797133310 984697760 371245012 192953390 471068232 114259881 935346858 381607889 407276377 536810028 199078757 543879887 651585980 583300233 703493760 938473370 475020372 822139442 679822400 617413250 387579558 484502024 779258831 122251131 772682957 253248558 591949283 693716018 324895556 629723868 411706178 319347426 762512252 741452977 660732283 700307879 242130735 429797503 175838290 387007442 586989412 614404176 466683986 629918272 524370460 585161492 554379239 280322987 142289030 380483673 382693597 275841910 253699032 703080397 338737396 8320048 901689039 501025284 556824122 17187327 580156482 337772083 433482681 595628067 583861608 842856035 463539988 309289823 963649845 163742369 934001447 691650572 274822460 442598372 7133924 308050908 841234049 587902681 488711720 899775623 335097607 126955091 366504313 714527824 541066658 998408043 382345947 379598366 695160157 736501079 356400804 136668198 484464474 152296682 246887923 504442595 97092000 332019848 988515689 14708204 725707902 455436948 708841278 873790206 436105844 577393807 948032029 835190605 440912566 838333240 428059787 514777860 212861548 500618297 124109544 68665152 63300530 512920448 786746494 254990746 712824446 286325438 710037863 160961552 216737286 857776654 487285944 892920563 770539066 418624409 87917550 424273040 345181941 680139577 632853220 461781155 979274241 970681252 570599053 994511995 854867856 360119122 720210975 626652974 716010621 53313897 131359249 828745311 49757662 49052752 420546648 11441705 279236876 887951043 548202421 169599519 173172305 400735952 792587549 210701407 270310215 963539720 525217582 606750737 368848706 722560547 88160873 711949621 83710847 358560848 994571062 720759424 684288705 607583750 901497159 477673607 938580912 944446114 727810623 203563228 750125541 437819856 70017228 321774844 804739700 704927327 286089294 423323906 555763056 904179119 701881278 611401814 334084101 460945412 99707996 619321680 390865649 324857922 912060529 665624513 286443098 543483256 650165043 529173094 589806021 285111060 711735594 427070460 765237483 996550222 424874646 738926786 502459513 503844378 432678291 342648330 797882733 364966688 543966581 989168888 606328809 588498722 295105295 868833800 603627908 652058489 593118921 919592441 726676084 814476967 872405375 103564270 196750388 422683313 486207081 300135554 850626728 832117536 610826747 622000889 36434624 159707281 857431294 563293872 688618150 158562895 841130399 931443954 362577043 109475741 14111942 471859872 570918804 440276290 380275759 883891584 304168607 923275858 965728087 587782202 170899174 690526473 529115952 563987563 273796221 638668377 481010411 886522235 152718552 739772310 208527580 162356014 255992236 421351369 37911269 237556612 893710741 141623384 305756013 691507556 565225686 14040894 604241569 661085683 691480084 849804626 127710838 609031984 28692914 831105604 856717441 884856291 381819555 720480111 20260339 539500032 472383124 173574345 290281115 762088454 444706507 119690427 766734791 954602973 557528498 582719602 172686986 838993877 13801515 460489837 949777183 313006982 579438345 478505446 125704917 142773392 833916809 417241058 343765453 524306627 814681684 321309609 364286734 185426379 963056624 532536531 386443388 969744978 483260199 139880481 662258339 720410820 63189542 104249767 825731886 63951651 389014109 498528623 679118131 969707486 816781023 549929720 37885781 857072639 806075095 956597704 817291497 199871226 820433037 263314429 689886969 666863694 768426330 915534813 649158323 584622027 160383447 325608435 353184517 288549416 332699224 947517668 840931137 45181864 870409304 446643432 305081627 746728492 773607849 321436882 712242265 633607295 154463548 222814687 262604275 785522036 740116215 403582527 825060452 73085118 44685743 938096518 507004292 574743921 959945170 304029884 502757316 885256530 485682008 988739467 202705981 526699172 978945699 962165422 933567221 323288594 203858035 357372719 294516907 789541008 151461940 776066884 335547228 689320696 481466587 190261822 667101795 942260853 826639019 551206783 550921661 886273640 288663725 950287123 349245758 806413363 460122462 392076934 988359933 660705007 743409470 525779325 834182303 986414299 901257495 137144838 216382878 627828655 388970708 78833443 276177946 196757348 232993897 851327524 810527061 515935197 900704841 181664821 926317652 534192323 809818377 991709237 672963217 18234605 233114792 582399080 331210289 540357197 603484275 260263547 696882383 244159738 338930919 192599709 973858173 126776439 232810090 331771609 193085190 877922194 702649004 710580348 105523923 668282050 472604433 522870075 894132960 405786700 960417184 183607900 724265011 674228615 795407203 546543909 744834497 12726417 72659325 407146866 864789587 745525850 161428834 119546320 727149497 53245826 64615251 641017740 21935882 160804090 542389432 80950791 689694170 299000875 85669392 638303334 726038472 836654257 2241619 402907498 851641696 861341104 371774418 274736382 598239381 864656868 845929212 704116044 21261418 516784830 267180876 452664098 812330126 237802648 103832601 981184807 582522189 100492750 214101321 15846205 570545695 34779291 665527685 846682762 722265781 290680190 223872530 147228648 734748572 348068715 830937881 425094654 112825205 151582688 906964093 98884329 466217082 943443666 26566846 184976995 750424035 858720399 336798148 347831887 924764078 29907772 34444607 58063191 828120800 180808220 966000146 247586814 55853174 820828645 463820830 916455969 771439487 697549798 662942495 485533589 289389315 157049821 25076718 471948580 918613515 700425501 641473656 192868686 103465511 527792079 626912406 929527071 979553870 266649563 797074060 488264771 853328618 869501962 486813935 2800437 966425079 391699726 815743491 547832867 600332438 944222024 300344668 99270549 148516819 116014796 995780324 309959226 897409579 562359986 607865428 279834904 925838695 776907407 718631416 344027083 349873282 490119651 56479324 936965861 333115204 149676153 837329522 534807869 876820966 286099709 427743374 303655872 287801788 623805678 507375177 414933056 107733022 205857022 147955173 884919119 695507653 238934896 825729518 718859341 92414291 430875781 311560497 892952445 392128091 239045676 858168964 140156214 910621219 913210296 366598966 298061635 405677627 64059785 194038941 243810639 263457971 333109351 837457206 328414977 370113931 868695482 932642526 370319969 923286483 394083827 6242784 434065630 662688356 282968400 84129519 171457124 300337871 275364120 820028089 603105226 576827961 239245033 996208890 46532053 186150080 554693169 255479923 308152485 870408637 607962757 208180219 498522515 67556274 575633909 241731576 871734719 776446772 123382747 253136923 194754144 50522162 711191741 320986792 47688510 540254437 648779237 932206786 93374553 895773664 548906768 431589512 354446396 575866903 772918637 972611773 222220336 665153841 301455375 528222844 774989008 409222564 385065617 966471424 729261153 810770653 871097578 385150777 739291660 931868779 812643728 356878760 998083231 778455387 994848540 895065233 127609362 834845242 552271296 606366176 500092182 583188350 971595935 780251696 936642061 378754592 456660293 100698056 412275744 487111431 944160001 228078264 323622041 943189467 589161859 313213296 887175013 684128747 572481404 766468550 734460321 512999318 902043096 222481749 455046136 746393760 116781864 30409648 461285044 83916724 97678497 95766061 936557065 974555711 479442621 695110027 304577199 80087858 998485860 745530083 572556260 992860442 942753016 913698203 786207151 897856682 289000136 279353214 443349620 480559791 888302646 614086528 523780456 138147640 199491882 162604756 471959604 423928700 941882976 262098233 914287893 441719497 627769148 369913449 34421746 662147929 785094233 979523577 400227441 957113795 129262757 287975647 771741343 114732667 22971763 164735685 9373877 278895515 601866530 966508736 243929674 718082429 347289428 261554037 570518669 185297777 114296624 93946745 80257309 808423745 517554875 403530594 505134545 502258269 167435310 202062221 17653690 714768581 444274319 718479902 761239881 733821894 571224242 73817161 498262592 421330604 475962143 213574125 142230670 772565248 598054601 557289175 523635210 325530769 477460770 292794968 427863495 271420017 21678671 967031547 491557505 825432987 824261731 693174302 41077873 420681389 853726658 767095408 864046090 845173650 748034351 271876467 757109012 408957653 928249774 435325687 529725721 723590625 462700774 480045068 681690661 285815047 497016275 410985125 46645405 833744855 80022141 932580702 406214519 200815962 755566153 657641783 791357341 792110612 649453591 64000913 140924768 682214041 674078594 890192054 906517764 317423106 470314959 634974297 127745153 488556444 95436183 65127986 561763823 86310757 475927851 306442074 137906789 123732367 57509690 941377181 218989581 652036630 180363537 366444902 963777698 885391441 234860090 17966915 776763530 18671695 113769418 219500176 529473173 757710924 101286668 186594160 711172397 118516680 961882419 884478027 366480767 777826913 983268935 84054765 542743322 972506391 361067735 28328044 278631233 522276422 471797829 277277643 222368108 997604080 549775435 884877891 638463585 14774627 445694504 949056444 49172734 257301561 402338630 58838167 22035920 818942183 765784053 149114425 303340258 549488505 436189185 933562421 111138602 551799635 435178850 497601908 182397010 554459296 432551688 334117765 643855896 51020143 874741732 603645816 413830339 187317499 555449236 882535426 235079101 203454319 89459251 850664026 981887844 601265914 40292351 73942758 834286343 567545928 908587423 126515416 474232374 153111529 419646331 663492883 892397582 222382764 999114303 455548450 4907383 218617824 247803254 27727634 972535593 420540809 831432096 931852553 209327966 374413471 136222157 539168762 917526397 526202904 501423250 285609392 177029440 634220905 843213663 512999840 729218387 218071875 230542737 545406040 846774412 179594857 717124744 26880340 674223334 383778407 620220327 347207407 301709419 145479868 513263647 737597593 116664887 356168865 235884002 75280173 118713100 598110139 647133857 788871418 75492773 950993712 52163910 18197482 298843041 801103685 4703438 617752674 921299987 323704863 73544259 807780268 954149424 351680050 882945861 394158878 819831365 425953885 574614838 659664814 145343081 771322463 511759930 326663688 364730960 120827098 446158720 82398746 535152585 755799585 293488513 121676810 293013039 714060327 898463615 721099452 297781770 111444466 711879128 178130035 98291989 380515164 118992667 703542958 827729485 13915785 244143259 249417231 470164430 579866444 354888653 669869336 937226800 461981052 748610885 658388722 938231304 374247034 464324286 756352092 719524624 382300056 663106070 934951642 926215116 468078946 830560739 607659959 130374374 790460583 39095422 721575210 139931643 796873346 299503805 5381679 743173213 895941347 753438702 211339784 457481881 302243172 61838679 112989495 20360872 786742284 511782564 977864079 552186056 434542598 315698907 790257519 890341202 908765137 158930311 878667700 384985130 952045667 457667944 240888640 715420867 363522484 649510632 518538567 502575134 60666587 249567101 573219675 632461944 158364668 554002702 596141162 281986471 774868013 584632404 711335501 793511844 717723606 925207516 681127122 715675193 908476249 228617819 916433595 571097518 537180117 404412306 702699390 357306745 52200485 217963895 22963671 549132268 744679170 871596776 485058144 277103290 147914995 303602950 821921621 989854170 782432210 265713466 382185832 330761310 690324189 367779373 821271471 862804105 661449586 130504690 866321336 290354208 569312341 76931522 526694864 210377350 428561919 679972484 242431280 742859714 365841102 699768923 697603843 669367241 237441222 11811019 472370583 761142506 852767728 975936056 393354220 768500236 117619633 942432436 326326311 285471436 243163899 309304051 644767094 89277572 706457836 433422909 125121227 433586013 370207199 265970086 952033600 393538003 791469683 886680207 137209267 889638496 821575275 575585141 456838680 654315679 400021468 298940971 618218846 580791649 869567134 533028500 323981337 40944346 83166473 467552526 967318898 401721431 480395060 109057312 9930372 471129792 218370818 384032617 802968875 461420961 540961872 932527831 914639005 381033823 542126533 214278326 109474965 394769206 299159368 991302792 761051847 711055014 923646509 790856207 279723426 89614655 424110041 728581482 352987572 679446126 803611764 355194333 830522130 749493315 975097067 868656910 664449819 466419044 329531036 71122981 566664892 819184945 584340949 92362344 131423726 315883897 969446746 169598199 411791328 802103925 158554163 975307295 186962106 659886690 211789317 761694271 561036358 867307245 340572382 38853305 678927237 636960012 727700246 22462147 651169587 565078779 69618329 475051515 170181546 230986193 344509302 457080962 284481138 505789273 537103735 502664707 772884809 561844252 164892164 780386898 880916047 742794640 94371278 292164023 751055633 965433962 240194375 815368196 246629958 932310709 333226512 275558121 327732786 921189081 589699899 709874331 650844836 810954633 249650615 451599651 768528043 608691016 107531366 582132940 237311931 611290912 535588543 154355034 140740989 638473352 589739708 523769907 347809862 182560960 867704254 376399590 851470912 855607105 261466016 789284615 301675084 287341242 498326483 23297898 457851117 172400850 262885649 901942653 299369549 302244676 257275524 572854231 139219799 766239155 550864616 26595788 464322716 70245457 70670181 574406823 920569657 89507817 862533621 164961803 827936081 330025435 45099496 744161769 191341338 694000214 778113153 837461870 381623973 373912191 207068864 392476244 159647066 247049039 814319352 184739253 347088601 51740102 500618393 841865260 480719557 771490241 182257924 981900735 396250483 512089425 401571194 539700393 958853263 926201611 218321750 850592787 144593197 738458929 555493524 517765420 47113438 102306419 112170679 941775752 723157779 181516796 292228850 444326079 331100604 38105739 994127279 395043084 626349682 316374412 412265839 908728927 970705488 639568095 941851612 18724328 405550565 416784840 152130078 863382115 881727359 971406519 903750132 55323921 358702002 33282281 766768435 908787262 71138789 276095208 934768543 366938999 800106933 10674967 750166905 37741240 215003449 809935329 487129216 787829610 398488344 242793818 754097504 487413347 9302698 124584058 479312502 403194295 852544000 299009357 824255412 195448286 534921526 346720595 490242129 377209390 678646605 813480729 41903328 583208846 739371619 765010143 38573471 766964449 881784102 132827466 491613438 858925798 877200857 76093017 215961336 935863318 232055132 484740319 424171812 429839144 357092754 748752939 376030030 869329077 905510323 663061748 270817919 910806132 453765658 196110126 818462870 916411562 926749045 832915526 772131531 277497974 167867520 877069711 848767246 152791000 907078259 10880715 502745345 520830779 765117457 756485029 482002475 255180484 3526231 412601947 741466152 172756708 68506121 377678224 347290850 549306925 432494325 475312746 530203330 9387248 542249058 801536152 772773113 99511473 864921694 668395431 615878375 940105538 27636890 485265211 397119093 602543926 575216655 788598645 605835159 877874108 160753114 746938076 930528781 349064466 141005130 915175479 871459109 973374487 13466718 466209033 281805569 354305715 196248501 93167532 979409778 896079029 338008986 577230260 265008566 611756133 740873954 839794340 828323971 901281562 476923323 814853670 130471588 163989800 370156686 739156295 828040907 832190711 161811759 167362464 151598032 462972146 446100677 659125769 393977009 482409501 999964030 906247621 266174991 908837567 580064806 761419865 468267616 410491102 109137115 75957797 936050730 158012653 36581859 358319886 941186524 307262141 567110119 694916310 531503826 683234781 737903580 65468954 249574797 392483939 889813547 355521453 182079763 756185501 609960202 209259507 238591526 225511005 561682567 385316849 923994296 355063207 732031958 790931946 766208200 302752144 173921116 210600742 737865984 695283805 852443549 378069643 644662286 486682497 95412345 728564949 482755791 550358506 457666412 822480224 713537460 517851181 277679365 574545341 707137257 788539905 617786700 440784337 414433306 8852313 990032120 533672708 299791217 915015958 338859172 244045589 688900846 626878582 42127067 862616200 454882687 51402887 453212547 882810578 523628058 912753788 944763414 766529580 822235759 547056971 858603253 980866598 943385412 78592501 770664425 444414281 671581913 164765888 640898218 486620233 470076146 262177130 454629569 485122508 34327270 922850083 14401351 857499727 224992786 429820113 521952263 427934206 771085107 174640911 596916069 327112793 716322037 636521730 715413770 200529116 211961040 25125846 952441557 259570478 48345708 263299827 961673874 158260522 755714747 127337658 841374134 746048251 752825938 192331805 409256375 590161212 606191534 370422652 831367176 977048740 763326303 306686653 229547149 592553856 730931490 482841880 940808321 482151595 313899737 319722344 467583496 120233140 608764381 698210197 268112940 11380070 26294588 42366945 752186022 27184661 475181950 807048976 877122322 928768940 690550148 555057920 36484469 25822304 23190969 61819658 317649156 218181585 567700979 268667122 488459782 743321300 547713396 50111158 68855242 370419747 67852415 220261539 765236966 256585691 313873514 873211852 131406833 584757981 322851957 697163328 524614532 135395329 392063915 243717401 8544000 864826000 467713764 86791192 605726307 36629656 621992911 890141781 262676379 875954145 864954415 881015202 968151139 39119219 755236041 820571330 419684885 5802586 880645675 590641581 226947636 847019105 910567120 720073356 898625498 297337213 582387568 9364889 68086410 506535845 44745810 105598883 792166364 901439990 294446282 344959580 865918933 503767314 836233600 984644503 119168276 55546614 973246156 649387440 516542710 373566710 123386402 565584614 138529882 877992493 871098176 265127274 423110344 41431404 733998392 872046602 163405261 708082301 377853435 564180384 287284298 69394131 210429428 331372112 477106205 237730318 279847240 308235558 227139753 7509832 871650791 129493690 928940184 616165109 504239927 541564010 383782014 603976338 837720703 102646194 51481556 361414958 737239879 255080629 327709708 737564908 672596717 743727145 855213395 555864872 726769011 680124605 194871739 163341009 50039741 79260984 263335396 742301921 530373649 948636863 406181603 711531787 530040657 745259657 359946123 158146040 507335559 795184540 629702543 627365819 30679159 915395881 93431434 159321315 682429140 256999831 367340275 764766966 197875139 346104601 595392051 210237431 369662204 777893370 66235946 514503919 823206968 390814099 511456093 565736951 151900032 352024764 192478000 471285155 943637175 428282858 81456592 402313754 396769843 491495717 770781527 478386238 499853146 624438465 867902434 181875462 370022453 554807080 74561557 5456067 140410497 592061724 850920870 53330222 740931024 451922801 153460602 23204280 303170184 240017482 705697694 704373430 607299771 259911847 599134284 320773936 29523220 936227450 348130224 174324434 455011193 60312912 953487724 545488997 787343903 20908717 751670047 617367937 274477646 252055233 595866090 493752882 167868203 936088833 286333721 21021385 784772951 781208434 130795482 20230866 920659780 896985996 689420915 877745504 918146973 899918961 935402479 279882005 772371609 747915061 416589640 329880248 657154795 554861033 68471619 664250207 393888940 659988314 465837810 682681771 204993220 672881265 913802242 520800435 979042397 22363111 58721033 550881248 232518343 632176232 589430664 74658109 434415312 146326065 788663736 648188582 454229569 975353924 220443960 131526866 133153683 120929537 448201056 650911951 223029940 359873310 482437283 532137983 668011247 62539519 223367283 799124959 700528954 668825546 423162471 91673981 625064390 471244867 303641654 47983008 844733370 132762591 210662834 226093123 150323173 22171566 238063498 918972204 987563745 982499910 330350487 78041922 499390989 904220604 619127181 383378372 600645655 692347309 817905794 452041778 85241011 257999792 685813192 137532097 852318418 194785626 5573746 118517595 450970102 346006056 2242539 612056575 984185355 54821610 609341663 70421427 873825641 829686696 645955646 50181506 293472701 726403368 225849286 958396287 168005471 822492866 280032027 837656881 153377280 474204232 22657625 216920333 420758054 182115759 501844802 583807449 785310446 463351133 863407802 143796755 585936614 966467281 530536240 138973655 485296062 688913622 731644314 319939204 343541236 306228380 178179606 895211829 142443603 940371422 224737663 839883628 252869742 699368846 399469452 825810209 983249289 520452026 129456107 118062126 9383921 788439972 558345609 132615668 264731410 461215058 431609421 995036897 793278219 861538801 254098897 908680833 107187306 305507340 527549989 110212858 185409408 570998756 863812479 741062101 80775893 183556391 566662603 943957256 957758706 297700405 873323771 68840014 893827168 406557445 418283565 561646148 607485383 518510013 519918385 482408357 919835829 755395742 726296849 404009456 506384474 33246106 384098250 288912564 547644920 301302282 18168603 470225157 870548598 369483881 252830083 372056742 235289471 456652077 962328243 815808964 233046601 237424600 230471818 634072094 353469421 383715548 893258707 534820739 758238555 706194334 574694848 862991926 600446499 130618847 798975387 783410015 858789582 593276533 580206112 517491917 426201293 198732680 714659109 593482177 356580675 21897842 290937727 961637870 314777918 550142584 973938033 49140507 852635969 139873078 621362259 315065628 819569504 546804471 280619833 674179070 931072111 251662302 805444827 913288617 896054421 545531545 738615287 381459422 304351161 13464639 248301040 584681986 339769347 56756361 108135913 852478510 633491530 105828550 101235746 968402290 918818313 353185309 599408358 474949023 882595625 780574719 66597518 33749001 464898843 269439756 648756647 362887385 196887143 680423958 204255874 427075942 410713703 919985760 731202382 425881758 529038743 168162737 559759042 50659287 130926402 127148407 61510094 518399224 882956162 469432392 543549019 179027631 30732273 975847185 288557996 169717226 201770321 173143134 121678967 99688324 521419460 453152262 639133337 184184225 328993873 915478106 123759324 969629773 887667562 746205710 171033846 663329225 827567903 696492630 654699093 680608043 955297253 556633974 55407139 661048578 290251653 883883998 696069928 79080442 599877729 391088063 397475862 942390059 403001574 627150167 920499148 875695562 124105403 453457010 885971915 237696553 517717110 752475935 274409895 506838342 123367624 946818486 114626810 889941024 500627220 112944546 203368317 203776286 228992941 775711633 354382131 187343189 386187756 417878377 896507206 355354127 132736981 873372538 993898783 13560882 643032096 69658323 291039200 608061600 468127441 755041107 849146172 785949321 395762679 740250699 900823273 496713309 723338140 297688953 417306963 862221622 609888983 688556309 495106212 958221372 902620111 333688202 183608673 55994966 886600417 17572483 254815245 560356181 460396624 341588757 409346697 907251387 875951273 384909031 918239016 656432837 120895222 114552490 198679766 763462907 100856731 72748770 539880248 301863114 482300696 471711138 25981060 643104376 868593706 714272968 385837611 320461033 194275022 64542710 36910119 682133443 363450290 513748002 439161104 861051764 315451751 701173693 259608532 191029477 903060140 634805890 865637852 927994072 790187499 631318646 213929574 620461278 19610858 849661216 77033960 298088612 758280077 796907244 705929015 452825533 651908852 835091154 940881090 249383361 468061214 871458616 509006021 630686513 914768554 697742106 607170962 328208453 235808290 794240812 527412798 958322673 146794051 637330164 822251619 600043749 926331904 213261065 364834301 215252592 884387701 653066819 8217381 508700490 116019125 422203926 820990546 937678694 62451217 448091890 175599105 26127728 241750840 333920804 745032543 11855701 658078373 918190798 698855537 743514833 723141349 890160525 273217707 935797755 525829574 966367199 193045911 616706333 804035742 179030255 560764114 49737178 982252044 662253548 282712571 584458318 574524762 383883538 947102705 697585399 657361182 364891914 17088075 590474024 666961507 532441813 558598432 8163861 866751451 757241329 157145554 752966875 802409099 140097708 486618915 685028123 72337113 884960432 460376010 778603249 300277686 911879005 103925986 758932048 492489466 94274585 765792885 649739383 550044524 740747088 102281198 737007934 254942552 398321156 743373737 706116112 587378065 913133388 983520232 84442505 495930115 780960619 199452963 221412720 469294487 999980035 424956394 171238637 936256461 308127311 652312494 204079516 824821090 993479501 781502725 761340388 560500518 328157536 964426672 762627402 264477209 803726009 701704725 959408156 440327183 337755219 659990590 537632626 231354985 68499298 282752445 798908351 39180460 534259130 111354766 134627629 105047419 945256315 264696130 23607535 139668673 624922958 651455465 285772320 807987307 137733567 354565809 114180049 374457664 616697151 4000236 564629004 280182130 568461219 483673055 287644025 640241059 271877641 86972324 828050212 463732553 389052252 580346165 893311585 553996813 377937480 194851961 938274731 411256472 494231024 629947878 503525828 47964190 322510619 175004623 308961161 688485556 931038949 689462762 43934430 852644054 99541895 243894114 582150254 152476420 813767039 467369448 388177764 492014511 178487299 350185515 248278723 881683692 518554340 773710000 45478816 37534375 207894570 879374509 598281638 219237559 602649609 820639938 165677620 353870641 493594678 715901423 631263535 985445064 832681858 642208551 599224780 581502928 415368947 428019764 717918907 135873771 213140731 416110296 83054282 835467964 963093586 795294411 441646234 204719566 425956961 239765841 681392175 476817542 1134540 321531532 752754242 624547237 556480483 108959567 471162949 2885539 279097358 239146010 377066214 491054213 34392851 697542382 546966434 192239207 376245217 826945170 261731368 407290485 805891365 946564259 794844165 982481563 290917280 610327315 79424810 811678111 754595494 141026797 630128786 792361374 690087405 743269019 683874288 184670815 505544147 208864023 194569989 716966052 419180123 895445297 719173245 591895905 606139796 972670684 479792013 716211213 813014338 103952636 752774835 75352010 793393912 328214615 374050708 737718437 981806794 899850904 118329857 590411086 122038500 422728495 434308401 325332483 39290722 467267992 855365261 686410088 327027696 463350018 552645743 551840584 637103487 376681777 670020002 963434359 800616405 113645226 199908295 83568136 597348079 138730899 914158201 934093094 636999634 345555025 341652171 829852425 309727888 879213388 433876226 954842173 451681086 587570572 423731471 676065520 61526125 799783283 576131735 221472245 464808932 330575541 1340651 399265703 770339625 66529952 760448820 814609783 701891039 461916155 185121953 450526126 127387538 811941878 716427504 188096794 730972272 613386978 235123652 486875993 596882971 275147004 613389214 195711256 62897387 262593767 929413132 552465906 477842459 547455878 527438030 178391860 184960962 338879168 443168085 979723930 463547335 310127181 206302831 888322308 934377196 17622951 522142069 430721527 100814432 111177666 316159054 929224810 440900086 3953564 700428522 272165715 197721157 621253997 408614245 542100614 388443014 545850523 141131567 687545476 433132240 473773811 128149832 779703710 756566817 907220829 843504844 616685796 106287956 257015706 468041564 226970751 67987621 224772863 21530008 873751151 750171765 652403703 69055157 524288204 646495338 30955252 601351403 989874508 168765149 216784224 801476141 832209938 207769187 841634523 646001892 584564131 947742716 917377798 306045512 641059229 141398308 479212710 755869521 254386778 47628333 158605340 183374196 270087059 982361714 28741001 901619304 517253313 931140197 637802754 459900693 383179887 461676001 856492759 729531165 209489388 506879861 933867549 712329202 753772382 288237111 620325265 932644566 444838675 21254062 213780222 86511099 520409346 344356224 552754434 773466801 253635742 239357040 712384817 353054782 990097601 143582953 275401400 407787780 598473234 251791326 95751712 327029549 1577620 567713818 242253365 23846391 356106113 621948450 451014592 742286145 541441005 12728068 582785395 953449723 9840324 121109111 34800375 572428898 473157889 309203823 725861672 114364202 742359599 766162703 585081348 334021891 373412631 371624292 943270724 525397091 366786391 873458744 377861665 658845436 173072848 534733800 554292076 233401396 733100979 410198521 80225318 759103672 816921628 843511642 183373162 263128211 867908194 191602616 841538635 377215193 123614620 762102249 75437698 581373021 835742699 951144271 801976477 134212929 514466449 485314198 912645750 691615908 248529340 553609880 735258453 614947837 935070844 448280114 904850430 599469795 29404246 43900999 586333342 891546467 577737707 65615853 724929506 889587314 29193757 908704856 75244732 528777993 142107840 262695771 588636916 800645182 367842385 334140546 329210135 854111264 668351779 245509329 860854466 65340433 668545359 60715983 777105552 972265761 461196068 176356115 336645051 699323386 359936168 611943269 100081170 381559307 899536675 370067672 851324362 577313546 209255765 375802714 980739921 851345685 251239444 310894887 831861911 579913867 16402830 797979594 785961731 500883193 246180131 225312390 83314815 373482626 936605602 269451604 326506371 935609400 928872972 481213807 407122856 793762114 585369854 8369273 844868047 930659974 287550439 731965777 225726340 269008627 538770106 406387831 253629009 287282330 540997952 515279976 537387259 851492668 226782815 777961443 803708192 663591092 221131277 823807423 588180266 461944265 155411086 691700699 942873915 551070265 442151355 40309279 73998046 743235812 9109944 848570133 856231335 17342433 563852193 858778376 31810199 688605523 65400461 216165160 788748611 554707262 816033048 671923991 663704960 481489832 577899592 606065106 872943295 90734004 945079402 873780367 964085514 401688315 124654492 27957421 267264799 840394539 575052445 733903906 330146410 875232638 870641626 299745569 434169142 290368156 455525835 863203238 281367831 34307371 656694424 122159204 78745638 88414412 820704779 661477716 438614237 759216204 688977968 311812427 95655992 763155449 600538247 999024993 122976318 523319600 61828244 895265519 99134024 113868617 932545833 129738697 715067558 845979168 23419351 434421421 551770341 377640751 130374968 347905363 897682903 727824438 741036576 472524386 1842475 151392171 694860476 292839552 530347511 919159575 712189591 517623044 64518960 28799049 328291746 56232396 805611571 841798769 370093142 642008142 659517513 370993317 815286452 301833448 579648529 122988383 296929605 343472535 765854118 813027664 545758720 192563307 952698552 322561092 263297839 65531245 747175684 939688090 921009535 846044536 910922379 249669240 850772692 234253204 796286264 1631404 201655617 734675673 704913929 267429186 812096794 939193083 332861294 224488061 658741764 91281730 542127236 418950498 183201971 156026104 74224513 43579587 562213816 737803507 418237441 125306586 198687284 658771421 331828901 31570540 94310521 905820988 156051462 726977803 40370966 971576226 547195366 82102407 473884437 76542034 365949471 183980561 643276446 829551655 851517394 819696597 402312128 574909932 762231483 173303920 333961623 645225161 480459120 146606387 179033319 539042387 841849467 595874644 714549248 417775910 314029129 301081872 202535943 845868808 628665879 324677103 719295071 179224945 462320107 730152755 918880030 753396007 579043907 593898007 702047461 31539795 252234174 598277655 376305353 20757584 433230555 749600993 338372582 174618638 828451256 259464625 186012199 381087652 358026224 960076224 854967179 536017141 220768002 593670135 983810267 465819299 252239415 732628842 696503955 873720028 132493021 321376086 935260917 870962493 161129595 323651782 396568438 76819930 398377871 87394708 230170701 216839571 336067937 681991618 738397385 537052628 162150242 184168812 628399104 723584657 978997746 997999700 309511736 230771579 465561681 789496059 721423179 312686361 686979710 38058679 806067243 148636275 728163165 921138954 797565846 603166565 386944250 395173161 743917830 812683103 991900665 702720639 388671721 402231729 728395167 796475840 713430041 976801720 105369157 625415719 89055326 438741660 596370847 735782312 174299747 778812171 721463520 187367417 631535944 927745208 607585468 408671335 545466268 44299359 66647791 317969388 791930442 907494538 507335546 208072908 426710 54332991 744801603 479249540 950233819 500081271 350077976 491461273 679719688 398641541 879910937 111421636 93232090 553926702 173626844 295698519 986201509 73905621 639748119 825748491 853779333 616079860 45572836 78593351 948944437 648277326 636980264 511383198 25594341 662268594 839247929 463916859 801821112 250261862 966085050 551586055 704274885 482761786 929782753 278815932 631423873 417308390 920691700 210043784 610916678 370215319 358513828 889383540 764116419 772357667 646416369 640181617 923375021 257417497 739836833 924568133 816664047 954741890 661958931 269660551 785003331 504522627 992586472 427550747 667436337 297263007 449887034 328950496 564736134 138098033 182709489 715484374 829928747 509267 963283144 268839011 533586478 847526615 341859621 503746220 258788088 419829235 250397122 982864664 201002800 110429051 792155020 556787008 824082226 617516878 841169440 403033934 620509782 93461984 53564403 851958164 49554108 137504922 968529430 284642446 743462821 889997455 81996962 225366229 361358479 659606956 640554228 214648371 755737755 757531568 646357617 50902258 252100375 764891545 469364284 436941480 722426811 593587463 334566407 199169761 429994775 620263198 662811876 804659212 739999366 58940581 115394955 243864129 427863335 655532693 169671033 509744835 538461526 91775358 816458392 84034783 246355885 797575781 921002087 331588743 461853090 531787252 106091193 211906137 642143510 626799620 630896771 643924836 800269039 664546988 616016303 311704212 186903713 245832358 480093458 944524755 204783067 242852611 380421223 236871509 816712883 689227078 564346720 944206309 195120113 32757779 585073376 694635007 497122491 219793930 295016754 671648160 575969538 561499765 880364911 816823422 19966667 62287545 254396486 821490435 634142355 143390089 936122906 397984753 326000896 40826559 663180700 219358153 916903054 141841311 116561275 288669580 141563606 927483475 872810033 545243553 388497040 329045917 630705560 625105992 802665123 717647338 522658799 475070079 509392537 375472083 523018852 129480452 505148116 938407232 994775760 942170906 309257389 446350100 294292843 839117475 767564151 878127168 705022441 968610081 187704013 393142355 562244087 541945684 185641204 699197752 161384241 90825078 499500208 359258067 78055153 156835207 186335164 595365444 609544932 977053382 768918513 539738576 300187584 112591719 416652293 696618391 405806071 41604622 434010367 640148809 617407525 627423192 198852553 947776430 632519617 838044333 21440518 28182990 549105302 703614892 638239836 929190726 935369859 961392637 543150785 599836052 930159818 951047581 667696437 183491943 561143306 339252543 879806628 790838992 252042415 886560781 806246562 636303178 719842623 367088655 323872189 533006566 24191620 264930093 193205495 323734822 733464963 15585017 467790583 385136410 381237984 999641354 540040596 270135195 806166121 287919476 814927325 353447485 333174466 987559035 779223768 931427956 468506971 802227772 680679025 495520796 767597742 493672716 633834847 699987306 845751205 450018137 332536457 80100237 531998220 178059060 829794046 466953941 470442618 233848902 938763326 222473609 71546706 371921623 426881841 19590098 948608407 747239375 446714355 462746945 28885407 406468489 14701254 718173633 666814765 34931091 426120672 427000267 970071169 258591165 701345992 714989858 276996317 475306980 94205450 766177080 206802626 46064747 378886136 554925184 232706433 952518189 505076325 807608131 548685489 588433695 929766178 689839233 309350326 274593757 57440731 888472838 987371653 950049807 125509282 35629230 85380195 951432683 382725335 223822140 960794235 298611745 106058946 656977666 33984242 962718140 385317803 424825893 618011549 810122557 105603270 14840197 830389418 273895336 782232081 959092066 278357556 45617647 382767227 470951400 883773551 675753114 640921447 93840233 370642961 855186393 302642888 995229538 952045723 984561243 687222555 231469470 529273868 528911170 125073853 366575674 240451284 844939474 492160513 884618242 648143226 862841916 494550541 265868709 505915567 189976618 495452319 458809390 743248184 716475403 654557648 103852099 885759729 257090056 481908020 186066656 95640488 102170791 344479458 562535419 106382899 716276583 625514234 961839841 862366483 403836347 837364957 212142344 273835797 295851289 252731059 900679422 122244132 212789561 536360719 525899489 775112670 565810382 958965041 399457529 134102981 578040631 172616920 9240816 1001682 871245988 56264821 458976978 556215419 768049513 265949963 375156121 468174888 991161006 488526033 738766968 667433134 376179500 111322327 176635254 987324068 382833834 204205454 320944491 206554790 533062452 632790143 759797868 640396477 151700168 988076280 329934434 820571239 365694504 781817345 262473681 307826208 71717383 290293146 512762251 299518981 977310792 389587009 862446777 775230585 148974373 275728047 961504642 588030365 401649150 696471685 307999035 233737771 871877994 853120105 510454687 51925901 207689122 244300992 6874795 286852044 902189681 22261150 746182753 132219356 170739729 649565344 768642859 658003899 315357559 512730031 481283802 577672957 749167743 178806612 326329869 408033773 667413786 357958961 906482740 301558873 200011203 539043603 312575968 974495970 930370600 941709494 124391004 366962309 442191999 476338709 303258936 294649146 189086350 628826099 974871692 974866621 684690472 909500214 672936961 772561372 370005326 938653107 281579875 987249037 703608669 817668284 943890428 600358504 625012761 468396917 63214296 676520697 350635992 921223892 387496758 609703788 165413303 698150085 771488683 893137407 650031822 351468162 947665524 612584589 992178786 50938073 879933526 347577356 814515187 722844544 897562621 358933168 917465921 402022332 728655085 661614469 495449975 725011411 361322770 945210511 190025503 12965410 809746028 448772157 839818894 462136918 171162496 421190431 230446573 348566931 874852244 964319473 676466788 685047002 558608482 721036479 412757600 193332792 944544323 578799376 912545583 782779671 116376310 879530984 135124208 70655067 15052702 152322145 134295119 670037270 629026499 911686917 620915515 71728921 618002238 108564751 521345150 390520003 476434346 292083749 902154120 140925216 240438130 924752662 147571284 457524771 942105521 265798512 804297673 175118082 352809118 335587656 829036642 173808015 602849617 667644844 731775217 900103976 792798269 514175692 810720371 819569300 688481186 592648995 533158495 879469564 526688655 91164749 289347354 211909004 886625218 994080720 355244634 649346473 548421862 563518272 621910594 408169004 717061750 874446457 188109873 973825601 87120511 435384619 99870710 254593612 656576663 131964477 736514370 187294459 107606331 872965440 792918637 79716817 361688306 884150881 848333832 83865517 927317852 245911944 56637468 508510415 8380321 241347110 750182874 122890970 696950789 682315711 298827368 822587083 821974791 659115854 845814570 550901828 246667089 796820455 960633100 201970480 223665213 938821922 243360044 741147074 928495724 963220360 26669605 83546495 891448541 603538869 431284085 663250983 40171313 595308180 556767123 529964448 599189755 203547768 869584551 687578589 621620869 660801234 323408183 158156667 601933568 585859747 979318580 522374746 209639766 394365075 932833702 247011481 10345100 741990288 269054152 232000638 222675729 846498833 376178964 49396402 518174347 433657835 966635152 140173991 718460127 120821870 231949960 235390680 920336532 807258760 133139985 756140169 705198525 312487639 284204011 170535337 190828844 760537574 633682095 170935841 136399157 649835084 71148011 348425332 645023491 418221966 138561532 817673320 641389956 666186418 119973824 536572417 428868416 704589562 594238497 497679645 295702781 63165247 298302216 554169271 85727221 661174035 680328035 921012607 479514025 108036640 367649408 425665213 450885907 316969106 562462420 447946777 961602607 709359172 525757767 780184438 672310007 832487302 14242692 780403470 312653253 598755959 432528785 885332838 154874477 627408410 28708035 915619168 684636912 841414249 516696370 68987752 453290536 511327852 741106986 836028626 518684296 865334142 151069270 507987432 49125775 221247614 960606615 214903589 729227910 535556230 752346827 559180848 775390374 723343652 665456095 719892 383262988 80163933 400900901 276544147 680273568 578750890 842129137 790993137 661324861 108150114 506861974 31396312 854413569 930306443 44295549 965522593 667009185 907729966 933885979 620473742 682798780 168237096 84932938 792156029 41822672 393385112 923424807 750269089 185208124 897749773 473504170 717701751 322516837 609963904 283194074 951791013 71358989 563154792 237762278 879293724 642784972 801213900 787496976 322957577 265844196 5320485 791460676 353852759 633821238 232852041 620476585 870787434 496460517 489388400 961469790 789245426 808872257 589162649 610299937 92987475 797781451 443539186 246895996 162071400 289247275 947770189 136408050 367415547 894704537 960167735 31566199 678755968 357564471 399726004 226871796 790958258 434349622 976723036 272634595 378810908 700003091 878222093 208528674 300644441 485376353 882364444 394217404 723145617 466550821 648670287 95468533 300029280 771778100 347523021 650258963 32963985 786328881 737698442 451541447 865748671 954578890 111183607 47057932 161064084 43045098 631132449 692597650 51631036 856025141 909294968 601124141 635450403 127684963 736652086 44990514 705428190 994304427 82059831 881707082 733747301 460653358 635866127 816008787 281720714 129369664 481225367 504820501 991223451 542295122 305798017 934354481 886335763 831900638 28003995 733839225 13279108 452710401 64197276 645233157 594119179 678758716 93722311 629537736 997903991 529213711 649853681 16205178 277991945 264488740 353212843 848628870 665264916 684031712 151489858 762907165 783965372 886271890 225001167 105168681 5227527 530708641 741383190 189392212 123467753 193090482 127293063 98002987 670271805 464700131 174931619 705453101 801236670 727207045 731223052 412985401 461949395 522609971 44899720 584938877 446308192 347127960 207031036 681300233 296588742 762096506 231273526 18945471 875587823 453712404 628426592 522209089 498142039 550290882 556851070 269462945 288976980 944846931 334633906 407608880 377294417 368762394 738832114 377211770 163722408 232057001 158949352 299838960 112757855 784642846 856350995 820397550 344904035 62817212 164224788 614619465 74149614 937578869 5888714 979512596 708185641 214331297 92889982 179810182 864426225 392300543 518005324 647962179 833606408 52980340 409647825 220265005 310656642 355888119 193826341 540658853 826789145 989308883 463143056 20966659 580130086 9855040 848968795 264320908 694462262 376105474 285826064 410421796 696989601 544922856 590009451 527700849 691509715 716222756 342032342 622708298 285824453 115658708 707890845 939089049 184745604 451928842 332421871 605394481 42777955 661741211 671603404 952154012 591931005 852293916 654829305 235652485 86000343 660560711 24869925 681334544 898996645 909428131 185456304 861233326 795029120 344640613 147465582 840824319 511983539 581705652 193015450 772326433 90007860 566544815 248570115 945490436 680728967 689622529 76294666 321358856 707215132 356806801 159932527 105084080 316132505 348860435 901759385 251761477 145546909 482633884 437489177 669230314 634399925 970171353 308079409 379956488 125386139 678049980 210450859 326876356 404538810 869276293 599749866 646929992 497134733 499610123 374499622 254863308 225897954 769634777 566131129 901711288 380050224 34202445 708959592 630706787 647427647 309188241 520350187 20865467 738587877 391262181 471556110 587945493 292199387 698698288 274947004 773717797 670829231 629066843 46424352 570492402 484716953 180881649 677000885 390738999 660813697 711034445 974145051 587274732 299524622 450011833 131892008 632097749 236206798 708669342 422002203 780467589 429578730 340654567 324095671 509038318 76508877 837250265 446047472 824775993 522901704 181955330 639625504 578550755 844739710 339006402 735536704 932578076 78408952 234074940 833544671 312617633 927078763 346211881 175410495 135513683 317507322 729953116 800341468 3049262 118421206 963151020 394568483 87697474 439716933 105576371 719431621 950240420 681327959 342988576 446353978 300729382 591828079 827579650 615240310 671179975 9178316 271212182 329360842 144887766 183532971 378725155 653420664 69431233 162415226 228491028 889234462 17092217 3059023 273976892 351966016 698260298 506750593 276634046 911807144 900145501 953814808 904283003 251431739 163235961 314281890 256642521 104192954 152009830 424734929 192918265 357148162 482697125 34729520 315726007 521775240 713400990 72472911 350608266 845835550 418928148 813873886 631545000 958315676 50269707 251083806 176189142 882778433 785842573 959261622 991634529 941465536 237849116 329876855 65354444 441922286 418779260 548728787 395318522 92063790 805419020 262897302 619217961 424186860 46602794 396890369 270456971 309998741 306241940 64098310 389821558 873456786 986117832 875950145 816612595 503948745 123334965 719406225 827483787 274376894 465812202 753251526 778951664 713150694 809388658 320389780 857853996 808709922 43964092 99446141 830157349 886753752 948522619 629378874 996029932 567261458 568523499 97824223 180668542 447517472 780446654 69251555 685678859 387235933 354587783 238703013 723065861 603999422 443089808 565083547 164254684 631201436 356777007 11274448 589823922 20661830 682389215 761785369 764697411 916082185 787200148 751005066 393341391 893750833 801000971 614090790 882071834 940171890 878789558 595068121 661197888 724418798 591565056 973402208 561256293 579806777 398569011 308200566 424001951 903535903 925537177 860593692 985090335 141341950 307130744 659934295 853051951 817651638 749870658 151633000 438884722 542079271 504752667 347973015 423772516 833961084 21243760 710938777 733132209 559618470 982615092 177184477 980451397 625026463 308603900 287398133 100625709 227756738 318765784 941489454 138008088 734749638 809513346 708698759 144765859 69660327 492115560 843502969 634827038 654595569 499497066 214238152 478752001 188532920 516387024 798980257 678201583 543939100 240966919 96433443 214787699 784306050 54039736 454367323 620452863 209650216 472851400 789616994 352548746 197108595 566198092 382289251 609416560 214889475 940835089 904728245 965959102 535946757 3818257 188715363 111590890 510570571 71789122 413401590 860284036 590741878 216129655 552709779 295233634 534207904 52499803 101921040 216267456 329604132 75721293 568961610 770178530 77085474 776569160 104176222 425105872 336800564 339798652 897028583 353486061 908052817 536605982 155527170 411465525 837521466 989422787 187857674 653032814 493804369 675302399 465367094 264599462 503854589 977885701 109553118 100421684 38024554 468900553 518797229 876478558 916408512 225854628 541850614 10897989 849302701 598519089 959574451 261285856 704204974 755895296 102871614 950589958 723094627 328143832 572163054 927269517 115104331 231687083 637583000 83012074 527305198 543034910 633317784 986448584 619889843 982223834 859662300 4693619 498022339 97726147 27585070 724486712 224193846 892671074 23034961 632733947 842359895 624945470 311649629 130828701 585796390 635444598 72105789 126782865 546527504 447191871 94994664 93894250 184786956 216873186 355989522 935864543 972630720 946921101 769225050 554840 427555398 55260685 580603377 909515813 574722357 986094632 860593782 444165313 985042286 660663636 438757016 425216405 839246549 61522937 709021203 989980975 555478297 985378609 448636577 508501731 549188684 447650640 821477280 751644604 494782709 398229143 51814691 490020894 433925734 210123676 241031946 909868611 121281310 747969505 614258251 844920929 829864972 16302648 158193386 120047127 124547513 996482341 59815979 742655404 124979397 313474027 139096799 89097615 515940988 260734293 818732719 570863773 72817327 990824958 787047315 424071686 722388311 924050675 886340232 778024000 841186478 539981408 553916833 378304017 145435759 718957003 826055396 440752532 50505479 714334938 245578724 379897216 132626387 177083278 972548509 644590702 740795971 737580891 45789639 822637944 935931997 834129789 519558738 818442431 880601434 873080144 30697723 626844083 469291176 881587999 722341641 950369659 424289879 242375609 2534708 235818052 914466799 71990832 75857140 191147714 5890323 833561260 876529541 494078563 971518335 515776723 552186435 553864747 989446567 615805035 381576391 615082840 249738418 272794680 141735428 832850400 897269779 997439873 752703032 683266856 105631979 281343618 988189074 306189700 419851107 859962670 295172495 551526708 341176410 302652314 355330199 111450787 265924582 851472250 142478466 676887530 147170519 623120226 187257721 896602220 644876032 558230257 359666241 664679257 697198567 11525103 296316350 89318980 636020244 875600525 707750768 531184684 911519612 635973690 512074904 655201757 231298876 675925748 27036199 537789624 218170342 200951371 360843344 180858291 876645522 207751926 810728553 888403681 832541847 685590079 453498777 586618480 950220763 960208111 865449605 279532454 166814082 119196160 950911012 588232016 426526640 288411693 119210881 673603397 358169348 259818118 436714635 841905434 526997980 866374738 726302003 755138688 136000712 627655034 76628030 287846411 910315693 617545417 581173970 513186572 695772359 225421865 480616284 19956081 106193757 498714715 905669322 225437726 992675859 336343475 374248746 753535115 619763178 87502391 41346550 778584956 668289207 953672690 822335524 256507015 655862608 925657599 828138608 457143635 694039347 31742546 535205570 901734522 673112548 739852583 576269318 346344157 655646133 904195896 615777482 826623072 594631517 324583074 106506657 645269684 395530331 874298621 61627370 171923638 646893418 849250817 764895252 955410026 664305922 940342984 255006628 983497103 371908471 51259038 771654387 87208213 563652201 62947307 605101726 919622476 914189417 673390665 184453078 216349869 397955207 971205815 40088758 809521272 349446104 526555270 545335374 8414499 393539075 351449009 805736149 794285151 871377865 465162635 815782848 926546555 140978763 388599429 741835081 212716433 641041676 735594 692776368 677158938 482694824 673375836 65711383 839817679 594919582 21205303 370820626 918220851 320113298 962901846 548128283 868379541 394577477 702466459 753668783 697430127 194850384 580037070 601565634 147574366 892436767 97121012 543230575 332801101 436138857 35335065 877298383 886880171 872943043 327746373 225623231 747988038 313892933 349536766 716320681 886667534 995198831 986068446 487166411 635980251 528696811 655561633 521373474 779005484 865277314 592967158 654217057 606533299 11898156 793166061 630441749 142501306 660867049 622564623 66804655 355696468 846356995 844843555 831847351 582996368 430431866 215021703 798527431 594824243 461724955 604267391 834832087 65137863 250978249 945750559 526756314 743547785 131139118 166507171 219944759 561696017 148192026 925191361 256638104 453651993 606433210 723757993 235316077 134581284 885450748 930046208 838313169 420378425 327207516 425221790 448550744 794355016 455404501 134462171 645746328 687365283 475290651 136316594 270899171 262323875 92334534 513721881 743648605 212685948 799500646 663832746 222937333 357996513 778639402 355675027 490543930 116605754 827023421 411272745 697310221 110902391 73567567 852280695 687884452 281513357 783413355 980994306 769360212 433706545 728656811 478036209 152113685 731964748 811050422 614759010 697333475 204535034 202557818 672081546 111807870 20271478 302585480 9338351 213606321 840450001 172322531 733358193 596572481 278915227 825079599 626571985 703578553 887719477 320815966 473097994 517577833 344387687 971786849 84257965 459486208 208694354 33994368 404334792 56989238 530313561 304523312 285830675 346651853 552145194 528623481 805028351 25035426 555974512 801410473 968214651 682001708 681494445 798387369 299604518 305079373 226929052 21536541 247257945 44429776 44349031 699541535 420281650 532957891 848239335 37435545 342587766 783408643 868184111 943808741 593894217 94147014 811905452 785862184 276078243 721361470 956621034 542854284 793113206 94330268 958486467 857942818 329343989 832355012 139191277 148453500 541198581 4027901 544994118 936397162 171379545 518143879 458494226 783029082 450507889 596376788 865202088 202859174 113164179 875895357 866861222 697281900 953444233 269123326 446023824 714989288 784609485 742927694 577736902 74343658 808624179 758641722 764295688 882217520 974845394 555928585 911684875 154994882 196922299 302081285 36229384 452176205 697053480 372292840 740788261 150921020 730777424 445594930 605746418 278046573 788810950 452802685 736856429 327370586 400944884 198887431 550099991 921398036 138800432 849901011 290269979 21761403 866070192 992730044 119747944 157659924 427562404 85708555 193631174 94547890 871536469 144299755 441345199 737218313 590574769 615939277 919280477 672924303 827930932 496771202 396391202 765018695 560760275 819560900 42897506 922721096 635167231 38645539 504444578 761786629 875209668 189539604 771638237 43886754 870819127 701220487 499682910 984647915 167553124 455145318 14949313 68546557 557592747 781687251 452605775 940856267 122889596 381664459 997958721 344335137 993653991 758344046 67057900 388592036 834003940 113408652 199080488 200843404 191805647 259730656 329220827 508687049 629555474 185788153 827176886 120621178 687866050 28370767 339036142 750793290 767455657 224554588 93557198 407640157 189928158 70009147 267747630 303961487 349370374 871405753 51138898 646685384 82380525 105316462 287822839 425218009 741469457 998202706 811563598 648141748 44348947 885343967 661357965 20735950 933925618 897769931 810532156 836965059 130293448 950882938 798814664 155412672 640846328 735780461 703152917 479332682 753180603 466266174 374500942 987688025 761994773 118926662 251419185 225565718 676862401 783771536 837773454 919655282 16842933 640995565 579205894 786512555 957966360 680173177 498597836 796191406 916225180 938155438 192702163 465282850 981053942 434823300 704066147 53232971 110776552 675064275 760684791 534847382 717591631 668757659 284594651 246812015 609555913 567416095 862570279 329462726 426941338 408299066 413752380 122839269 700369524 759866432 288703521 237907798 181177932 508041886 146426016 445210949 172588461 68752500 919394211 347889734 915434711 810681410 608558912 684570021 648877217 169663318 138197487 886522982 926778010 466628222 554498736 119226948 565164468 638247726 106192059 409730830 904659136 495888933 167343005 452968129 435471448 90011661 224677583 471807353 793233432 267283421 516847944 568215432 22769184 909090927 729983293 330163541 740944300 996762414 677677395 63218240 460779240 941267492 898816507 570039835 32939055 124529536 504673262 145779433 270275681 837230649 822697604 812800439 728242113 994584995 967236559 362638786 567284697 423900675 913795654 207516470 58301510 830270682 696715089 388330506 163780269 467573289 157856918 620016144 913509843 499205065 353600377 588804531 925230143 490516288 608777774 526886390 309759990 731997597 612598719 128011644 177898450 83183583 665906183 453361284 139740513 328229131 22902151 290076120 156952678 654781070 481016991 838649988 410701612 148166683 870739110 171748613 48980894 822145554 848969655 518291045 495060379 767005787 732043228 943114272 625864969 67966142 269426370 357700988 372744073 163781601 753014019 921046942 597081788 510238900 960032115 488795686 385678584 132997293 612393066 277860731 335007034 711447316 872671643 619269376 656349313 54906634 936903691 696657900 236739647 749299455 540915564 637088620 496693767 893372081 99879782 258505480 715468616 886298756 471567040 399079033 466828215 876100130 922925468 554898865 757260311 260414527 524643411 603589188 686407452 10931980 239723249 32459375 180973795 269927719 709739419 680704097 126251761 394440997 130472618 128113132 540908013 22476727 491164716 889821687 235018907 778152296 153965893 196503258 719210476 600609358 361486805 714384701 251741374 33115335 693783426 364300796 236198314 371931562 846617599 39796648 647324701 110808614 955119798 910891163 164437592 118512163 326433676 168296867 523715527 330300521 442731252 672814115 525783423 899972603 391522641 501701815 840371692 322179952 540061612 631948233 369470279 547162061 605925707 933971853 674582177 46146926 716640737 126384657 281370598 329003910 311944813 511446841 956331674 234784157 528497229 171780842 482514593 784628913 976253671 507283666 124235042 467020436 775182806 362531854 770085087 19733276 448088321 617476157 137380934 922623330 34571874 927196226 270923486 509380663 986939752 264991332 331925043 928727778 98842774 118685075 781501463 320311762 920211155 310237074 493065895 843091697 840000673 478996221 484866148 219579608 195508770 671708698 576818804 806138170 474313039 141730083 291481570 293788315 347235312 137165461 740408166 669463152 919985929 790893128 407080477 685816467 756925222 441623421 261751546 813213813 238561887 521252372 998674895 202535911 941805871 175801264 277733181 364114933 393660441 35096384 279760961 144168106 747387174 10828468 964878428 725417031 386827368 596493385 485247483 111216148 668458112 466935567 42911824 213978743 908105849 840984773 221420289 202186479 978257514 511272877 162204557 705052915 142954359 954726331 137779895 512566030 855445950 37228912 327940943 89644490 300628334 374172118 125109079 177959935 11725526 245679700 335014131 196481345 335546076 127417943 786742557 14193482 194195510 689290316 342708552 717691754 405239147 229684022 725295104 719284751 479100936 493335717 212965860 415732710 147948851 556371946 42299246 903222208 928992082 127510306 807274188 134306619 815978 161590546 345373365 42020658 777498686 253132792 935981190 276877245 339948465 321330751 682240487 185543891 795142449 214340658 943790398 977810070 513579000 781919816 641728325 268873223 975161571 923999804 858669696 170284646 975891847 514938910 397158723 58037707 513206772 902614560 770499205 482772469 328558742 792769651 217750791 675832162 220116787 346688412 622985725 751432738 708597139 579391158 312717236 712945796 403090201 219923257 460938080 1844254 277061587 605496976 796156723 94369805 798295387 92268682 12818229 607705799 756107639 899136069 470181318 729169403 156693218 676248582 795417666 708580414 468932292 949331042 271243885 657993663 927546846 496678134 846011931 523689432 109519226 289507782 851971432 821117863 686667799 848200268 663183379 318118888 618075290 348982160 517032857 639522113 34452073 935836576 225437648 267045679 785780749 795855715 656493735 38891700 235930553 643446468 251982116 116565925 513275864 35172111 879666919 270270673 105712258 193618389 830776964 215895499 634536310 211393484 372353758 398343221 233733786 964502504 163046552 686782206 372869569 618786946 828533284 550421936 757170869 523202834 627049060 474139329 462292717 47489964 360765671 170587259 81267787 695015270 158408640 517865763 256094164 438524554 315158178 895281015 316489513 68902979 157217420 801299822 45840841 448364255 486666366 213111189 903907522 873324870 922302175 187694121 197245853 953851669 172672092 742536227 455918942 503389331 579167127 984234160 836503209 7804672 727007563 354373427 139922133 307875201 527171691 724085639 468841973 950492008 188155114 871679397 13763591 445150200 671036320 176374645 850003742 835633148 810068723 912136419 644698737 662497713 849808312 701194691 89482512 826828266 877243192 948416222 690902359 743084122 876726146 589831494 430614559 661740633 479351285 728844228 514398709 689359294 391155288 683827836 305478468 663371039 869671256 856814252 722735866 421087472 716440423 273665333 176798127 649964611 229985878 233549820 80827962 416662696 872141930 157555884 323778717 593669981 590743609 879571318 430426939 900214808 346237291 309086848 676604711 402423398 422365894 132592620 682649407 259701216 178392831 426479389 732021853 184631614 742399273 37770805 843774085 117126557 121991799 211662169 781365849 828607855 125511 347228663 538286885 403929253 513090812 131974023 48701980 861560563 691248520 165350317 812361417 824361328 412078656 936567995 699960926 824591862 332585342 361590027 385732278 814088394 461812542 86174260 600884446 99760686 725172652 984207175 962012985 803708739 647298319 648461456 825370502 400940630 827103095 679421190 230137927 409305523 311617087 889348544 280324823 242532077 492455333 959416364 571752290 935689101 467544738 581556677 670895147 737901055 822483664 975970631 601950944 134244760 132045919 688604137 533048626 747549038 885036815 144360869 491889173 288233415 574536499 988520733 610071621 917803704 989551586 603794272 388689351 238239008 237921140 38757467 360097547 129796239 3402423 499475223 860773636 807327417 546287053 667878801 594864061 356613970 614863379 258875772 310388743 580579824 937836400 309635071 143160393 282466191 483824666 927003577 855738598 155740471 246929605 536236038 690235249 865410198 599462547 373261335 102982204 885364673 990588583 869870753 943176907 987322751 117094074 412547101 869370122 106182694 524910250 204989902 692142791 519910180 457249098 684568740 981416566 795058904 918003704 718216999 282448509 181022426 749607775 318007014 453094033 174858788 734278608 885111455 669398244 718328591 232792444 496446093 265984187 673265254 768619536 797750845 240095488 739338934 715026238 428142880 775674913 307068710 378225518 363091138 714987382 731079976 288350200 481651421 404643853 900557746 72626443 404508228 101905818 613775688 873606300 61721213 910770766 529112823 638497313 938100947 179957083 910244178 804334050 158010324 386478804 62778195 142570722 460882680 329165805 258341124 532636024 681459630 54567120 821129615 405408761 597416566 240684328 247216994 295032012 45461383 783467724 327895154 616288040 518078670 214534180 280607435 742827865 898989890 551099885 303361643 999556545 800280823 379431509 848093643 136284917 441204622 766943896 858388110 43515534 44005533 414428297 833906000 587748026 833683231 463640119 667447859 541430540 945643220 679806200 947050418 600275849 751033559 421696135 71282213 565137527 452624437 457106070 995497184 623138084 894332459 774370586 535448913 607855375 37074613 122226041 980821584 334403032 50854845 130222307 814898188 946969554 42452023 318833066 936880205 622241900 224963350 600500200 790601185 170550509 680293691 323674557 163801693 663198650 838576879 738838091 495452844 62968451 364437756 503044701 454486368 447983971 355458449 762831590 340972184 223290108 410593203 9161239 168636364 519545699 941116709 79218898 66139968 70901972 921313738 6046889 733387241 404576690 324516059 790290405 453540123 126916286 44600169 488684632 71290679 952566749 336670261 280501040 206352922 289672064 946769273 576360685 290994130 127329702 514540248 200289209 648710797 295169665 827817699 984008536 922360138 851921659 735057773 45168376 269730198 499253447 581556910 560779977 614835157 761726985 900932398 231845536 399668128 642558144 957839121 914322315 639428653 827016983 478492557 42980998 933275032 727456590 177453790 510717321 545165167 958064751 283801055 629541599 565901085 291794090 53925817 103549235 282863370 514719892 103290557 293410137 671933299 747776289 181972919 10479272 962457958 316822975 919673803 673327190 255415202 263218058 343736009 421488890 167743102 489572129 723982746 113513017 80052457 885594092 270546134 324798943 463397895 195479879 512734794 244177698 533641778 393966224 533051098 526725529 297166994 193000593 320709859 728210735 113339294 736853110 707077831 612125204 179162549 69358028 100854209 580461406 989169696 59752770 242408966 941677314 48228906 1152736 866307982 594594675 138666113 554631156 701853351 91753927 873454831 346080868 457717861 972131886 342991695 44143831 417508854 638585439 702101862 800511093 665532871 260805887 373816464 393416042 652435716 210027213 750941779 130264854 26099891 119464646 979045311 332603100 876882802 478523800 814608170 516614310 520370258 583756562 524153750 929673598 470087986 915402025 434653965 223355435 569997851 272780378 534583564 229877282 911156584 173980842 937831483 816595998 165934541 2236003 889425830 56667075 922453162 837261403 280099023 727277395 746300276 67867368 714310281 848496716 398406430 56005870 908667025 342421337 913244756 72623002 281328611 385738579 241624934 699546844 894791628 43684638 726233440 119036887 223637237 151837805 628462374 430926358 329430784 942153456 106777616 605787214 905528401 282506079 917823432 472903957 56773588 976119162 435868508 237570745 510137122 354261503 23003222 522824960 453337173 453666883 591463410 950995826 685288979 876669731 264218499 45264423 905069263 342100501 128106356 223761928 173343627 697900767 420261017 344061035 970910122 477755069 360569264 887648975 960165943 539090439 208634786 571203213 174946615 497695323 57708160 906631838 737391034 157401951 46333946 251723631 752776083 976640652 443615203 737292598 409571275 68488261 182262334 451675095 502118365 541657478 39139159 444924462 97693026 200795218 736123487 611136721 258864659 115097798 88677782 107587546 113870930 872821469 343397326 429625382 493498748 75840632 80123059 499538901 422539304 877846254 906301662 833933366 367028468 797788264 780799543 62883540 31785999 589167151 799673334 691309634 945792040 483210593 732892238 670155867 694354207 146226225 714185438 617620616 391451466 770195604 44030204 95582104 431628187 817345230 444172565 894924518 915945399 137367172 838885387 957560304 632042278 791995902 179771563 37164103 107721279 472605294 55935929 135455210 754862677 91908189 739141979 17164246 509445985 490568395 310605802 806408753 380372444 997001551 161779410 604408087 402893479 657521121 794079895 116290088 45137964 236960173 220375719 672463325 248642093 937180544 72086830 475130850 707484204 517503975 874554679 954385298 614748290 315250236 779370237 823577218 327754745 343545769 117245861 710263730 198092602 888891962 805182830 481583476 74062410 914739010 31994543 114994085 330641740 942556756 314489412 397490199 71644290 222938433 747841042 448318151 941117927 77484638 932803406 24208628 803065491 94000708 526810831 3147773 406689472 544458636 144266829 975125274 292944956 969430430 520898510 390620901 88194008 1620851 270876786 258508336 812180884 28708551 234258768 894278876 795442700 303874792 781672628 803289577 581693801 561216585 463685721 120140435 672670964 107218818 519048569 762085000 270274420 500214828 767809434 969258796 736553813 942981005 735702809 589747354 993729406 495173782 547179763 360438301 899584132 285969071 953136662 666923847 781807565 608782416 94860649 913248977 556662878 403133943 56568334 452553412 431827098 453876204 874999023 820605241 104688307 142479720 956085790 362175549 516107055 31126754 825760364 134008377 507950442 538213548 549561967 585134836 987889811 191651556 471709580 165179350 346777840 380756539 287263600 563512406 318971438 200828995 827382300 763885595 267509887 124552991 213887231 147654945 951065714 24718916 950538393 428830992 888517800 580101070 890558912 311216982 773111599 429635711 327928694 637308377 113194555 74116787 747502547 77539698 110530083 511466113 70966596 367516945 571154762 186922513 215272213 102332398 500712306 589982489 694961269 528653138 657340589 974006459 707381535 18872410 434604384 568101120 520086836 683286159 858491734 526894718 940021128 452679372 649956638 553866235 404335060 350877194 932810853 44927528 881213986 675094013 811961272 864862516 220396803 829486873 244118991 800810323 6915249 822895254 284229451 815204438 830530941 67385086 115520904 628758204 362983413 631682382 617336930 562887414 232697461 337612241 113852889 974393798 232743804 267257670 987810721 324468402 274882529 8901988 818649711 548901702 219923651 544841863 399797474 872499736 348239893 897291193 397635203 511357860 904119862 58650056 808209877 970581988 468160512 874166956 149714673 935634336 889671917 562019932 484923251 731874138 400225870 507339641 923204874 521916891 877805076 819019407 387603570 693007352 673286705 955189787 907609117 340219427 726793235 74147979 55080195 404442084 653704766 133921904 748482821 781761571 785289653 75620773 114039221 170756433 61479902 318524222 441945637 689411698 456844638 610675091 459152741 517862717 823801713 788794348 746907001 578995403 296789492 542179195 788908998 882055818 540004686 202019223 744029047 839208486 7359425 613036489 791422103 263506204 539632593 607868577 513129091 154949366 860998912 976875950 74570705 351975667 856212256 158021027 486050012 477475251 536011526 968351289 846724568 265864783 306790686 614713489 194947012 762734860 945948364 298277682 351094861 107058362 469501845 773984349 707763314 46440102 638510945 292030677 552438698 271276132 115844851 182657072 947871784 978087192 247210126 322910613 803213316 650727686 496295257 646854391 288038454 108721281 971016913 452989813 303695799 576139437 813772381 192824815 865707712 591916218 807168569 53933556 788141141 522581493 102292394 605995644 61471781 353692649 825226871 148364409 746806238 896586312 696134060 666010487 226169361 310239756 554731706 946916636 912098006 706043426 710342361 228894362 822377679 59687318 850774716 300838125 466189294 235995569 240881337 558404353 547621201 589523953 735745845 398464296 687318921 439489234 536910359 944792773 149805287 816257938 199827333 200028055 885226096 18461818 928140320 399059673 717381294 324830877 979073978 101831305 834152782 934869869 101187541 361760746 778761207 600753696 267032572 431226433 856096453 559680615 870904311 404011752 418206146 968417752 387285251 23129070 295419679 766490846 822242263 751175490 731661196 428787596 265683319 571649499 728966521 162770110 359603098 409615390 263097091 94420100 413448889 10834531 329715369 455067625 608694731 921715467 115654423 351138224 993977506 493269566 464863884 344753583 936429353 941887499 342601387 163419822 143513971 474897149 635104574 65250463 579632623 179882570 341760574 516041331 961497277 236865216 856109870 608587415 383611871 741466680 873406090 792325316 69545324 647351917 465450031 548105734 201962116 900023138 844097469 849567297 352217592 265157139 484608168 789998119 333194829 51072874 63619670 325976483 794653650 797319801 815977021 403035435 174312930 540077701 845904470 980490296 308177639 203302426 689510770 133407609 989772023 742948356 392286152 309733533 942052339 486005646 162402720 132999830 196870432 808852376 423241008 18701909 376156342 844110959 857655837 53073401 715901224 539547340 325546352 736849179 483001152 905128290 949154118 595459563 130028569 360721354 998640222 910250698 212194187 588880021 22220444 684766768 636334284 795380736 182923562 711975863 326136911 274505386 655105554 537872886 121207380 972356698 74586997 777384599 589157040 961959947 723758866 383018123 163765061 340241624 675237959 298949988 575902177 957249630 699595181 921936016 874510309 531920998 318622668 335825693 210996875 977440249 949793214 350997954 288195949 523795444 825476247 296899409 211911673 994101256 186683757 574482547 325756510 721462582 419708908 90959154 621938500 775847087 681614861 726227283 135058422 304598175 904169100 132439022 593283873 193402842 434773271 917045542 960871066 134665184 952344644 455377586 906114709 336895875 32394243 28317445 242833235 272075519 879373774 139265789 598667670 253449343 228108905 984185078 325212947 889180439 97416748 507820957 476894117 184161660 487353465 672824656 396027754 589213916 66786357 943044415 338580976 390871966 640337805 170757221 640651322 797223456 484335192 780071208 933828040 80237894 965612247 878341785 476050006 250616487 973580060 136265866 525025740 612975429 220788538 272681692 346227258 794110471 563986693 554717439 753560171 109059454 256232442 544487431 435966423 119067356 858334233 528751684 58471172 582339747 952979170 259204886 527630844 385367326 716525724 998012981 990885262 608754470 169775875 950454674 670569661 689889530 101094414 237365108 126967855 91983105 429942632 167552051 139629128 486803555 294048251 798233671 180667084 35357772 999025325 382649678 700980721 610312458 376923941 828636419 984160396 93862914 493150386 806999726 961786897 466404235 525879270 766762011 560778408 793688292 158571833 665244603 694773124 296016263 185127259 376385852 4000880 318874943 531156176 354474863 905840954 614943570 77226597 70173063 827257483 457538124 534135377 366626951 727855761 811811238 317313629 183036569 955274865 159822302 354542791 92896043 234165380 271209367 108490930 726393561 17295128 192343914 456480853 414252562 682576507 642049283 443589097 47684654 940569429 171018389 171904978 411327162 857876411 823990335 187692364 329808576 865020068 309391874 790293344 414966366 365106079 662155020 537525995 823717693 755604484 401997786 444299197 874850390 823386267 95757627 124889086 409928122 270979662 454187595 820920197 707174580 865520766 279095134 9205627 53450337 357307237 211252521 271714800 599947461 70769246 800569826 724793111 451403499 554262957 325459031 437069745 768848781 966778689 627951943 313940058 691958155 836095346 840066007 138714948 290356322 65027158 154185947 585931005 635244006 278275891 982151514 293638532 3730092 655091715 599722713 936893737 157740338 224029030 378383945 484575499 591237201 757259246 362357436 127145948 28196948 454642679 180578519 17914740 952390732 887346607 441660082 298956867 534636703 490250360 467478601 146667654 356944585 186947987 852743228 835072976 803275238 602329235 94867350 98996385 997967927 800205104 983885706 418686216 518683377 317997954 677369550 534680958 204273161 535226405 783779809 446053681 635021221 263501409 496359020 232642144 225911507 332342054 410826417 170368891 420299636 121048965 943603421 378148629 381254358 833397205 783472600 974123753 146223664 819691332 192743672 29114147 295404949 319322342 35068872 81457448 138487820 249456370 722694908 774472823 514594666 765193800 461292468 104983673 648607603 461031923 668621593 27622812 679918817 127654636 502478079 275408104 550490099 563485922 706827413 914582529 313211055 585798560 598674746 65575479 431117212 420716103 337711949 664766997 553039123 291998399 103634909 768621757 852856567 433819002 987719906 199119176 159457108 975043843 712362457 959910777 172270456 91738047 506562553 187557202 721766382 840304178 827866825 958194822 222600212 295829317 473174484 620229594 688951019 719501806 315639576 163893561 444143981 177508957 321324375 777277593 659442099 302484226 871335314 17439978 483533428 595676454 739912265 901846000 915689966 54847558 74894940 442609930 122593579 152377701 724016206 384214908 588921040 815229405 623123908 95936002 489553760 790730849 764097541 834145674 517811747 286136543 684686 825880896 145810939 420206823 394742628 446614289 959185814 621252631 478245571 261160351 975589204 443217030 342949063 906599826 182877358 847114386 964846434 602712614 197601610 46079968 371612663 382281979 976143175 791740468 793651432 834962136 971779213 845172018 27138731 844344100 895703738 280807919 953559181 332280833 695524217 161265208 938943923 140271414 267816082 287437232 817359884 624192089 802179898 273106203 558436091 800573770 260536593 584882466 383097400 808631016 745151801 63491029 870108835 834724000 62678550 769997389 3255990 646446356 912072820 572877227 773227672 690070072 309123573 364042700 748416497 776841956 884756485 168945341 798675582 816383092 585756608 356900997 133979705 960934335 193103352 852650457 897723356 459547848 400211308 771114218 362898506 22676515 208756798 185586347 499606822 703245655 39325635 990007212 474906476 688335572 633005165 24300439 94230343 344187656 116029451 87369296 719010785 6425892 241445101 475053187 794857899 847216942 190177045 670330670 229439465 529125862 601590945 537955086 577899361 893751177 7763937 937845572 706082698 501484854 435324922 948012344 536679167 474595811 317289630 389312892 617222424 237248586 186889118 43594859 966184900 953587348 481278070 696384543 123397458 883481890 65132167 868595920 476270028 353206757 554801198 266714592 969549908 441910558 889961292 668805953 544323217 504591631 983299251 907849021 377708524 274567147 306252119 885598674 444447556 532166755 572236032 629935552 852187429 915268519 255037678 533092488 96722712 182283603 491075347 286300660 843319785 747729834 192241258 651790888 464999915 894671478 434790366 432316128 948222718 149229818 90125073 831905100 162568293 118967687 15069553 60580908 226564742 330118608 377311227 590682535 506996165 172869918 589512941 778153854 105065924 909094759 498160145 458894348 792699956 59527421 945867521 152699558 28840649 20819234 126539976 951287832 313794761 376040275 160700447 244070308 848990526 437058579 480618961 23576214 406771772 762059072 473079423 337408726 911832522 319969812 360123331 417012711 179490381 380306293 62705023 583981976 29246809 859069208 96786904 105444695 53689609 729109300 10756817 47215751 771163433 542053165 139425951 125244307 918387175 304854409 448091865 365083508 996981469 281744484 248454843 922331981 682675014 829107958 10300 311107983 688470123 610358821 850188672 541289506 918110113 884783927 464481887 433067402 670027339 877649468 803385497 866216176 531103807 794287922 577086792 223531463 756170097 564780754 466469833 47087911 141042145 62562855 576755784 426898400 348477474 934549967 171002892 430874029 38766488 130680535 717679724 128076799 175612182 898409049 818665447 289733176 548830562 545030057 338089611 925632473 383999719 800698756 491366755 463396283 204509994 777116351 602150538 50079516 932138026 817215946 730860557 645152959 83264096 749580122 725439253 496917692 996846683 258668370 207570262 84519797 698691846 106385516 809003341 410184518 434184914 162359025 321447871 304489121 916179974 202809037 462743134 364153341 961476279 912221324 474661534 343918624 41707260 75349344 901133148 469429838 219341919 93581456 197331232 368021137 482824942 617512988 237652109 912962040 833441670 597881616 155525439 44053471 808961110 298608645 530941920 799458973 973326887 86785172 617953585 184240588 369262161 316136926 618551977 32396777 300205973 539151875 554527543 362229046 935011661 775828967 521858492 118463685 252877562 468866450 403985989 887905598 813359543 107185710 700839110 827093390 529766955 815510745 187240400 456935091 205844838 982686370 388375018 337401404 846778573 312291665 516072542 429623512 774282945 351877487 291033578 446365734 503432435 315700928 467377820 692721319 126715727 746178586 955468101 932239016 17803510 870049648 148459443 77901373 363323667 536852131 428790487 560658600 847293464 74497334 25434469 220675114 562518598 196235151 267048153 901157934 113621627 14457052 296095071 603792444 270016759 223624842 503966015 498216308 599711563 353457164 586237967 577190832 776377259 214493046 92878483 83205809 840518423 220114223 630146295 92479260 972653872 617893358 132369114 148944963 848048558 291732472 913308418 126871134 390732518 870837480 35041923 657063589 40537946 126214866 100888915 353360544 185750287 434138049 294873346 540940727 851803086 468961783 245255971 578015046 487011562 226617027 728175944 985613006 27466468 672805383 703811624 247390925 347796365 581940695 540536245 93067237 150941561 869446723 180414694 866365249 958100274 883490938 60272360 573329269 247364621 250858506 802581636 680824663 865029801 676759696 886448179 185095561 854146490 619257650 126816175 345259918 225541073 22985272 682314186 963714358 436618606 292339283 336320879 398615142 178498546 337018400 836929104 673075098 415760802 116312342 514848716 651639203 413657173 303391326 481651792 687090693 656897684 586393025 290110422 235033597 836861305 319683841 490866737 36078214 544818871 196283206 423514269 409043553 981567435 846243659 731828150 295221505 453606473 406201008 838734051 168954782 398040137 525859904 295540948 167025012 325724418 327965557 345804989 125085282 326078850 787183444 852304008 151812281 967176625 348976084 530882622 750795621 753514771 740340858 122239304 424849401 239359987 770753104 889041050 131787679 683740772 217770711 557591951 986988110 55262003 292750153 164549802 432827454 135916514 571914212 908289370 861284419 267991612 480363970 501696496 41214275 576239364 291855193 574512359 756621896 737757699 397682708 628537311 101874770 331885541 910092636 337660607 814149780 764025407 471641888 213954508 654537244 589127463 217075992 187585015 655329394 384288022 336403934 753431304 241948983 79471258 740934987 132697589 207278723 722885392 694570831 74960030 574527216 102105511 356714482 959039070 380721325 730502200 332179436 630739347 953936096 567521687 32961938 761726374 850913694 542220382 946733386 613311643 513016173 109143504 522307518 855547641 71443627 224672961 752491835 903183282 759967555 154140806 431057292 884204454 970533855 298482826 575949185 675643612 907911759 712045553 689852314 413271004 421155565 917007125 330349831 748967753 574108333 324530074 254473203 121520170 769816388 299299115 612675429 251660001 238459602 249735736 508030094 22897771 21777887 698375032 490045929 986192493 142057500 795516036 159788039 576794328 759089963 457259777 214042733 958044721 754173313 501621047 514735435 777359385 384366637 80619374 645080163 310377843 516473127 300878438 882434032 525586922 999991597 221882346 291227512 802259496 969837920 4527787 575469378 220124058 790251455 141136524 254030569 936321703 993439315 748684342 156213641 217250088 813586990 677895104 27526601 703922401 350578993 254564653 525509268 937443031 543418226 77230233 304581939 854284102 636531397 566668176 39326722 779303567 468576422 571967069 757985027 112726025 930211656 386413010 114531590 151299386 207154260 425552862 638861363 9846413 475875126 303911141 154560149 810957418 167287943 478847884 449608378 390799438 849963225 233794574 259839573 511862981 940168324 3958008 886320743 593704356 347305510 201888510 68278519 387668949 151545685 604199948 912367070 185056754 394347478 171091971 259376680 911424964 308077041 235864335 479800286 81699921 986553882 267451166 590668847 734293393 83555983 621220704 354379511 616521189 923892048 436374723 76873216 876105794 380545728 839120632 191676544 233908479 763670091 84657633 618584818 370358858 241748748 58266569 768332517 396358973 299812585 333711106 272115480 966325779 37447388 724372563 237389724 589685364 790694912 879687849 135510407 273322162 948885793 450662416 790694449 326763353 776412721 125304188 970583673 775829656 469234801 121063612 792494621 432081086 320401345 18597863 277074290 998601258 818331114 617442720 452819465 55149297 285364 271675228 327989295 796444308 592510362 232714438 653097464 264230487 414548815 760919838 861819015 226912696 991036888 627863935 132638722 43580592 631871053 721114690 746186624 539891827 424963454 348979536 418203694 40729161 577765986 505550434 760088952 474545692 802325302 648352990 697156252 49346434 797024361 327863323 228572423 262231350 152984970 46265586 957121868 555865005 331084908 208981132 580635656 731517841 223476015 722244857 367735180 803984482 518601723 797808055 248034375 238333523 36270770 427883864 142975767 629855183 806758413 749699538 214264415 57640178 380313761 33126346 199643480 638599162 950880054 31643059 183419062 319748966 421805832 158399673 803259032 264059992 89533065 329005019 969749836 689630836 455764895 853102138 750411932 341591748 489524705 840906454 372878783 650300154 275446150 791617078 137638448 154206329 710578221 665847265 911794269 846353579 219292726 42735848 519221206 714291417 906276274 404634155 66067499 710628292 921600034 513088216 465221937 474887237 629332249 359911957 668111498 859869167 166032801 195764715 694858282 400224037 110253248 404769095 542835454 25144289 95252489 632349597 551910082 290307670 654197543 567128591 854813621 894655871 514380444 388251430 929216269 543211156 363192143 56860663 973907599 555325749 709279116 710608305 328352668 977733842 641320154 742865482 920842151 507505851 172672814 459025441 467980230 974497154 515744645 648426661 124410280 457566133 880533727 500114679 963717492 708387802 932483648 816565208 268699619 972113731 154240422 991462455 599004955 498580900 850017817 912013617 705059355 521668262 687432885 511099457 437777102 412549534 617522185 762463230 5607948 795154070 299808794 316383948 103669840 133825601 54065407 718421160 935386452 401571848 949721654 320372995 54635031 207211553 872446784 523419708 90146203 813822998 632859918 520640580 341980948 405512020 491696696 808207962 738612935 113561410 218327847 434654931 385238165 328107340 480358606 525854380 167062652 433666288 339861553 780829681 444726066 974360265 914397259 682467759 977459860 376557750 972996516 242641849 770458613 393197258 594214468 80876282 150264886 438686405 52493953 270045213 811497597 733172854 529450211 507284001 226797171 696720813 257872479 69702266 723466829 778318093 419814405 475851669 264583891 300991269 880017622 98054496 12572438 529881887 178253691 744229064 382374822 249462134 282715424 616632514 353107211 956731562 271498657 816974795 326114180 611250269 894505889 466679159 27417701 592289218 22924596 490754064 493925454 872650684 646363147 981362136 351441952 277034878 550763304 796873992 405274134 76802032 11274753 935136171 853645356 670452293 888325046 267408971 622591185 321876278 820252310 105937153 667549355 770159108 451183103 899674892 144489267 219521447 649739690 316072279 753585105 749142798 219801112 756005109 526391453 693023646 761730422 28465191 619046030 664301321 795515156 44383812 347737186 840848374 202411906 768635910 291968931 125350521 42619666 414563832 699972081 316067235 288075581 180839648 502148564 437949606 298345781 870803758 674786773 399595163 627819702 779806868 434131967 875690401 840105419 265626563 826435399 982717533 239627338 690288677 806255433 33195609 204249486 844256897 414893121 279890219 726460731 458450962 97847129 196275251 259330206 595770058 939685276 5836024 809832486 582165186 361121563 274535970 101600792 927638914 14470248 485177359 758612633 914477746 994262227 243115105 420001316 634417204 96758560 693461716 421201617 36763175 383711483 658256639 619292716 836594519 40185268 837398676 940954377 186451962 328326480 325163219 571967399 205117261 972018981 224877527 883381963 316064018 882219194 788400670 359767094 235886506 953513946 247516352 174556489 193214159 180504220 158060343 973473924 995173959 763977886 107762324 597272499 89695785 922667837 715454384 741928177 971806925 447671818 374544551 120711673 410107022 140432586 896508153 996158759 221790554 417515273 514137346 413537192 781035381 225076560 307816568 723423261 222829186 378573623 158986689 722482539 653908477 270105862 196508461 62858682 292516366 784057231 807559804 441241886 782974424 202232995 432113400 350095341 258658478 795725775 25232361 562358619 835027603 877745342 178698119 98799787 833119844 679291687 178549567 324970056 769557897 121939136 951562317 884275456 296695136 279943568 67031876 218201568 148519685 543425945 292234499 101818759 642238756 465365466 966373536 899392973 478769552 665682015 568592759 517971916 177605264 228739611 885494 842897678 495112356 297760652 103751325 280152793 246216732 383846563 448010120 991320049 24493231 672694307 236011170 625145647 754993253 776799318 644715208 315216067 729056621 442340267 741300880 874265120 684242365 543552860 791327062 924676785 53005264 588564965 571709510 854867167 924796069 18627600 377894612 228476409 150830546 760614407 53529024 980337910 135554760 937816123 529227931 882623495 204262197 393738425 962814754 570915032 47858291 462794381 175929721 762451752 592426438 173018600 979847820 44758646 925076538 947622855 549310708 74398408 485790802 948827950 625133149 346672258 257362617 772259044 956122863 667949560 536831084 231339213 290869648 48226545 966439262 652936867 643384763 608058250 689814865 244619616 604953336 853438039 123877762 150589079 868174407 630394886 214761217 104441974 440438751 330172428 756549650 407387626 247122842 903313527 311880615 656087169 917135594 681805757 918150161 826991469 784824208 93045441 810868837 414050884 323820672 152585268 112166938 631020513 285788698 116434882 701180691 928376238 392272529 461115137 547299655 345714295 499048394 638089857 6805275 964317989 639856447 591699848 480138135 848719023 832298796 165285568 713110935 29105893 591117549 669464208 951785913 719855020 705238187 945165806 869765880 118062979 809225366 109964596 391866709 539984884 633465611 899299150 303190040 92525673 603897717 717678909 386434247 688683799 599589709 645639806 688394231 939111450 82273043 770079222 669188872 735780312 404618056 61651526 938015704 660185550 255910435 515097714 832615432 671343797 43187520 274833965 643180998 32124906 595598507 817978840 575649053 780995566 907903653 133282816 948062041 646226061 509893758 432245709 164557123 103298354 988940273 953529754 641359688 181820852 319781692 105868195 89899191 333380435 539318395 437655177 275658295 439936119 475556057 670854118 675118202 255365045 778926130 951196786 264911349 745488258 622367403 162984303 297918331 79844884 241024874 404074456 736554360 290632880 934059723 603475023 882393268 817344690 553759915 499827539 773836949 673197656 637640354 914954878 310751830 25288695 684770510 126313992 149645075 754524261 512545917 510313119 465626306 860711228 113803411 323946617 935312508 908688125 961787045 381854232 489572869 389791533 697214854 756441511 953201326 739204198 450953404 1235515 700624714 320536161 750194494 951131139 340877747 345024014 907934025 602918811 382430007 298204819 77373497 140946699 497647908 367875964 963937666 177641664 84817068 143210173 782940355 174474207 900655917 653088435 710337705 356579565 417436312 505975258 28768998 410026677 934204775 963179595 657690128 507552678 847227418 955864189 784712615 539655199 976801202 83692997 973724272 133922590 343988268 891166142 862218630 980580272 882489646 175304868 67266098 841031756 707469826 647891559 808693587 788269112 719456816 565285859 365525302 265343872 483495368 436757158 102088479 972441625 513704114 758896264 763360363 833722622 906673803 479293727 423356393 895152119 473165985 193385639 257394287 401026808 976946758 283686724 556358909 693359635 329834667 944177957 449537730 348604283 217250505 258084243 528914246 293398646 181968982 628676347 619387091 216142446 955477835 448423111 723176745 612335027 841606861 362144022 32136273 251518053 615251575 693055877 187815782 819246767 551146848 438307942 15162115 383911197 107915287 124674501 66692773 477210446 92977310 451051450 787232996 804318023 307356379 666889006 408805813 398306854 779627624 384458922 581642426 320819991 122126944 155348214 184311267 581863580 768150356 684678039 42346479 764095789 284201878 46727809 389790854 602979219 408193031 66979664 699269257 945017685 972046112 55073589 748988867 17151716 503466223 638973833 114833101 448291599 10376371 470442434 114020233 15268993 147561300 907149816 555172667 58155484 424617129 695943060 457521959 923759492 633817107 46778625 802024936 207225881 647227486 786363285 863567380 241806123 781302385 109862144 213512081 493800713 125440516 650376620 401165551 602459429 58972809 73798023 32626601 246178507 510375612 744835518 860287246 918560236 91706175 980350166 253873 948658004 294644795 212182961 895270535 642686647 971716959 918846445 141933331 864895946 288004405 859735490 253632563 33486924 271129906 229149556 660628899 884877231 684563417 618851138 467019894 718032812 930981598 528756624 515627442 163837569 780186762 679528285 500342260 88537424 610306657 654728251 427938832 845911412 113942215 825108899 199764359 802894387 41232686 936499860 406789068 127266535 802028477 803378373 259201603 718425210 489019414 695854194 909551889 364358356 210052054 815048635 367809772 170955051 332274259 551965573 667403281 298628167 969478770 580480235 131101921 990739940 747170220 113329440 95683584 254765124 997040737 741540850 506231123 14455910 537406358 338184983 677221069 675502203 25316897 50039590 157029506 106006206 864127609 359465349 684289990 175423273 819039323 717959719 483523533 925524988 807462872 224745084 990728409 491199076 555783030 663284390 664374216 516269191 455915176 547442343 874344057 174398373 711431052 981833424 190766972 349429645 19039803 418341741 657961960 674913648 687974410 335360761 90378545 732472200 344749927 231759256 11039502 239628694 354594775 603983568 747484036 977399520 96964085 53506449 502224163 811021821 279166740 291319540 731125299 619751468 964377206 659685542 804680351 356318124 216407881 604877224 906140248 524643760 349629644 616650639 693410165 272134672 915679885 856125202 141585833 727493248 705803212 245653567 141425056 684297481 378849905 534587729 565632262 676701242 584863889 400035433 496430579 27096162 48377311 522546544 406462095 265499261 296419630 129256612 240735071 209790700 70905380 452058820 118181052 551265807 504236221 450047235 528699658 760028308 882251764 945343995 961533495 527749766 881001774 336161172 427819555 604383731 525855880 137807458 523337162 63916633 447347300 346486700 332321313 450281742 550638200 912859062 535663963 778048152 556695610 572725052 902633105 509088405 80314180 114024189 9186513 404124628 550894973 213004528 575103070 483094469 444084045 100921185 865930620 552408043 630530390 844829375 876636205 731469153 835579740 368611792 334985164 595396399 285444459 766757516 589346870 964160788 329935944 494039911 592310908 138039186 200562016 488431400 129993367 870029595 840813939 693558463 784571731 432722157 2108115 100533396 968427216 823806710 105073795 478554449 939194024 756065823 120017945 339325765 137737641 743166992 451827437 430189217 614252253 876401444 847105478 169021159 224939590 374232945 431535015 296962157 287352005 381432866 512521531 794977329 181603563 733645325 947347481 807214920 850537518 592957138 718656371 507179961 689222650 668632509 720878956 70870103 406963579 847781066 880190914 529004209 257391189 425060079 98018867 183857763 925782544 329710868 104362950 605614422 105180372 720373607 427060221 341066284 716990743 389667969 506863772 816741382 906046014 379487657 752536458 554250513 976901253 170697337 979699401 850779574 171243014 378462310 386079524 650780387 804649315 13381006 728107257 668748040 644258143 234355224 820916381 79155987 770686408 138364725 84390271 81604495 340210648 783606727 62883309 617659891 426737542 760421943 450395329 257460430 447743977 115133096 536860202 492438645 15476093 177526823 872932034 113993483 624377211 239351044 664082979 990701484 114242827 99852039 227756953 186095262 557484033 603504850 992586317 743109254 948430827 648390881 776018042 388995967 89220567 158458298 251097354 340695570 358495278 839783218 534250106 872516779 671343482 511074727 247987582 807565896 73708458 526603372 381170075 625797169 39959292 931556543 52565917 3718384 406548009 538049447 655280922 602847075 397952275 517566939 2551892 700197476 493801767 377978625 958176000 270398090 685114952 770907404 814720473 436140588 912539898 715577711 122162753 887105393 408115431 184645396 502136993 376376771 182116536 925866109 312777866 681914872 903903926 612258668 702357768 644184814 361385281 597626924 126518258 490671272 516997576 132721207 981818967 392336244 952651873 394095033 705936436 960166549 564194300 902517686 358524970 140074425 819942511 238129127 591756103 372477792 646722508 418565737 128911301 307337631 952071626 661021795 433225710 634446993 829242483 160674273 193754126 103612618 451123769 718094349 194786754 606380756 943218067 37153145 626861422 449381548 959019965 423690162 609744419 142227175 42511946 155256328 677758472 999048400 869894454 156718372 294509295 161238115 106393537 108289368 500873365 821565211 361484579 136492739 707602222 252831854 509153846 270915500 273016510 407456198 783535892 710490404 392101211 948705013 575207354 1007267 256300475 637829477 324958113 891411559 523573023 670764927 979163603 688775857 893436896 982716805 929837408 33258555 671127256 674883715 90084838 163407434 875738990 524008919 181068790 555611188 921201510 249657649 12755359 119634040 717956904 35578489 199255889 261151722 116239752 981349138 796042112 708297767 599460562 72372372 886027070 201708695 903877516 214203475 383939171 128702276 752911344 681846444 415281436 743760305 368079048 399869791 390133562 711211734 173631842 171593180 845497089 347104449 459972424 952733806 351243665 764094623 546047536 134793040 232637174 809309423 762945381 688124293 711052210 881118705 362106228 846027966 917765983 690391579 986678644 869467372 356248597 443552059 761183559 161623498 679384959 369710966 190422990 752578972 178711755 777822667 918906193 966122245 659333248 53176923 292837928 539582525 37566303 462214562 587291062 625558035 92527123 952846834 139747822 949538025 964848098 889850606 844268981 363257620 579387364 900977995 303168092 117675430 919526379 739868788 9833795 321202204 929870678 48879479 286719328 277772228 41854007 93472408 457658042 388098040 471672802 964637296 33435264 536430277 144226800 341349703 191456841 727785977 849641081 906806490 341886411 894542551 667708906 930274783 87405113 470754392 548238624 268345817 646860503 168388401 598678183 520015401 834690825 623106792 326293327 454957687 31464408 991743622 621118283 379261024 771607959 551440261 814071106 804904438 534264212 319345495 612723568 545315949 87804773 999753153 38593543 334362921 888136982 22123895 851884707 917839836 736028359 590299435 680387759 946627876 723237001 59388728 54622430 580763987 76415511 254793611 11149123 95602064 662841164 244462772 665790625 107002637 14804301 873683677 828618271 592577691 438284526 318394023 634414662 793314971 774135917 323352554 86842647 10792399 316986746 226143375 440756109 479834905 353418402 738944575 517413652 631286912 944201388 327870208 958620433 351952411 728916549 214876874 839042215 341708183 303284825 144661265 918850145 698379238 711072282 325149437 354317062 432027057 128161223 914029017 388337865 547783842 88820883 908567217 851475607 950379261 582601123 882621327 266649685 590985001 615975798 733907832 854110593 647669081 532870317 334404871 352442194 192121594 217380634 609626555 556758878 704421658 579034410 393601357 346299620 197752302 954280267 349503927 647388827 58748173 85376131 392757819 726293438 989757957 516458316 305048757 21503771 598641539 676956662 63251671 127542633 299297405 42100654 791829241 411527436 410180141 889707292 616336675 817496533 382447055 464345547 71635684 979154624 346272139 725576696 880376959 977204496 877598256 97904778 90595054 440807272 591585581 912098593 999479508 227231275 567574605 412644874 235142134 775459106 378926363 448432597 425081796 193343826 423083588 438324361 272492552 343738059 958509562 419987911 881396163 893680591 428082036 595298472 190806634 333575119 466922879 324661832 499422874 959453384 845119025 325445959 186250119 974017486 279677881 407708921 129359222 854327084 151144251 40223713 711424695 210855326 378104277 370251498 952799520 461050974 570092908 603229883 57431122 463096717 226448188 500450580 78294015 632751244 425984149 83821253 414974182 252163617 266379296 628858183 671638165 839476427 841865682 600599170 361775335 81951320 277473973 504722104 494385319 903585765 387003704 352319646 540516960 586200757 584293241 563402361 686703343 210789855 490526419 271278840 918736019 168436804 361097023 328910161 416215113 666369513 515408379 532575443 548033182 426509552 512015790 761820298 369357090 187314248 564215902 557974874 732469430 867854653 58934273 98528328 557513946 29477977 844352492 194495854 939532228 165586923 149600776 491946046 328841137 282852120 711355794 372723901 734859521 12735568 798032876 160572639 709267961 527288282 901264510 30504257 51212527 240085294 910547241 990974312 302044261 985233711 539056262 783769762 390016918 778648246 376777275 148676218 655096665 779705875 570616407 139810988 135855644 591221147 72086203 356285828 576798359 151517652 559338973 142670783 929819169 144630436 195957031 843662722 593833499 366826636 552430606 114327003 90183025 446067956 480295833 46967378 409902498 873272261 346474043 784861392 258495020 803189710 413408581 649220801 522078752 390881651 491419519 623816564 688703328 976660600 81133080 368240548 645492412 694843510 644081591 406196322 449925812 544170938 510584069 899998527 595634765 303144856 844652481 474071555 269056284 464290874 62821199 187386266 346345377 897838630 863688484 578087541 981789753 831062088 246871307 791137919 111865062 458490071 347816874 343485976 344250093 940581876 167597524 55242298 104605577 628189946 162154800 341163631 766814562 299328912 5678785 357091444 799679336 370592677 107706452 13314321 373809739 102572505 68210906 594754178 790787934 802419635 243935415 607075465 998728767 274032533 490559400 987667202 295570171 275331321 627780439 282731104 430139945 741073206 850532457 746588995 755916428 730312887 464035392 508940074 549545171 289431290 845746582 938174945 456958380 590101175 473052875 986969190 833795581 806702894 491707149 355524901 621371342 694443448 629699121 128070282 880808558 475825214 930491909 605338110 387859522 928344720 93747247 683171508 245887760 861251508 416177087 916988750 591489477 242745616 183279795 160806937 886656852 832083508 24369847 633671832 737599982 2961917 224731822 132653394 831880071 295330982 332588317 64767470 142366941 941236234 702294545 891026852 944727433 584704872 426311582 220846015 509686712 792526237 274583921 520739260 964646473 229503824 698982639 31357074 54106266 171022137 793186517 395715084 886970417 275322018 461574798 444667991 792837904 650605576 408607645 972615908 709472409 886339357 737639668 177906291 592907890 220010303 550370346 709576774 330603810 313006950 149811929 232549867 893212414 519152303 436159084 598048941 875837034 533876305 732823666 77541750 547811688 415814496 178321406 227742915 390507962 409147323 366252295 546804014 879314605 858303266 274050350 335738464 367321083 965100370 997141293 640173303 612125160 31195973 174227308 657436750 609809816 20416666 303739763 850737097 94522925 72529139 846162075 26084693 858231584 722967498 795994731 546785258 369168360 992435917 599715748 796405027 538020921 915032557 891524265 191031937 609941689 671590800 647058428 227091021 482546834 371493810 171616268 803951209 835999273 823433518 962611689 393838369 209742119 125280119 97165040 894727762 150219146 652957200 619962645 515367928 233779622 561706064 982199153 141862518 457318264 808180177 125965324 582170771 173564884 759946894 839733468 418608120 739909826 837401578 295358764 835072615 470522941 323290028 278206139 642490741 976498242 853972769 374114771 106687709 227476385 401801148 209578959 663297386 861971606 772950652 523234496 996334129 688211749 359457055 810778682 80965990 472168863 527341084 459226033 539865836 844699278 384902139 125690760 591239198 382887782 516618210 737729362 2492008 700953268 234255707 30235305 899777919 726261409 360600661 779161485 949422131 263664266 404805962 212338992 133543663 987367926 633009152 123447313 347199685 352931553 70814211 834032154 400072750 540352416 726905651 620694056 848957928 234818883 304497988 154935929 727603046 290113876 27898424 647202298 849634220 68790082 928616991 920814735 118869850 972276082 564993172 377128092 247852229 832034217 760396731 871358682 996212669 208367462 269636246 126429532 376076434 218576693 70634321 662909049 23162066 807972047 984731726 668202471 188689752 232854983 107559812 742890351 532099788 975405806 231195961 155618381 278831265 182758074 856668378 205105088 291636053 190648365 313426965 852241077 732750114 779710203 840000170 52992128 506108428 952161899 991614182 40419567 43191941 269375353 30102707 771844996 384426750 580783734 680388668 182490645 439058685 104818189 543134515 952609172 254378437 229684136 482653829 562843883 612756617 289733949 606928086 826538599 726672431 194277530 632543148 742854494 249492320 682195833 210685708 875928851 921114978 644298011 518034376 266672323 60367771 82800789 284969942 917331749 808140302 136368543 267085881 736738034 97430924 600615619 127790921 447153643 74866816 615347518 618751592 545069673 417761166 349071743 350034956 871800949 699162040 143932429 530439339 466964007 835060481 293897795 418849924 100787093 276680142 468450689 952871670 32463380 423378665 108235055 144328384 925713942 154966710 478233898 685842799 871493157 50112149 4673303 825628870 604621720 639819196 577632163 223352122 903120062 309531054 582250813 637977107 293521861 924610056 447001520 818506594 901442057 750709678 176886284 643006591 722551608 328526159 274403683 86662847 866901703 99121286 786919160 481767578 557956672 113245837 483190615 822662965 689284104 198297958 650352504 560550089 990570805 372832207 684818979 647727681 496951207 99857411 249045524 155644331 506057333 563868018 554155490 913357780 957070021 654693650 732904428 114831142 416171451 339273941 287739534 214651787 7588722 299339002 606512988 867130083 754423434 116351942 545597739 526675022 710680428 91977693 974969667 637493924 78188502 871924249 493551135 732163026 667783999 312764987 379236081 73052621 788435829 260473943 234828607 774730985 271027877 290585118 428195058 272623723 678605855 966876944 895243985 819526108 486156697 199314009 215488140 276046257 942212377 978824661 820353608 878750785 805207452 274845121 904485647 172484089 303374296 851110320 796059457 707158324 489358984 781072461 161019897 585047058 658199806 973269913 78452124 791464508 384668634 966458412 636573243 853375520 246034551 468374151 520741639 613150179 10142187 295372702 77504886 513968484 876169171 185062149 368512596 814269656 887829218 672091890 165164987 926630289 506276923 304325863 490812778 90381644 606245769 178772459 840352551 792979615 656735208 997959855 831213669 533239362 545272181 840060303 106815578 226121489 775514760 169899146 873228749 429009609 965325064 225659432 819204034 989491630 601876994 952335130 448678167 574156243 699181438 476418143 553594193 978208230 598787487 718817937 450733135 329606687 895991412 235226775 422649777 225357484 523955278 46960249 685080747 964131946 506074247 780158467 825780658 793533140 293582605 562639684 898484093 348022777 82016964 456861717 436162677 516688478 513075857 578088554 960199098 248027723 981403217 915448817 44250239 523356574 682383887 125278266 571467945 201101465 585855194 920234069 861512501 100336731 437667785 624842855 955238678 187724906 539988197 985496512 440721124 626042423 291732742 655411064 541372511 865102105 935429495 351043881 707995066 204500284 818223315 532329650 720319254 758103431 82887735 75711838 706410004 356725308 914325816 894514207 469319796 564756507 921702463 99395959 314448702 288601761 159762539 235848583 817676551 298826955 56585591 464900802 106541574 490774829 78016500 59679323 159935423 550670213 943976272 217358578 976658673 101699300 295367339 954277334 873345109 431954568 650716276 821706430 954097854 245223859 787306315 888865056 26183064 675632244 260732289 530845965 418647195 604557996 10972048 778485164 827960928 741047608 710050254 792003349 981956739 603979224 10058474 311255607 956696974 858078739 933440431 880828952 677461933 98354898 398755056 68486889 313476960 523163997 89579992 528737043 283401882 318229687 942534118 537905905 494061046 587954389 685677138 70284145 710778094 741527703 468608665 332919082 559305552 163821388 527258203 8182938 370294938 600827741 704222673 819572584 670671291 406109117 73011343 422571813 887427688 784204710 109612357 818672439 876117780 784181948 22541422 261187195 906055815 891252988 806199717 335285101 539531326 737318166 932748559 875718651 162696899 348669048 709279466 855673892 376205359 429525920 557478133 498764575 732652259 245543701 120057190 769269849 335011673 300846593 654362198 978706029 355074439 748739108 204380159 208907515 206342749 453289029 129025772 107450443 455797489 882084513 49283956 72897301 17793359 669383846 626522026 864217767 807865516 249524431 56774460 53925790 938704201 373674883 724511683 698463066 492801334 698147807 202082335 796543213 911288253 35843236 292487996 267613327 511508047 577997153 596787351 203220050 269832569 247088246 698197396 555573936 153839847 581735860 311809589 202513004 533190197 767720767 88075646 512554320 619335052 36013180 880649682 516362177 506492293 79846443 364415787 383106169 490516832 653127665 968302467 815562942 804307613 404539679 548040791 207271755 755589325 102825098 886100462 750238829 170060153 522966612 110497242 738911741 126181947 155236862 355547108 613113837 288789404 921246225 829566212 434962094 478922057 634016243 261127631 453599859 476549072 42909890 852898649 597892154 816782797 756316857 141598450 429788885 481848034 912261676 758645118 364395143 965726285 60298290 628569992 188043700 134965044 795614262 840306832 910331679 513483864 226033449 318236398 732704022 911988458 795645640 698328041 605799037 729889275 213149633 977433712 355854462 338148593 787085152 200125434 283366282 829168530 624939899 951397151 340007169 61930169 495426062 26265816 690985602 317310977 789938645 129902844 830665438 396408768 207965126 869031890 672952169 351716084 415081141 519208124 50006273 198153381 30570289 80904364 742824701 539319726 926864595 842850542 372213652 465633180 49823638 443097347 847578760 257765941 464329680 559083757 139311174 27837885 940394091 519838786 962715121 42212476 812834225 119966284 632363606 445374817 10133176 483292131 123328703 779063168 832010662 498293243 985542047 921213523 693555047 33806791 975619633 309218195 81804752 511082538 129896787 987286673 912008752 419169066 74036331 240740798 281958311 382858190 554683290 787498759 354385707 730893020 694325522 483560676 965201938 405310033 766026351 9007891 892617372 90222902 324203267 552522393 60312133 101608085 844301670 323283918 448482723 574236340 31635848 162995807 758427849 370518793 814283531 198235374 616937281 489646476 940160683 911540212 352363931 607771681 428468738 582029000 907848158 121209494 994972636 222608888 729855040 197490616 993424422 654789020 618840623 830870355 581095563 411171203 347396994 888158178 448714747 953955301 704407826 417698370 308348494 280619841 424045111 851362661 826439800 20983796 568327945 54043557 920865003 248874781 378185730 840075272 619731420 830535986 627658098 523119249 544296177 930043812 567733890 894274680 998141176 645153973 225908060 823548343 876981892 107920606 523779644 823515751 651978629 192913659 447177782 419497064 196832135 785113662 36981793 37824704 911701345 357716774 42964777 765840377 428342581 210473193 825499305 266094612 495996939 922560473 221503186 835975957 196719011 69906040 299208260 381893161 67657363 175007158 543482138 999266441 395748856 198052464 744419685 762757159 123228282 833234681 441402345 104500961 821223329 326553949 803395723 427572388 561393844 137835170 894130977 285081407 49137272 847674371 722230625 275678471 192790630 938824459 881733237 751618771 391325948 333741421 179269123 708417676 389353982 718330801 879712112 181370469 115477757 733534911 628703304 406606969 777913960 661238930 810593860 465181414 130271777 799882876 149303066 386901528 352454785 247176525 879318514 270201677 711078644 796131445 991684593 369886646 581240313 59588347 181175784 138100205 438898180 678390279 64900583 553201127 980674383 298281020 973967886 322270560 672034785 960991921 764307718 962289519 466500467 791991892 513440060 332152769 47413014 451302275 974519013 781619992 879791196 776592129 407895765 887897045 990569688 998672230 305098568 88790866 158467595 984244129 759774304 797539096 708640475 286899369 627242907 375347347 307051892 26422285 942088938 133948650 932342961 430647435 763375622 639186259 460857001 90300359 505699888 106481626 467045724 165332045 943779724 707074808 288824155 311455945 791573211 497076232 216593228 295660376 575925958 881497029 404300545 99417108 694909324 878280822 219046959 403583843 368789396 597489305 797825073 404031981 174733900 518541092 859990060 127586282 614387340 555390874 743040724 249496002 723289331 663396100 406526816 214296588 813937299 651655383 761217846 40813043 739769183 42233716 46700426 61084755 280184246 711239635 976632221 232485123 566192756 377453382 541325567 612973367 920541076 177568542 548163596 370757392 702459647 959573100 925236219 120136511 999438082 75196459 438094741 702220949 300596228 108456317 260908519 261861294 427578788 416930789 501897923 262069295 555124976 165087042 991460353 837098927 809907760 600141936 117397536 312132877 522154511 453425705 630248040 404741139 933911790 716263931 940743630 793304643 165675065 673739359 446288462 523846059 454064657 85062622 608652370 806285265 787380251 23464769 37333956 508805167 863741626 554276961 19960904 598377998 478345565 1177126 947452054 732886907 60051533 628532242 128827644 283935107 1720633 444780812 647147991 496601478 642498616 458701484 312178126 975562340 190990335 117642980 543773127 639694865 341940420 931275976 94271901 710400417 883640812 609275426 859255996 450123648 747030232 733789197 734885577 434500771 341638705 298175688 292452550 746504856 802517537 533252010 442671880 365724161 560794638 371948678 845794401 402686668 714883133 500394541 336227073 412366409 731149343 613178912 99842917 375291068 323568303 575381719 974372070 727329812 290552384 867416444 478228846 797306504 381771011 707134344 578517399 512742083 554922991 962123140 629782846 659262867 518370296 383891015 781211042 994172248 462723011 735996322 747839642 59284149 343714015 188438929 732248227 625981942 606581670 979560114 791748069 847544888 193161900 167478558 742666196 9492 655462153 712350560 332174638 720248453 997894388 498444683 203164858 27046788 73143639 299718567 543020035 337484492 65177083 653706037 700866838 466975078 730647590 877375520 630283301 191808453 890660265 413773948 855691945 83185465 817135140 661326575 303796918 387152368 805826638 711242265 181372601 733130377 36012279 805818292 237313427 469120924 983464966 533722531 426766474 292961593 956202338 463378805 308951396 579055545 490434283 262688216 116025868 502078364 11227438 893352716 564009118 42213247 50454447 920503358 713418108 955890964 585535408 40695556 386398146 311416914 163326503 335418705 37531446 148334654 716996624 461494912 747711838 277201260 329323954 527946652 825066500 293334952 389545712 178994182 833651738 72014402 16787869 389248013 729371321 991646078 473566885 512272540 640768710 107590994 768642307 653639207 865354064 469807175 382253955 125344547 453856978 681786796 760844772 812933446 212787530 502347855 995063087 414242746 670748826 366223225 466252780 145783121 80492330 241612796 169097103 361890161 371618346 685330968 998280426 686638932 718919434 245539629 111701724 520041991 963676875 794905635 672480796 512998138 482432249 738411801 844101872 618051709 343808995 504022108 562697810 66760898 509717440 518632229 505393788 339015009 199211628 522403342 413045749 873556334 629280888 44576504 147878365 48951269 26291655 835232713 735733428 479470156 179720508 740933087 573050919 324468219 585316458 501068842 178644582 937218022 514315838 89044970 317945345 681712835 150819983 709590614 213209042 182251789 524731358 355375661 543387333 989403095 297966532 788130120 842805970 447462888 137452621 258561711 644819681 71702016 754943337 423485250 868995686 576299583 79510020 394954567 159496046 388440877 749745062 158366975 63563761 781270362 195183826 947327379 470522866 980119288 509053268 711483333 375391518 29147375 865411618 728079045 65891549 262229869 70816517 409242935 345929155 481238571 803909407 583100650 767246090 825471580 450369005 192811757 422573616 223559370 516264946 421936795 386279256 829116523 731262343 105532945 376191483 252273298 735361171 350902856 208555221 530663855 75857589 836678137 603341039 647764573 787357469 494023139 940017164 706111902 956287219 996627973 22655001 345705045 691192468 937131698 545577797 642579044 772911977 982100007 84482817 706136713 304320514 512829978 934765879 669651503 690023435 316500577 586900470 12515690 226857138 470959157 516641306 863778013 237129577 749069442 408091616 396549403 485835741 579204352 76697559 333590445 412298488 607070485 383314165 9676858 824091013 465646064 662309199 254252668 607097454 35553226 697962678 60669822 759568611 706233127 125153829 672460559 819139297 469148124 120291773 995423038 866901557 756035375 746159753 107789802 245597540 111090352 442725846 513059829 361506698 929486749 789721618 579227190 61758289 32373819 207941584 86480402 806608715 344859128 306876523 447277216 420239275 919751641 968439256 225782994 292691930 615770450 368909570 712877106 248882875 624544658 325904 735264577 701713514 507860183 695892681 917852740 602333240 773163744 15691021 96981567 357783882 631223491 682599019 75518061 151271134 650660612 266515681 167337329 129381030 479946703 997815387 580031390 840343873 68558423 941477274 374831480 288955476 371965253 265883247 661959726 756860674 445208274 80970953 912953527 646175683 611621810 22986809 655660767 704798549 721022306 222177314 748048361 10952551 140159039 147773211 505561544 988003623 945649961 353932956 84794179 456943299 371300907 993686078 603579315 445352558 455114726 721618900 745054301 772832774 463145508 888875624 411035336 35131085 26558335 226386605 616807850 511509719 832580185 254318566 185787999 823135356 519240170 79783929 791618401 753436452 886050495 195375739 266395976 529385794 515253796 859030389 780158297 254931851 622108649 377992404 29020445 627854788 428805779 155273942 728923812 166244725 17068468 71645467 130040970 80306995 928360761 71224265 697168449 791770773 684747135 814424169 699823382 935704016 945255621 81163205 9427473 644119299 431941449 215281048 106622818 82067655 918072358 302581507 637787189 147983398 544364568 577606624 98261755 116492834 837391266 765574574 100043563 341776835 149885973 853057292 628670177 877013460 427547775 621738509 980649913 439063222 778284533 297113120 476949437 128776580 132856377 50781373 855479775 441632416 644005121 611462701 573352216 220937940 945757787 722220821 666246185 536976127 440712422 165633368 105243107 689511846 721185324 25061572 52957181 963534472 912052321 889695510 316316597 680465632 342889054 28524237 990825806 655346274 392723746 601676366 318042982 317021962 778850286 264427102 648199812 113148796 166256172 915710233 472116647 754891012 547525236 767310738 661654459 640506395 49463086 361936552 622048299 122174819 497157858 530007648 134573273 411830741 625977925 847190797 644548270 434329345 45229191 766782891 101687469 837563803 612001814 548957183 4056291 534199724 436818002 112131617 295384961 364617033 141033047 57471132 678439732 458832594 690908929 21253977 907196533 742537488 87093264 842719326 771248047 628059005 137589021 449586103 854099771 44201415 532088427 709606575 823310816 173427539 787122626 244067841 579835126 237801438 341745320 980174564 71370697 754122594 218742251 781248782 54263307 928817108 958137082 702683793 307643332 706757497 831319053 462330347 1875085 786724185 536183645 621231355 853303177 881525433 192523126 623943705 742075994 525567711 751289529 422297112 642242436 312047602 565649834 760029158 907027600 922764437 414064795 907187617 694052916 136588468 827399079 691248575 701948892 299514024 520893538 298940517 635513184 367141971 794784648 735705644 979625938 171301851 372705537 436119528 112915183 868154749 654556031 130677350 301618688 71246149 873376209 916352540 999758280 161745707 840824359 788778098 718969236 203429157 231631971 440975058 862021087 965677479 211666516 172574158 209366549 195227631 702792349 997437347 567177104 808474550 586878468 953972265 345157627 875502828 289373907 15554066 784612955 221501776 152337064 466535863 124631207 197156593 562915925 825450689 799507289 940107802 876639805 575439106 485659360 718229804 257263954 585685887 210312984 861756704 404577438 54214963 931182612 914575857 644668896 53388449 652009044 49930218 72935580 486855260 873153048 453251408 746976826 623852414 572473274 702543425 921276642 167307875 905745689 556140938 799849191 477449503 811173932 71775422 741337148 640598523 348283718 508329210 576412669 576378411 291602678 517363749 464738152 24258540 991070091 801447302 261666933 323009464 235028341 803144343 42010828 864475127 12245926 675638609 911045776 220773670 604095393 151096925 72829207 874354898 708460097 821173104 467813470 803636618 744796155 702395474 581834840 459482364 539780316 466458829 63791237 679681492 399407368 980187119 731940030 428049208 615052405 101166400 540435861 265522596 884994747 733156737 543021202 909761458 521755521 779584946 677679052 714566987 339930038 467787394 748085968 965221743 867751202 803990094 924203546 740833540 571715702 521483017 485777843 8618274 640534159 865644403 328920829 550954057 370075227 295683216 914372130 872816879 198575304 569457512 353924980 307030832 332414049 907575826 398968293 846066294 889933470 721024508 212499750 668941925 752599847 303145301 251893295 982189655 867372980 278201576 677822892 702273088 173237480 27947753 398034059 526676388 588939832 948465352 643612242 644231643 896630503 462504343 940353685 31881135 778896174 433855236 546844244 738398401 295152262 525298625 70598288 666969190 950526011 800601767 703941725 800784368 669650466 865502853 162592577 961055420 246150954 3508970 178782563 731294547 677890970 75794948 485736610 752181633 624689226 200440260 915170278 866345746 391675004 933741838 678128194 579593842 500388895 179511990 706224012 306957737 890324433 607769141 77312503 964520461 695160009 778164097 390015443 913806296 852685008 520839660 507698631 25290559 619486226 347954076 329115071 282655160 770187329 990622149 230585657 152043688 747057578 589218808 531653937 716624704 734089379 873810536 239795980 871854178 202870031 232533764 598936293 776882928 425690995 805050768 613648560 154476037 978595777 259460390 843230639 256043607 112064909 478442396 706824482 582847007 84988234 653403131 874811395 387881544 657989653 767559844 929969082 632322932 480531645 798234301 416960411 241822683 900150442 571931330 555764551 733156423 202081195 668803078 923039551 551120471 427874980 927344561 567705695 775957614 666184140 777282598 892921061 800536352 341005414 250753110 272683738 495485115 997046822 579378612 845643008 489543994 219942531 658243373 137288368 127770935 968020139 39950246 9713457 151905665 251707854 679257712 582718079 285062600 132756378 543161696 561416046 236652236 501241156 367192386 776864377 849450257 941237951 127336045 500738845 563564621 144527809 311583834 561650584 836003756 843217360 7558369 791539531 280970327 131584506 351203452 408122421 71119884 207092667 766912914 440662300 391341929 735827164 26616596 507196184 769103861 419279155 276912787 582296747 517417083 899441270 538622463 968680701 844351183 382085444 452443723 751248408 856018798 254029073 768096883 619511739 992117522 949870298 245749349 501961600 127031691 970033461 168998126 297001736 694188876 523620326 372104193 89295653 197442163 14848185 264837027 459503285 219987813 545484782 504460310 48571162 891991610 156873862 334226100 266500879 306586976 13923744 12922927 728726090 157127223 836445877 526621246 39377038 682657393 710570107 899166903 934026632 217186062 960109672 258179149 620748559 352494211 663328579 724324026 253857536 678959912 492409748 740518612 939062662 276643246 314562208 354837140 310794566 533807929 578607352 83121507 518080136 188553031 709549963 908275191 712726303 941953736 350837688 372744610 812720405 886367634 458858050 985681510 256799112 276011004 394499376 769443917 476104840 617147092 809917553 108402274 547428469 724414274 386119561 987787366 503514536 731206743 736178051 966106781 356877176 159045716 195086824 664007741 839802442 40777679 488709830 898577075 229551319 540460107 993036338 701824719 778833354 688032729 31344677 631928337 495878093 854469111 686523519 193833368 240025392 963980495 714570301 402705757 125632421 594167726 283450924 372868260 411181982 387568399 734500348 501471304 196513787 233401930 248862845 116199175 775200282 416574652 347186769 566969730 249509911 330200116 474023568 400241872 518665845 94485431 100187605 79923571 858719556 940157135 231182793 90586901 312863077 472601195 755253590 851348680 963312602 17159769 680771546 83580002 523114264 25394684 546238758 147012095 686207271 680435346 910748537 241355365 730204276 841785106 915926 23775400 777317213 621247649 267301696 118280428 883707248 257436611 428061541 609109139 194673897 902012149 859187855 912261470 570838927 921705220 93678288 71950648 90277150 198157778 246502576 513181646 947388578 248509296 139474426 297020467 655712831 509766641 242356634 314597164 256295387 555407287 215500474 414870366 946479862 836980379 301284026 883501762 168614675 220103343 728151558 721302799 704705227 252299843 709711337 939640031 65632909 592993782 788452356 995847830 979007744 566377827 169372549 912134008 848320586 848147291 671726770 371121009 696409144 152376984 781440256 771198669 429449674 536526345 248970434 850039878 545265580 417524845 821427543 95745472 304488029 801258720 305277072 578811099 848578457 824386420 736974261 856246591 411885731 511237595 500837609 724271292 902152842 561178991 405460043 240458659 719380225 857993172 246019043 380974257 837752122 760415422 238993731 260085065 361042230 8131638 183506645 565165039 895590935 420391331 77561884 286031370 705369420 943390060 806266356 667754204 568876404 687946530 651597770 219188073 778048093 789417757 51549738 577791518 122917774 463860643 974364511 338583161 371602810 384140136 266831185 713153207 266437817 378572245 823762390 16385435 810686754 511051452 996340382 52047628 864057276 416793919 598806282 774119207 217075461 48906570 969344326 121756930 541562576 595541489 634998214 669632622 715484361 343610707 591413856 214027297 358650387 339092532 527258349 105965106 263226736 74432778 765474952 173438810 753949424 75969743 868026920 370954513 942659900 675435013 556097829 718618997 364149215 510114413 136204936 353032759 111218676 123944758 90959684 235633242 667539826 737261697 572361020 292738217 383588637 728253715 754415987 633464217 553387863 983735481 781782238 877080681 920244964 792281984 150695319 470125303 218355885 812835271 276317077 284344412 330580587 394817299 622541429 146919810 165974687 6421516 429248586 333157465 89779866 443500051 692749249 245676759 933661298 465700567 709354239 802652031 638879176 345868975 600668583 131541662 974531015 390679616 437906448 919061457 343109400 555147122 233972269 638692814 495921707 101296104 461279112 459283758 980110786 959596367 401631538 671416331 840952231 955964689 874972791 843472806 417682844 241907171 558721232 34074320 751180422 478043436 745727823 328177745 757239707 379295117 259777366 217035180 809719675 362375852 542594471 255964895 468153064 99602245 134235647 964085383 214743499 460095039 403404446 631601915 331592076 735930701 121438447 745377508 420593904 845255191 306005989 503157856 400581433 126560174 160996886 956564002 145727719 232575890 838072759 214591835 487060978 552825373 327546504 449338382 346350975 739016 247661498 745331322 233945954 436419015 246113348 95163840 457461746 404769654 25223732 168424403 800562327 718930308 991321411 678934493 630755488 836978586 24623882 902600068 944794791 735360349 103835217 877524067 307760561 930657165 978270338 35986661 826089911 726091627 547061360 825622012 21243542 424836857 609377050 987835946 652097236 646962100 447758741 565317923 629363063 183306367 945174692 314872557 206665414 791551524 576153926 873429438 401066581 120538033 133431394 83667343 180403343 133574142 120794221 82251950 175626777 789918760 444203619 788656653 33993790 535118489 287467449 409068761 696249772 919770960 581724679 384168613 342787429 427058003 929942678 751019216 869593887 323448836 259769244 857125243 585711294 755189903 193311427 941869729 993741130 708680135 925298616 870233450 647538641 480175030 274147690 410651611 455405329 655054722 268473558 893963067 615687425 362176228 365318400 931868686 541309556 31868994 848111036 293085663 596332027 350808596 16950925 492943716 614851954 632673041 840318420 518768346 887213181 858793982 852029417 312889797 619989433 651182679 48886815 172663073 670270957 719430304 491197321 16034976 768462888 880837500 895579467 269899139 150007122 537411882 798476210 408031753 722003257 484823880 867312068 198350182 151183954 118458799 447890176 350840128 452081191 817897956 995436045 701128306 328489224 187559504 292530124 906647698 925508498 559909090 982401715 152596018 903644326 168621164 853673273 112379299 58962846 477982720 916015742 431569209 661509383 676029691 187154380 546328026 401350686 717777509 489060403 864443430 216146704 574313390 119334380 47143185 62856369 819547539 552136387 141393072 584238357 826080890 852611362 506988251 769945196 687930514 789988365 650780303 759046819 6499710 75983093 316537269 243312058 396462264 59589014 566890932 670552314 488912215 962665885 494672499 239214068 562245448 880161664 634711762 796631616 393231963 205191064 766621069 249895935 988776372 454006728 788424870 554905034 296467105 133470496 401626993 895435148 790742678 875698596 273326697 714663010 557852722 175480783 395832305 335030264 671815746 442799680 127747965 285060538 190033963 125319489 96353350 914639558 917464386 132427486 150609272 609534296 16673620 246494589 326469944 399520168 396356170 429952549 396043437 337743361 463293568 473852863 944662125 664630800 464914395 287588548 956860971 210925235 8501432 653801316 448367561 59022915 500956410 667496286 704419573 525691920 817882752 807634237 329957821 103803036 732959742 130709302 143298218 150385438 597905142 884747847 205256415 954645018 111989867 154764773 894134544 25320492 309535408 650278255 4562617 954287277 946346892 865413637 726183536 639219503 244715749 10816997 90674415 539557021 868400363 306546764 407062113 885559275 684483637 23171878 174534973 983591522 216911987 723123557 896352166 687206631 7747154 2680232 927919538 637613941 550256770 374558423 771896934 401206416 912828266 339443566 69807393 481062657 114299976 95156266 423980733 926788438 992405107 2194679 61077171 811217380 519801095 238166470 540774647 112200328 510167407 489608311 670332137 179323116 552136660 376550209 512916238 429813478 328876130 466869333 644095602 746812993 198023823 851506226 463493100 259844782 113722086 162545987 481273899 552278630 13291554 660807589 501248350 60597003 744400296 493385933 116190342 493686518 245141683 398543933 763254083 361848357 448621146 137431280 552248527 611268505 514697412 678185468 252322731 91506493 183573503 50121816 141129118 998482904 476408868 941525116 129646479 726192373 978283548 126271794 258041369 269054361 937379656 985825536 989821529 813704326 851525805 536000594 113622460 835644987 396015209 928798970 198200202 437405876 55974934 990167011 895260086 547723560 380874840 803577987 953850912 437370224 162975489 390670742 498844315 456823300 394972526 598157494 918073676 502372507 149557779 706902668 804700911 513782281 940127439 732369964 907252960 433418028 234533031 643916874 576416434 526487860 935144999 360290623 416969306 707677700 958912791 847323039 985950560 698522842 846816210 22544367 69272184 826895623 438666834 697056531 156210070 269572914 83617722 49906888 974346386 130187090 730349776 923782715 894110215 38954047 545584718 588327159 561922331 414340895 493171520 237819770 988056494 924427052 187208754 588061767 982379523 36914324 402925858 225763657 467178939 658749847 793706791 924692596 575436184 270063469 420883478 455548138 395183680 643540504 649156044 739178219 179072722 277445833 8050959 200723546 18020081 950220106 58279240 812811025 201860028 237012456 729315360 474327679 217397326 58344093 613956553 569695665 480512167 4328411 442273425 769931685 226808635 956544137 313011108 464087949 685358205 541278747 254272140 836951628 170447315 336163330 322822383 353581070 658298413 29824318 275361229 642365375 164708255 590885196 776696178 678877794 51853974 471605999 930724621 407257220 81045067 539176041 279666150 421038370 724338171 158465536 916327807 661745758 732379612 623558698 778529018 544035325 331599193 786551577 183793311 128331896 241632484 764856221 498394564 511066039 252318513 971520952 367261828 527841286 428738459 149089290 386069074 447939357 415611917 57814414 690509268 676183141 853658667 760019783 706109735 310471715 930545038 900301759 610380727 623243942 439645785 847724951 641801967 915099119 742770710 880997361 349836480 621004832 252212410 872292850 748142133 519716537 898848063 464293125 57169961 339799926 249346591 242348850 469940352 403178244 212449325 460587278 203315343 406199032 493651292 271965248 11551735 270664051 805514423 526177977 686585363 936042713 746974762 759922700 404695162 823989929 512876907 776143073 210679685 420803421 460618713 310081607 857533847 360609486 710952250 310496671 592094969 494253671 240985363 566765713 886779154 82964974 709690896 128485227 627189816 241686289 587515714 372492511 61289068 836412440 239061957 666853528 544464041 373533965 143475174 405947268 440855543 707113819 726619114 101204398 313514175 86879883 337932932 135609756 43688072 348182519 810518846 107372359 654544167 851064946 789594735 262121728 138122491 94956332 729581150 486214789 425001153 13766294 791354898 695312190 246555280 76571817 805023756 911297309 277027029 593663838 711442382 900269042 512984021 683889835 450127064 754462555 531715871 818028386 654639023 155311204 86339 162177494 740764073 523809753 498466536 667416962 87321445 720207854 307482168 712790957 799567722 305112835 490360544 57980390 323085307 863616293 282810666 705301441 372414407 8388299 207596689 222340297 503825995 682197402 981505710 42318731 887662960 572443713 689722488 938157078 477530233 166075056 603461017 890142644 310782763 303058713 990891175 53185194 403372582 989654310 279078209 850307511 421903386 811519822 570140087 987826973 473319762 375466439 413623504 453427576 598825031 549559424 261465568 729240751 111874918 408401887 329391280 501170841 281494703 526890504 131240823 581046873 865845131 549084649 316549823 67469048 261768212 11761419 362932222 236463116 934425146 270739574 975736176 107501767 970661082 422597696 488149988 533149542 356922294 630234873 713278113 628005335 380744282 820367254 388694193 34981415 959445189 292011527 923361516 334270998 330367638 431697031 584873545 867034436 719912031 783654600 377926148 179841785 761402114 179835984 116297778 256815367 580085979 235382462 169691936 707171336 766577307 747602110 769419289 825056669 94470048 289743795 999694624 20520217 291206887 183691920 290083986 3461837 756060399 456352052 891070122 417760528 725430950 471879976 674376865 68232936 203739706 983585789 79637001 264458349 429909134 689773211 821390820 141866695 842176062 197686900 333611927 552661903 254254138 352879392 450492630 414739187 571276511 425598958 721499103 169594483 265463928 159498076 602590592 674012027 658176920 417059633 87179447 386847316 676104165 883474949 116916361 609331362 86797717 538955396 535321085 728024932 483520199 238719798 907232539 395477013 179385552 583898869 942046951 943444551 115162123 745988236 231244347 725968372 150582257 268305507 765818016 78480274 809021036 594993937 255313810 763081382 134998533 595159801 69177740 462310149 870315789 427526685 789407160 972092771 103461427 993030257 807007820 360352951 24305279 808775156 744523700 210479304 187843 53507146 564431342 931776820 579575838 66080313 112911414 378291274 109973448 55658277 603412792 17786414 560675668 37669918 482775216 662782661 865759104 526104862 358259384 845097637 309053106 415848920 150189189 20085722 91365035 652846908 899601256 956758028 339415474 327377844 986709325 612178906 15654275 413317674 117053666 133268944 423987524 775586144 579571027 474518138 65549510 6598598 721245037 847057362 247238735 206048957 912588223 487993916 257895908 545254456 355442276 947683265 192205953 781908763 935214953 297101681 221045030 147573253 394957994 96828030 693451920 253619070 190366219 55512442 359970317 884881269 463403862 889533406 26271778 584946967 295744976 410844816 242843561 941619499 632228113 684922771 290101537 19303411 139003216 839141115 651172381 96735666 421912467 510497301 101406276 439630174 576628459 223433607 29578760 981524154 598713229 752125173 898347084 468899866 790782047 619065647 37991299 405160501 59480752 853057790 643951993 552357892 459333549 423871293 796566730 648911124 783902037 319345116 681436839 482907749 261388336 97673383 178388137 687054473 669795058 625631926 113121298 245170707 18956100 413651080 614718514 264480182 349782935 242379110 38164693 128057292 937523511 100403713 588824069 838089544 251698027 4306505 340547324 829585149 223467464 811251744 487382414 43162165 449411141 775124451 473501582 695559716 11430035 839908163 832328041 27155977 909795703 251824644 459562700 59525399 833061921 889303304 69166964 51325770 121294977 217117005 440868576 316703241 898694610 237742045 743369161 282277973 40578667 149040569 201063635 484526409 805243778 535199741 925386908 859798668 68870224 121698387 643484951 841991392 831405619 355642700 205383630 530000560 769882507 379394163 848656613 72011237 414723838 340627224 463506373 544475539 461995232 491798101 300313528 110180186 555949806 178973989 37462797 564763143 206793187 997986794 107984062 356921230 454933968 633921344 865200986 239446253 14196457 489217004 766259434 73428965 265184923 658233813 536904586 866137431 335916571 263482157 667747480 968572265 533360481 775968893 455896392 507752621 353676397 408805350 328301733 796615192 344693267 102335331 539521100 454981733 21651282 396796882 399864956 228242406 166397549 257464001 353735389 929110752 177639653 361531497 707886686 445876975 592434084 440090940 797330859 199689973 795465902 272211203 632672937 346973133 31418747 242921784 839292372 331137444 560589785 639017862 328700105 789089057 222461826 238302465 87027328 742505346 259415058 144519239 448012937 369119372 785529729 676530600 656806869 473207500 509381643 925866520 770986212 587423441 788936580 72460456 681389772 795841476 985826775 182396906 672178568 676215868 514594794 947856637 709517030 525696071 138127090 206184126 552193332 980418508 183689591 278769006 250846061 955333647 33799477 354261912 367776605 614227448 128479203 187534066 76744631 511261426 298177454 648591011 43124490 249315554 292469774 904874593 14150738 382184185 142157083 930241287 649474143 133358509 612015393 952423961 484992528 685248250 566657313 261994472 50369699 511819410 694998567 915646758 964568634 7522287 876922392 896529477 240470453 75895896 961700981 380160952 182790552 685073765 119966050 980986824 942691761 895867772 356340586 756126075 62337700 716767601 976779690 668540885 820597202 693338251 842386243 537272089 758666914 107165609 356287253 396491126 686130904 222835704 900302995 4048790 932608912 75088502 356221282 733035336 614646933 425285590 692470528 790215629 421667458 950035940 925702845 312605659 770338902 401517720 95502516 563760396 117285125 979990829 759470226 934116431 799794849 751023706 951560154 36762917 682703576 132603751 38410762 941246620 451006652 88359407 499754301 374251305 78974850 592176266 576446741 995815132 221665981 754098481 679908417 202696391 626163547 673996371 919186605 543603415 243811753 55192015 482057053 935345272 147542979 704598331 449392904 485773559 727641649 788662832 589246578 191157445 984367819 978109986 557208515 327593146 614040994 304206078 733976025 164644280 593881972 865589719 154494548 495087216 101932119 945943980 799599483 569616991 39643872 25013576 826061743 100805942 812162265 472701428 482914497 364360389 590349842 383643428 354580310 473435250 831326341 73216814 941842058 733008539 435454092 166987426 267695532 826360844 187621635 398819774 496992516 409202127 930376748 260487213 281187982 874275842 697922291 994417357 915874534 785582976 643752552 217119723 379655130 964199864 601317311 25259016 583451715 131618705 101667105 886309496 773995703 653302654 994550225 704117708 62010979 722175493 503575451 812811375 426225724 61995125 45967381 183352858 770765410 499439505 431808814 283735463 990357383 602438799 64780326 700434881 101174391 750920434 57557338 13770360 382206670 826305033 791150947 741842279 399726454 258601838 803884441 439696258 394181768 331646640 934680474 596283036 757271817 296917487 114928856 12654218 173375184 822568836 264524387 886748567 79329354 907793624 175111572 356735913 649157480 669489185 805999676 120372416 951953616 558455236 349598365 83979756 757839061 387541529 849806773 837843605 384836991 33687215 388959884 667152830 556054945 12173947 551973544 137562253 566854027 68347887 936785925 65060959 24948508 13003901 326831661 944000197 766181447 806759065 790853488 262385556 621322093 519316367 188387969 155673326 807962650 55452391 628940332 805438792 209051252 779540349 867637366 9410277 964583580 980532377 133444981 441596032 447035423 540128528 695184263 737444416 998646187 735459385 693566108 101031172 951078188 374166929 764609415 709990605 721541677 894870633 976780969 78207359 450705129 523882608 241908271 416185350 770661636 440747759 597978256 879049629 319674549 265186598 482144020 652437393 259002849 981254420 369126398 866045416 234342519 502770961 667480256 495434217 758578567 167551794 153611186 777117667 286951000 905488004 583248339 242362092 123360830 698021870 357499462 826126761 709408170 279028097 897184646 661973526 927512653 119155471 20124961 147023725 35357970 114173187 229229105 167999918 256529046 42492678 268058805 503061694 749591263 916763005 765702886 582466839 196432780 526365102 28789921 40992452 893039993 575589238 754111418 553165543 228567819 593260953 531517286 965544718 566483285 156460496 151414287 871087231 773711961 449578051 634836244 928095561 345988188 322008015 825638542 55624247 765005969 860062590 912655181 390750437 235555851 171447043 713116056 177068210 451815455 139208860 176362316 269221243 541198071 878372387 71268115 54138440 532923265 218306330 892544819 19085686 992081789 428138879 265667915 732813886 401734371 486889933 965398932 138277456 535265637 485839387 407642926 323422553 202440871 755932669 560852194 764016777 252321397 724441910 186677677 272031846 710969378 31018501 482394327 941847961 683127338 891156697 340053403 418077159 756657603 65619514 975968100 15388898 173262669 383765132 110823869 879281860 717870389 458307702 988171141 478767862 509136440 233760839 870918601 561568518 425278616 141300188 562401807 466288334 383919834 469457202 1001151 251684691 677086661 437519409 762374110 635264472 232522513 226975312 881546751 154780218 838740430 919470036 613446373 502567342 865517845 481842795 396600138 384341546 399507373 688363906 653681853 171586200 972356800 398942855 233742272 15187344 731221973 89237725 434728160 174405084 928607382 663559219 303749430 491602046 683098805 363183717 38275357 745112841 718838423 156476395 264363457 406495665 988835515 284723226 518761898 634306730 588213992 240470129 971417614 261233693 393135152 459056710 337110553 727750742 1214740 553253017 656379663 651572325 100844309 376894089 202075550 495437907 408411603 329321572 43676948 301727925 90342758 724869679 24757912 819996358 161573128 869381430 209554943 74157200 506092707 210853051 702632531 59225153 689009940 870399187 35011255 543736287 290183363 388002916 149059245 994131171 214343623 791213444 34742421 174197668 791886616 966125850 538095529 998870212 310168808 918744785 596271015 307448470 183472238 401765015 4268995 551060627 257477479 835186487 647248937 805287661 851680410 506945176 868927234 319922716 63144344 516465753 747836657 292064888 284985489 795067581 581747990 980012203 446860178 325728457 898032638 135064535 881662874 996416496 886905877 997117658 558263580 294381595 582763703 443345998 659788640 682327512 228471614 494928240 408410593 680910147 676966997 740519360 981327430 242874402 824855283 279060061 694196210 192511306 490983643 639311629 261810019 90158910 224780333 153156831 92826410 331509119 846825641 623666810 380533636 495690795 738347342 483248279 38659249 815336148 612356124 140869673 743637214 812149527 876025106 151802600 405363529 49520179 178448606 592088849 981326878 668314848 358420172 923623831 974651224 53551421 588267863 193359078 340695954 629103962 230541448 409267353 16632156 73403649 317320089 96899130 504796142 682006592 258681911 847759436 768723244 684137433 224425197 501116442 835014307 745016571 863863508 885997327 584615869 998326091 703225296 3828335 858443451 101477551 864600520 995377357 73883669 895891789 632971512 709051657 655904204 206951192 544295569 578030797 682098685 472155517 314392831 821100781 970110421 927113991 827305128 970984844 403151298 192665920 264651809 140061704 676682234 328298189 287112090 668970802 507124509 342524970 699496249 23945645 704079015 404321688 576763698 508837655 118766577 254184130 268683341 631510643 193401264 707010071 462558083 780877355 609481191 840438604 787477030 916401634 903754793 933300341 807341273 159015630 909996117 694241246 257041930 953522958 670907630 255775643 984060939 996095267 377890391 745234087 752635054 812676305 836079016 315588865 558546886 436310720 447453761 123981089 198131459 783267966 754507147 616159268 848972459 90715478 854840612 871683432 547975030 791084421 285256401 53369637 595590654 221029436 697027805 498365400 865322202 159709088 108155850 458630102 978446979 677867959 384259109 756467861 375573583 307207356 318362625 209500754 796711483 829343326 634323407 319078427 385019495 139143581 21269037 904658598 251375204 659297838 605030666 220623755 214339363 785413677 656826495 883564650 412703397 570415079 534031531 385421752 940938348 957106961 19263831 263114078 821048431 792140540 583233179 155952071 114015689 464879322 869846528 212801378 515102441 294570572 394843682 390921401 16020640 283409800 729850546 589625743 38951122 379438561 550960174 983114058 440101781 741357242 855355012 387599715 799551899 739297970 269356313 582477532 891686010 84130297 519251672 823782527 787937165 106806664 397783561 478920659 934130640 494017170 54469701 134537054 299540767 766055079 120272995 292798937 90029823 222439126 343320206 946713669 319594494 374449137 614993665 448744381 130754849 227099221 355643056 918192956 601795953 234403946 212638976 320613603 872000689 692437109 161868790 159887110 573555550 724109380 24832663 143607789 998792956 126110091 145737257 459508521 536825540 380519113 647579607 981424237 94141394 992367143 930578021 168569163 404794165 62783106 165672505 537642969 805144181 156844061 25045778 677647640 773033635 435411231 904996242 21210245 601146986 97975392 579340505 726508570 138959828 340541151 117334974 84498328 89393683 517074964 313647901 397598001 150849912 319975825 894588987 705717037 305145590 982285276 114482181 951435686 936607438 571211710 591965395 72866182 36508157 323094345 4478111 14726388 111208473 827302028 898189822 826161578 38158707 570673724 157970523 472909646 571007240 827083527 902255991 87357136 871028906 35808316 560764731 638968084 783211097 600599043 176439607 919052111 533049357 642407056 703104298 376894640 116152009 379242204 187566425 893160187 428410203 54187923 31479315 732442206 597963479 203364037 690105685 226510600 694151640 682444943 870285901 864004364 220402954 838722813 160414491 610948671 535569445 427040046 538779590 636190013 418434301 510993085 249345872 697939953 292397627 389939385 236747805 813054490 617881990 503661366 816510956 67395589 949836561 97117378 41979043 184935066 515786613 70640607 152048291 527027787 332689050 282386409 509045677 256405900 132963309 596148586 29912686 93937144 21887710 787598545 940507095 937548700 360741286 863638748 553532355 814557465 311399908 591628995 756184079 916153151 385755926 678895402 861091190 546872325 945897400 957863772 802545376 305596749 112001824 810703937 598788801 345337771 971627561 599878031 153751619 735405369 95438925 517894763 59774995 990694323 733926058 963738327 334457705 89057305 501676743 558273066 641136725 885207718 463386299 307630195 689924259 978634594 703918146 391589452 479600439 987992390 818009627 312428678 749732061 228714872 865457974 208508759 357089538 735376908 180614762 567722391 864560670 264681538 340373522 806799733 880095972 808708986 33137634 519327921 651970852 111580269 785036963 877156822 362883969 999267429 217765495 505936179 393752773 641585231 342581312 805022142 127958438 990609907 115345254 957444812 154378718 153171161 354474834 264248 192763357 24433254 54723495 592937424 303040442 371181119 34570958 69259179 361780942 926375179 246409468 907054597 51348011 447090174 318913361 257445167 560942658 98862634 499777636 69936146 60819148 68057992 475625077 845720098 768881977 37295480 368894380 288114917 822380023 811475375 898376364 9154375 464423108 867388127 601336643 331894646 626406183 442978779 319369903 91174305 793283228 96640955 708056373 951619950 183190789 667284980 307516630 483158611 727969874 885873269 557087833 312694847 739083048 473223417 438062447 306252560 725295811 421698266 732028553 375289929 572672149 724044481 752668576 35336537 918236330 694578027 519785052 915148136 435377307 376303686 600544836 140944058 419825785 729834499 601376999 282194536 944204857 510963076 247540472 244996157 351277362 257773636 415744441 492312385 956183365 557706525 860756172 985622238 428341263 131620521 655478082 956796444 792924879 278930761 527644061 314694774 108478224 410370953 950093915 55890149 181914761 801033318 111314884 454169401 803652767 867710058 222572461 708482012 450767588 226962122 164302215 638758668 192048582 868942390 227649499 198589716 30326242 836030874 902683519 225118064 633571840 433917214 151240212 300389340 651378384 348478491 286434188 894278485 149712917 312911856 418243390 612612444 612864070 361195213 125336529 839324637 40289562 396466598 350605638 258201389 587671706 558753081 715278974 122116098 644164475 804033576 846078858 848746224 627216572 732369709 55420081 183036060 850055457 298484367 295896891 34936194 512712461 823654636 397407033 986751242 926773067 343910376 356390516 117179359 774641060 208348944 666616547 15700322 309455456 340956454 42182850 321830466 85469460 714661762 515557446 855551593 404186154 565087117 139626232 408421333 217165701 853317848 998522359 982718953 913004969 80712544 802795141 158791303 670431103 464523798 404979587 862053242 876308513 344873042 888152443 766655788 887352213 872548848 970634029 131940518 993644399 795746325 307705748 335159976 323190860 393905005 311027760 373621014 847222574 568281133 172057278 558417257 275274255 54199000 212906284 553302514 14120671 905350032 738707170 181580532 804970307 465404939 99526850 508175439 127104593 535695829 974989710 711438797 912090342 418979015 424519480 450442528 438501484 602348761 429248862 88110905 463486679 457983769 286557359 457473839 177484358 139452442 314768207 972531626 553855700 318830360 132162093 573883950 963210552 915580856 209604166 233553385 569996630 233649580 796838094 879220059 668148066 116296341 998186021 937584659 347565408 665683063 937492583 190580378 207390168 559723757 395474620 26699271 778723294 84973835 982101291 574772459 539102822 718795681 723861030 46928935 60535867 778828573 187051680 275829077 907750670 226138941 743438739 82695161 314775355 810098759 750099183 23097565 816058009 113694742 941060398 568641514 452712635 506409298 752850865 303338263 964001286 280696877 631202115 916373911 26046169 985578184 855523957 385476429 431912947 156526610 402114922 775996973 356770219 348385083 166274760 86400797 620056857 376036109 175675812 240452754 924509539 492084139 170898162 901022426 865273557 169327025 929356724 244123766 394607927 833552504 824745221 662607677 711331368 265307089 796208798 354866390 588099772 553130450 152863280 598700321 890277827 594882622 390211157 82349911 725604782 752034211 281830195 236969955 510859149 457236189 193808311 169046815 78001328 262421143 602862131 465602926 753166284 403973480 456775410 93793271 796588840 697019496 2061824 844237682 382679475 738436074 98876270 484211933 925078986 420249647 64388383 7600201 538620904 659999016 956591391 340214619 909751525 586623579 733975083 857395028 77175576 589434314 605691286 464035880 370021450 603276552 412745307 259040368 740997687 390133826 429872070 548600448 214385123 760615656 743438479 594538183 214061381 421303827 735883057 824460202 816091768 682466135 769707554 297828985 21378422 389021242 704195230 554774967 31973238 283175126 340004928 922084437 984158138 831799323 10296493 376175818 797805897 445059894 282013423 915034589 420878618 341686628 869670888 947814404 384371993 445109623 801829291 470322297 895323512 3934527 189225515 13060204 66568225 342947501 123285760 885320881 413774915 835572904 534278138 325756998 405005606 452819194 934308882 566072479 726471068 523374333 947563772 110408468 111106243 271141523 403864810 935647207 914543148 848523652 990319400 374361675 431772975 633386183 630676246 44445817 495277270 567724274 116191445 493566428 541545731 865136507 139895098 39394680 121180407 264601394 628613853 297333858 845634982 558231669 337863867 596782018 936050494 355386273 455018474 453420968 574848216 964500164 177304819 693199822 6549159 496534471 29266814 73842250 42923782 192631282 337419904 320566139 64163462 117508381 752037248 677173680 955744133 782877500 486317196 875910142 217365089 737428880 163616411 771092238 144329635 405633141 46986398 375828861 839375847 468714970 316516047 257885611 486081280 990979615 180321630 359171449 835379519 174950888 861845619 326924709 110644974 577099784 158288709 650232530 835733912 361143461 685048791 384195985 510613287 244612746 818212558 645773244 628086636 848062358 912235420 982378907 748038246 854544158 205178781 522743997 216567581 786621526 165652210 10385013 420573539 887018731 917176333 693513243 97699437 225962213 387106264 800027723 581231243 310766344 916337897 55478691 825283814 627059655 221790058 787276956 624438020 474563559 999062911 351461196 594695879 302233845 869974492 872542382 129385747 793418481 513584629 995350175 364212432 675001571 774730652 653053868 124151315 638201572 200063640 214383822 193369984 837454178 806858990 878161798 953677423 754648433 92649033 615233632 857772892 17875071 930353687 116522938 401048456 401758676 725507630 567561905 731127146 12091104 68691641 393109231 444298053 970541685 402097583 336200308 925624544 341163011 988506145 397530042 617010442 652596638 387755076 122035984 461862469 525617623 620165665 767071750 441266910 912316372 204264042 927665738 725664981 236756073 881300338 485301925 374974609 818674362 391707831 413111074 376697746 35494381 222844099 700151232 991710079 15530446 39229405 352727621 135583899 154593469 916477138 665676414 170967232 232905827 532629952 808574134 423737288 122630818 568080806 670816545 718425034 672846054 959849275 201274758 871556619 202974957 376876784 792637330 153255448 784376174 704955174 577938450 520964687 117075947 126848357 787301929 968442736 726826944 29760758 887894979 133799892 839496754 526450645 342803952 583001948 473592054 170036255 323749172 430721205 845665718 475516516 405449681 532618154 993958409 52082793 125378200 434547334 380484688 686362847 197474035 833240810 85731537 808308527 905469229 647718573 669681819 239784595 883220955 451020538 987265405 277945902 835669652 987370508 721621508 231992876 484287915 83003299 833842675 909980615 799272690 196007724 848511207 720199932 84110436 597017543 135276761 886784601 432879876 881642546 99133321 262373064 293245479 667859607 859363924 349109438 515219421 640334198 286033687 270717552 84936888 974363550 277597057 214674576 860391083 245093066 832602485 19920469 510674199 35760785 791605964 568575349 484961254 758727740 145693446 514164519 148456768 613635686 481250820 779855302 893445525 118723829 722949912 421671478 952768877 125096492 871294258 526842125 546500749 793041253 999475372 145901429 79109706 434860825 285824684 798599142 865398507 350409292 376343945 574242556 746286525 597303403 380942606 768981200 828376115 890840474 243038451 477300574 786314798 788894127 429541958 710542373 694865077 849570281 901862197 239684330 380676376 623185386 466617025 960810869 434410348 98422068 495250509 74434804 335939300 680017742 620399613 415298461 792979210 147710164 691489159 554492268 369019806 227212553 744369729 188321890 432991054 845438479 178464754 162832049 965273103 466794954 444728791 39395439 39933067 472700240 67065437 190201632 400308710 598038245 260118427 321781780 674017029 482602484 241703657 476823249 471161962 423219065 630330274 641309268 416753169 839828568 189658334 491026296 845405390 369335934 543320703 416229916 300547760 637291133 368398168 542462747 570987573 837107414 940260564 508266879 855954116 708778677 937934051 377519201 214440678 265731538 317083327 588099892 677595728 813849091 922493138 592896990 83171808 704181344 399695893 182518190 319712951 857748363 122467310 360795662 421344145 900929771 520778415 590976739 199944668 329322949 885676792 82455248 664185756 877289370 358069591 338472267 353036573 332216263 454597459 298604872 255821200 849558201 306398394 363869132 349232716 849226890 84769543 757743476 499981597 520461875 950379448 14059603 478587893 761038124 621061514 95099796 914249909 52945670 120170003 143187036 326254378 996105116 549386139 395150825 174203743 590597511 904026105 809387055 849989034 473881623 796230383 196449078 624092439 174072126 881932256 904220668 644293844 852651943 361148440 914164803 99456658 290738766 368409551 568084096 492720529 149019698 232862369 531496331 216824817 265272890 535953998 617704199 814770168 553603571 14183443 540568124 110197645 626607606 927488244 291400100 362746689 689977041 274229330 240775045 671919834 83720599 318863313 722638446 389708693 366920013 116307959 958646021 705614337 679141747 150163686 60229929 787167124 986584869 295955501 914173361 981460670 719831125 435261803 254185293 130370312 464328317 412980346 161872503 683539962 297053726 418422106 563600460 754799340 143448750 545833649 58829883 190826744 776770495 98529008 579494572 382602552 852824055 757473298 812744474 113369472 433205326 48871984 938776109 826899079 175041045 17549959 324345470 404305880 321695014 806150532 442845912 848494877 675678076 29185795 805280694 754443207 551914631 934621164 352051012 482110486 248328258 101997069 626700482 107033778 319147423 412858841 25271422 791025062 401163654 281289934 818429834 382371217 757383988 377063516 28577205 800157720 30719957 743412364 697723940 296531094 854837057 738314121 627680486 122034047 41786534 910458880 62040417 847554625 561911125 120642770 626939941 112623609 618827578 710527282 747603612 363113833 803624295 758151794 605742012 610166397 362830536 519625463 722466883 56505623 489439477 642239855 630699154 578824705 283547224 963524169 416061695 699933719 506235727 247466325 425489782 576081004 215722160 765008069 220385083 61274098 104492927 547335115 826962537 508397028 131055775 313551982 515304340 416508249 157656774 946828830 313314473 625862855 940090410 283483092 939792240 921369529 105441428 269868250 987765917 455174600 989692419 775238376 244172148 186059470 488906830 970283658 445275382 919830450 395086366 590421232 917397194 930139380 200288199 75520349 846008042 328509496 466416157 804917218 101486771 883073334 890458206 804522351 999943628 705860361 41464342 967020109 825978089 161640223 569049088 985270291 387175469 854328317 315777995 10594956 548325273 725447531 258030429 13662446 9893297 336924403 936104947 987833679 650036479 181293223 737362925 619442795 869302295 372016182 84886771 478047711 39744315 223354487 673477958 185367996 278716863 391497509 954724822 753126464 572734395 261452443 405156519 217038062 5545459 993870362 694786045 809884093 39895994 702796036 292575392 271125138 795898520 917563105 741536338 95525353 96554745 358237738 194988852 653130789 620536653 167699497 142632275 374102584 676127816 611751273 247473944 61930634 575783297 762019624 730816783 987955534 164706345 887464186 106920376 115838765 663589768 474662697 613779366 145827851 861424115 302860773 850630667 699397964 680854678 97640760 728251548 486867005 601894644 277710929 545414046 272736640 526816511 653548020 184664960 999497728 471031989 28234775 153681387 280223699 125947745 790227994 709493726 624860734 787160388 220993942 151148385 689799164 476067786 910676992 721095244 475762979 64668376 272315341 713173931 137428432 589126695 912158225 620062771 980039081 930061495 560906388 600566382 794398145 848907841 989438718 69869687 373172455 359325778 693537472 808145940 1466084 934718729 442921653 545085605 105270123 97793286 317126484 946344912 512257033 670752021 829557970 591255802 506292496 635207262 615907177 402591042 625378943 667857482 730905103 549699524 32868862 936531854 951893313 97283593 409192839 473867105 300948327 813833297 452626993 250180912 63519586 18589314 815636749 327649398 195112704 286019313 454514905 115028151 97170298 515169937 673724873 706827635 166906712 946497167 513757304 444595158 166176005 182952913 118839436 966856341 634639435 517060837 438268873 59290917 123157879 865325866 804202361 437308019 434321254 305978182 131527191 4016088 423312555 604153286 336334819 87465478 243721892 743749621 436363326 998519328 930015239 726353404 794788599 983154337 372966916 825571913 674244590 344248254 106569776 389999212 850562267 647711979 342126464 417833337 175739670 975834098 10467035 630607358 533219731 477637127 409381523 55587286 671949067 45957709 703238327 108025581 344763414 91659357 214299217 694380335 905624073 630555461 235072422 873928689 178887850 725799076 176589527 37020570 382321237 398216040 77061704 851215737 328585893 133774447 601506855 595096315 2162361 904535162 690740823 652203103 852779462 96302820 472765991 401578708 350257693 818801919 477178051 303380088 471311731 351870848 102734145 682722829 948347600 727444268 535323569 548194976 309133871 707492784 879741118 552978026 104747558 844592329 671081384 667549183 137586426 230548385 683378470 327209809 394525024 742997591 361434941 601258548 516627013 252032819 495065471 200165775 997453249 570423080 842705332 227469585 692026243 103349298 159013083 565368933 210664087 196742629 126566606 720429083 159559552 414319886 761629710 136157778 845499667 938097348 132934377 260701055 537357220 754813339 326124791 819746053 36704549 595309478 806828786 247053848 428899544 558401704 345212748 976875197 487963895 491644146 830040482 443458829 336707535 708911900 920858721 593872026 246523957 249945810 338089751 164126963 442048253 181425450 494694124 896503642 318342036 242018098 787651820 830704092 398997967 607215817 439263039 194574038 575600425 913467725 690904810 442653751 396890971 254795694 998798909 612402060 10823728 839081570 397302631 203444658 251632879 373487905 238720207 237422181 514190489 321782439 682186064 713340176 819428336 809307775 83607276 434996598 662208421 622475705 220863422 619342282 646401808 772801884 442088028 864357476 887048697 945393595 976877114 509185447 797485871 220430489 207579409 688364899 975654719 936498297 963846003 939930111 289853822 823912863 299161162 468107191 898844119 779775892 286466616 146821402 188987927 21009941 202723728 920237786 549725727 949156726 851997748 50492781 870160617 787382736 914063141 521132317 203390762 91701642 856290813 119665096 886852706 90749591 140901778 80335197 685583993 385073430 972709245 863065125 729134267 354825177 435627379 607025109 260001329 15555873 393220022 623819949 778735101 635432605 735096564 356867659 816444723 885601909 455303475 335585860 815693869 96574220 183116214 763801551 49176092 473596820 930794313 301200185 160873169 60077619 698519764 492614190 643565060 521496540 694497483 28505345 782034328 420435650 109372278 702128862 752370977 118719852 450409579 957157033 970453045 822091290 729960475 953247775 583286628 454572744 555659606 669415043 899886699 646800167 779055174 505217896 968358975 744356871 634285991 434578781 23246810 378057233 672182480 928734874 331006804 224101592 215021949 107504552 163123505 694666131 161743087 167792753 22883235 776649385 426490395 926871274 546210941 77897700 12564203 606405604 669657705 468800575 888950616 562606704 679830137 537546980 788413065 749660121 878985664 150578832 923355390 360837642 975239071 231218617 713856860 565671803 556049727 776696672 249260625 458533800 764290666 31498878 878265579 351356702 945351649 293519151 612484255 298610086 149447316 297945320 344312705 907139323 843184194 584717848 954264841 218035601 795622522 926651124 777792170 592882982 177700583 432432041 165517699 827553440 724629923 943364504 783735439 208911849 738973398 378175087 435707261 77104948 778536712 635320033 533371172 265017256 263909003 977498448 459910153 924525652 992109493 545376798 466480098 62012770 660621694 233182332 211509478 685767287 49869725 727653317 582075145 5063508 601202625 413049334 984642693 340252078 734311799 367955726 320748654 419108388 419345906 618803686 603043354 237563853 102626989 746935574 432898674 40556100 896306431 327477692 827661518 436190920 893569495 67253717 200831717 891362524 687588785 267646549 281075592 244535904 42200272 727693214 565386968 890305626 896244829 550079808 746847339 277264973 845033156 727514599 136317030 489707674 310557289 777497233 104495205 151415583 37397330 515384730 671313283 894724742 977824535 110487126 24941514 76048165 265004023 971614409 783380529 787977529 422671412 17711348 809401560 335358194 843061021 32779472 303212954 475755855 565173430 554733837 762991484 24356664 579817923 258159931 976407008 915486697 635538572 763650653 403463942 371281486 721125109 302958919 25871531 717312232 415658730 322259805 237894876 746881194 954549409 619624435 361390181 234335346 195619500 29081904 168479931 815831799 475042817 749641240 615510380 591857451 370824554 419755726 262041995 608306734 285752826 327274608 72087936 697664237 690895063 661767777 989650823 58635749 197600622 53529534 450009163 160894957 484815556 605912144 264881181 911202168 279530530 625730296 314640238 607273836 328492254 278260883 564075390 592442561 69876947 545295030 607692800 937389588 399938453 408257983 561583356 291959231 253878097 908522835 45163354 779505332 367056615 12490743 415090406 25178035 953242523 779246064 176911740 231610437 435954240 911852947 291293689 145213194 895445564 580899527 640792811 893475672 169979668 698322234 880165406 392804288 853590136 769629096 581424371 125595354 135685886 852621580 245110026 130787685 94966441 446591631 293405507 160200333 965184795 91091168 6893421 18268350 207143060 55722117 906359440 241420612 937344887 258031274 882238463 455574864 228043038 916801343 653136517 16937576 192266590 617384415 435566546 153000292 585079333 392652681 30851799 641940734 259060353 843414962 642185464 807814466 783123871 195718218 457423094 676746536 560482645 615781267 165959060 651553192 865962474 869654551 175667143 72408558 587860961 798990699 403163937 905744960 995071044 133158976 242334507 173269743 421901069 614953676 183100611 33363019 736424447 551363322 686077114 926466159 863349597 369288612 235550883 870198424 987186054 254089829 14927083 61644159 196564889 851398736 559815268 605513151 495431872 32764811 278552586 420243591 408749715 191298856 471841226 151810453 941546243 19742236 162922484 669523478 258036841 234430314 868061845 471464641 565688340 708000836 56433771 411124692 4058713 653362385 263680127 418105306 319195737 34979626 44329532 415752450 11557552 52715622 12465120 359716842 514514727 854156910 433617791 888171594 788998214 206881985 498475404 550409464 313404193 549956433 541692301 278918041 302804425 140244795 492890926 851551904 427192701 317477442 734612869 910705138 154937611 198071869 708679475 54265704 691485629 384457826 932985329 871611348 346427245 585471112 402449119 864144391 468836945 354842657 717429042 20131988 679540556 43470786 993216179 337087137 897712579 120890687 34318070 459304169 708823948 397822636 537338125 598809913 50538607 823045779 157204998 75977804 530453613 678757582 48616490 624885798 959803940 939521238 331146720 178575470 4499717 925891512 819349502 606340629 891087428 479601364 704602165 684192498 130548917 287644661 846004757 58955812 8052551 830587255 234012642 319449395 492075838 295749585 974696364 906028136 394085979 471739823 636225785 199134189 510838385 657674789 914573355 78348167 590752531 99097138 454857519 342051491 57993720 866900891 643215307 899165243 682112964 423904686 36215513 813444829 823966779 163697534 818140652 816504583 766866806 308265854 454625286 993419465 519325404 76240612 473643034 925900165 352396537 339053308 516260181 253545944 964528494 699948428 761940352 396796984 906753432 919143949 578065498 55673362 757051233 405068469 9888757 662972263 777052372 429829063 836821872 208991869 910524560 545980192 556907796 205623821 868500813 605770984 138079792 226456487 239826306 759433810 912569572 268182826 699912668 176299312 208075474 962525611 595621205 188019520 4991199 521124002 103376159 911597944 321554314 175896932 632830316 761338732 557707964 999282454 827851890 709235317 939663656 492367891 657542841 130216580 305653917 292911757 875693825 609163718 477604986 145902470 851691412 456200937 622513416 909414067 849807133 270001705 583644830 149923569 414986768 690097465 948593792 391102701 657170548 740019946 685120488 334560258 7062412 335106569 933997378 898153774 653015456 404385923 666664059 290723273 355104264 932267481 722274125 959552473 534104502 278394181 863804351 494121851 200538947 467442635 594863269 712305255 698910541 741656001 146073547 925389760 658959479 642080250 105647421 829724673 54963569 482548753 175881453 146806269 983848475 967434376 744716960 149552804 919087173 21526234 817627576 817215882 397713720 480295454 70282873 800868211 408757724 413489181 240097159 121980348 863589504 44839242 536863419 172832642 334145727 545749729 582775661 395085872 562035998 963585825 167049672 997668647 604914527 831444029 424596196 453660291 436821535 344937646 886111961 690539047 101634318 763759814 682726796 129421430 805992848 486008871 283542019 501643179 546748347 729411556 404870819 135435563 827749519 55318171 872303660 454952704 288056887 682017017 461471343 773395314 811364756 85139894 344236666 246361152 131827522 780961529 979433965 592056915 111644253 805276557 739541120 65754894 408349222 601084909 742615824 587964153 753937553 196898060 803024554 573623172 133721854 643308795 954009901 634232403 740970448 562777388 882261633 570364360 991925871 439891745 637103540 497194314 263996850 41673787 133425519 434773863 578364754 32249805 998517225 188722351 829255314 639764941 856141272 90870908 147990819 395949238 506406900 866667203 521374016 970726128 259687016 131310260 660830029 934634775 695279111 816381474 280868482 700335065 122625593 580705888 483373608 4980966 841932598 848169993 577175944 203187956 837117785 811442209 432448120 200166730 304469237 945524025 129162108 867300029 10969984 250197494 401653768 668164964 853470172 905823269 181464803 741332879 416732035 865946424 842613522 834131456 155668917 873879475 59716927 139890434 383607546 405354008 25401550 162426303 564919983 83259309 512113900 756745485 255871165 517057420 236108954 473675498 814616236 536346197 931896632 143542795 289513536 228793879 531743661 900227938 299396284 856126133 852416044 368443342 279046046 82074026 132007459 987705976 846178352 167071052 830609502 831153919 389063967 197604357 717758913 631783621 580620131 326504015 362454987 20096221 488084450 59457515 692195971 294829772 739650661 812452351 225640453 331209044 990683139 264025964 150958577 200858173 745720432 45171118 211713626 517867938 260602480 897128746 214201669 433163648 739532604 45040819 519132425 675604279 397868869 723724339 311083379 417065538 268423835 960624678 254944699 898520357 233162576 646476458 923286333 293944714 761633452 532060286 63176766 29051085 961709373 212721183 291963330 274323053 92658694 141462596 287168981 61745299 81037164 358214367 928413563 425004838 947887165 554514836 136329172 326124005 220112444 218748984 667990792 513112938 132595863 467141467 63899188 113102144 514135106 528538828 133879379 270239542 109622842 950492333 642544586 641173317 670090108 788393824 542719675 516776724 946371328 420329974 184952327 347455021 136124873 349130675 171666005 17255327 589071081 402625992 535700155 127338852 270813713 727331545 685073771 763043593 111565506 846775299 971526357 720646391 394309112 256597329 164447257 178044714 199573813 775339186 71936960 299290570 742616766 296613545 436397403 124746277 992280752 730109699 753564678 890174141 868622580 716628933 814318402 271802935 887404394 788841595 669658959 883767697 121057179 60868493 225822821 201288221 965084965 138799181 615803790 930943264 415983986 795193894 7974452 702623269 918709436 422361827 91811808 755270139 900145984 554373956 203894623 298301652 550631230 910384635 83774295 489699121 688407865 938119350 708974317 305405779 159304910 196262587 879262830 465381294 981964043 603020964 327072569 764487925 283331063 742727966 231374141 3282391 293222344 865853969 533595493 938272821 174452146 363586541 202004911 264892118 275991709 255121088 689268484 40552061 909880567 790334007 599866237 455999321 145802773 204016832 837400054 316412581 876132534 529722442 835462112 87588986 999865641 193901362 35365374 79181234 257121519 160453889 362308198 364138536 643537428 321024089 978558610 897181805 7657919 282858232 710676149 82054893 978015142 445408862 979344496 556463101 38938547 84500911 941228752 411599413 839780458 951590451 305964449 959121032 838194203 673850740 447542757 415523904 176618354 141731474 943578963 294274992 548681492 308707557 507249047 350186096 308390868 95659677 252156807 980614862 733186616 189155820 617528117 856861488 447163178 785617896 790761691 624559721 85708483 21551070 730034619 253906769 119461253 707623819 147543222 684880191 825256133 837912728 271051780 987246416 953652500 50642679 734784175 731587352 887998577 575230954 155323817 860925226 121431849 646008892 378206803 725095061 236108647 15450871 789776298 870969000 450382199 187405977 570974830 321356966 689752625 929815821 97487935 298215765 14546543 218741703 94313426 354840621 791140845 11145457 391135865 903527754 361687093 386926645 943007229 687561066 917294734 365222850 337627500 752537790 441390449 675129916 819000228 469266918 763335451 697064890 869326678 888064129 7002968 63726687 758560864 220160484 905172516 283161943 445143593 497994300 771924881 170774242 489561336 100080277 151310375 903065852 93829294 679479266 117997629 873608676 228993794 790300264 326398288 165335687 672447900 833076143 739318609 174873645 339512711 838280229 176738715 429737611 785754596 141217082 589779404 533429740 706345774 130667554 82808474 530374065 377798037 355224862 221623036 697330300 868755979 931661897 821756241 203204203 406243105 287736687 652824131 376080606 741699785 414027171 87954136 769922588 609199315 456448798 312095475 315228140 970734128 18207050 64325516 740771882 123386753 857554871 152127317 793643986 173643608 363702200 531468431 593540051 788026415 54093313 99091193 883506776 741110626 950582959 848260324 430576694 48734491 239323741 644109148 104326245 323090428 661684699 930084198 617178578 72560736 519692914 205835812 160462476 454343193 267414769 639625637 989354308 406383225 342885456 832115774 837599511 318490043 422068029 889705019 428426800 840782576 875752405 292014758 800553188 732572294 107897890 244972394 931162159 114322115 723836144 749893864 434963855 546667546 504877148 95018382 245029003 278254943 420696224 437455569 272273137 826973000 145669276 124412983 124881123 27388156 38680648 185272520 848279819 831759240 488204200 920533465 48353356 654802458 283560193 956027662 202678490 386894721 354878901 708020158 956370518 206518554 152437554 565898042 342186616 700186040 390175571 613876661 667369216 856940064 709505081 42811726 402709865 754017683 334577830 59791824 943911854 853093390 345836584 919281502 495376682 516805395 990128482 384937074 663867857 260252692 932954675 329724852 617468204 444148877 308894105 521879638 375463579 650358140 214914693 338943620 481900282 563968829 450459431 400161036 232710585 295925827 629109849 465865535 283459963 306007419 614138381 86763920 480369995 305639594 905401691 745573679 388860025 443601744 655810942 482868324 73872954 538264634 528609368 460158736 24326337 245816661 608757875 955067829 18658105 211279774 239269425 678476567 543627137 681809598 508194224 582553469 381044362 954403315 687388737 598772288 913495663 973949378 761179554 668414898 939400346 743444706 265628751 996804242 556506126 165809775 453719546 275548370 109354113 61716905 429925013 163752604 467510003 736681275 932712193 876561747 585255552 727093496 246927736 336300048 261720956 359330151 859168101 635236152 621123331 704783522 270364029 851477364 685220491 928325275 849897476 743290185 377310571 467088322 187811281 386137931 785377027 642408982 601147224 795178190 511821863 583734539 920881299 735895951 759757641 313409032 103478496 355372782 830443035 821301675 573568853 178182106 837432343 156196212 646457156 872123273 242711557 125641391 884833614 980135964 996672235 357546498 430510265 612330156 290990111 584085730 770960694 928698052 147903499 351525868 760733523 323456570 22497538 271669666 524022643 191138117 92746218 396415553 536396890 957169955 900803340 781144686 718942555 654300227 381244923 455836569 473323298 258722092 692657326 192471968 832177110 747337616 52813135 90560075 618856020 253556254 119435451 625499713 769410892 259096542 696454805 332441811 390560838 315667103 532108120 264844566 396226118 436375837 15351805 935535035 723886860 140332238 988964265 220653345 553410845 697539975 462288243 987375561 584745714 156490818 629067931 364484050 734013602 160825370 359180843 343086875 326997577 249761583 877913364 311837493 288778986 754052805 468906969 543318544 623696274 34770311 845801616 409966833 274098155 79561317 493578991 769170378 125270695 406894150 636366804 504221781 922119776 938208380 222350038 412729731 466003412 452787913 572233891 747389788 615141609 619518753 382511923 913514995 911410374 52954581 947667313 30875511 592469282 841184336 898348787 607549659 982324749 561433793 787467308 925065640 954817261 540945931 785836734 238206236 189200792 601385614 446552507 308108140 634131959 354761567 616367896 322126328 939976568 383751909 395460751 364060611 285876874 638008703 89712910 398498876 358824237 315122514 61840958 803935829 947261805 60378482 437964349 317605339 75523099 30723936 787303956 155396540 983595553 989291488 810900994 733675281 794236312 377899446 383927734 672257414 297369940 703923589 691146618 747042294 776033557 980706254 338367176 198996060 405905288 856082294 809104783 342046406 706857615 620565570 356045942 722181294 96272617 151596785 79918310 124553996 144889074 953740588 548311634 358589943 385758172 300532503 278537235 312012184 743294194 178665280 963051766 135721861 376961436 237642105 783106109 259788075 992353523 275973348 709683435 942750807 705737763 605297897 890757221 767484040 184391727 519731378 17041634 786810434 782036147 593650274 184643247 46923053 691276765 872898330 929798791 603106024 447482920 401252601 515679518 110786490 801474162 67977272 455754589 751841510 789890313 176835724 701174211 913303474 742674918 703502975 645355311 111872016 646933553 285150957 593735679 580463062 338587154 607753726 167933110 117294146 234156745 296218307 940049717 704566255 390781712 352749722 531046587 955879138 29892208 474810327 25033240 982100433 661561755 898352213 973470700 15942457 476399459 809326455 515651625 89007367 71818837 463967444 264320845 115012214 596743649 67344113 904334654 933044182 621311260 656636409 268586478 943340255 716164039 988135697 51010341 919699075 143462970 154194296 837676542 932626555 179298273 238585386 242504907 244185587 26931647 372035113 622507205 965113767 33565091 888805886 767911711 968196812 585531379 450447595 375212564 935714003 952990058 791976556 483663832 32687813 749708337 705744924 914340472 277147831 774951862 618376852 734905029 15367883 566001731 96241860 172987569 193105229 413091019 701396487 324201368 845602184 100314798 732012793 859124544 835457952 884488545 375942917 602241866 904182084 199946674 310745655 84033108 390458001 681295201 861042783 64395238 589887380 330038909 583363877 100166035 994034130 374213480 312442037 88235619 324486404 205333695 246637857 793460036 93362976 631508654 679143065 139189821 619190279 96301879 570742422 785160323 335991176 536612489 458388202 683006315 513839917 192098727 766291679 932225900 981195883 239194382 293541461 919234011 823883757 318936798 965827366 107807023 965746494 598538118 530908204 991754265 521847583 76725443 405191752 588236255 265944813 80069892 634314250 1522367 335887814 579502428 70572244 663008886 730874663 385879619 898012964 429039719 76104593 95142284 53221202 662901066 612618933 614920441 783694629 215348446 332384562 518496083 325656426 766926961 747392807 157619956 153270173 248777406 154444205 302523505 437014339 337372123 479004468 953459145 344798117 573675381 761618783 237417318 172729833 356080019 915865195 799514617 174514130 830089637 913186714 617524168 938381764 416997560 756166124 485591991 826324064 606196401 655859746 231321122 974931365 812561746 177844305 241897121 492252770 648586320 109559520 920441969 398964171 78881967 959431158 850943834 184322667 136765051 241620184 678141192 940071670 561250879 370881576 996640959 437379773 931541857 341493527 90113429 977326660 416697929 248846471 564500686 297697758 855588757 296470969 644212616 651027495 745446305 620765528 721072078 501404066 955034271 131021084 201706235 838708426 175950995 417232091 328864417 275221061 655037094 862808292 865321928 123473556 786423912 944889604 818107741 724649675 685595857 127193692 162201673 603700134 387811974 278294264 873430122 266609127 602706817 559830825 376211894 360480993 78453218 443931106 778457144 485188044 100175554 458684900 16626511 508772417 457091076 971343952 314188941 114170823 138892400 752970896 916565187 401555146 290103756 335976377 8701429 932250510 912633514 759397011 430136536 476942061 436703179 193920017 525206169 539560590 802248781 662139533 476063128 708008141 39595570 896150218 5360545 64898822 345297106 704618000 968369070 437079125 409436584 876506981 888817475 841163087 778984554 886215314 432769226 898320191 594876726 536652046 864725905 702707137 475719274 184661726 810633855 447883272 923402281 526736354 831581452 644761493 754130661 179402783 74908049 235815952 621733354 578920592 201234062 63327850 301503756 924641561 974779000 619493398 854521026 638779041 930619068 412330172 542211110 838646800 747463282 647107184 731707074 444011789 952164575 1908206 153877329 460029400 840412055 253655383 955369244 45824422 430437459 633074549 92373528 973238012 624530165 50060647 661492001 312730251 628860343 418878339 423843717 5662755 368403703 529686879 494712395 73438919 206786855 304669247 991269727 41351597 944008781 466423877 938584289 168611488 907895155 133093609 655153907 376837057 238427307 407052500 608319838 886551836 415786909 899257874 412649972 173781003 540781176 875187204 893831472 975319094 935678163 574080790 174563599 628081520 509092211 159688496 89793437 952857252 982258465 510972888 789893841 499558199 875262994 982483981 412743241 462266979 340166248 977766397 723122677 84500468 322977251 530973103 394298684 864248793 767274492 90350988 511490911 18137444 881141768 746763151 374102127 127723972 375759025 841324828 268266903 245293430 692506635 786861191 447457274 479181926 118470491 82350007 822114888 525141979 608830220 581786978 562364991 658327682 832188866 432350053 402604931 833844865 949465338 40738475 918409810 809584458 84309658 736471602 798810379 588672201 262521821 10611515 384018002 130099876 762387016 256983251 807255201 987841633 471515399 237681074 586599614 298355853 702428232 611101122 601198903 226711132 214301076 473170070 322685317 259460570 127183475 953117856 974955066 942547755 627854083 606436413 532369621 619957462 462212763 519663717 153707523 415374347 961793316 392746266 77145636 737665001 315702858 602731959 531713691 361897989 594175306 4072034 76586846 727807273 710989368 870691555 661726307 600489925 936510847 718354797 525986014 567152891 687133607 381348582 939788081 1818138 804266285 767145497 670516672 961411337 487281766 60584047 125709952 769691082 714139415 806359041 214871143 504507516 198480899 118964937 244944699 809218671 997566285 293658828 135237604 657407184 350460177 463678381 540616060 500584657 655845275 919990174 760083380 161710115 206994828 418347794 611078075 819626637 741669616 219071579 918439489 680380119 91136601 709489661 461574172 889200830 928836645 876823119 632338745 700086134 220198568 176422759 153215726 202597435 891332416 902972802 995098633 478798222 656806519 915687852 761246355 560250742 709091543 584342118 303004984 93806817 400361118 440186529 736168821 288336261 243252653 318731822 862124617 362831704 773455997 155859 38976168 823454334 468093639 558062921 660750432 266958997 174739880 802268107 393858715 461607956 270027435 361608048 977692058 175020036 729298211 375548961 670159306 201035610 475691406 904879807 367481080 48155810 715540610 68168566 90074622 177025558 875801529 206012708 623971919 524338133 568669667 37216607 81527572 410650674 737692871 432396208 261014032 186258607 783510607 817388428 767237146 844246945 395052713 812739223 318715748 679990935 318519023 844218045 595405748 449070465 613421357 598640414 92772136 643489352 459066987 380630788 928105849 317570471 534704620 150131860 849064835 833705647 90003451 730342046 804441977 310797864 339006654 671893425 593630566 920408933 473143635 301955895 597898123 867768593 908437442 114875653 770358529 138907562 636073606 229318255 532313263 868174669 989758640 325010974 591039018 891712010 64476351 300350996 958433209 833187098 41082475 985854241 344045886 959145940 80163348 327124698 469890168 587858780 533975394 294717684 35588662 961083722 513527718 347954369 122841569 265901472 121676562 955085790 442739245 50021714 534024442 95642228 850519451 51275281 728063951 518565268 159003399 441926837 910042505 532422901 290734660 865155291 394240996 743548761 539890397 646891394 467304913 287529658 826384964 145961689 634963790 5908625 573129053 166690326 846081173 916754129 105456976 776520245 154057045 528152173 564867559 523654704 589937350 996614066 921740768 66604942 385832186 436911048 772090584 116587948 301005861 506517577 614710259 401770127 519407349 442571720 535230106 415106730 638070995 838090149 64052521 475583999 978849552 242486952 660031843 495045774 720758279 584206798 152946744 892675917 567935346 158805787 215088759 294197145 587822350 362684008 528937599 319536771 20663461 617433664 818098315 413123142 305199499 24549651 121120671 333885134 229536148 167034576 561556738 21107772 202323524 260405254 140307279 611545228 656361837 203295749 695056902 472556458 343849233 839600999 862592110 615337156 201819944 137085239 833228562 43272768 770347928 672688836 307935025 958999442 207352033 33131877 681383708 215817499 90615258 779468534 317139868 628386563 66713716 794507406 974400493 406406946 875182009 56082268 876800516 705286137 30780802 345283680 851507415 166609394 948087061 951149129 485010464 364454327 928135511 615031461 313383249 530403739 172725237 959163055 360401139 380807258 20056179 894557792 697995597 321463637 111699513 666244943 495040386 173822800 373099492 802049308 972482133 543059828 923204552 661768484 181661827 10856841 306170631 771362895 327226424 715284757 370650719 179963193 12539804 843714376 532159461 785213147 588250936 459042783 385229324 250860989 594604471 308693633 36188449 374529130 76575455 367434765 539340005 228890522 298954882 514826408 43298709 918117097 66291072 530206775 40772871 672316701 831340585 776154844 729793752 823014751 98009890 76645880 449412923 205742732 135562563 902566322 345148623 472714572 852860603 510426859 552207799 477665428 949167505 334561818 330999091 459360087 223597478 31548478 506538415 908458170 99994370 6708328 853316019 600282461 959129689 340985746 449827061 944401594 806907462 983629175 883443625 10937518 314742895 970051979 118706580 575250664 340276788 563981740 85897632 459201522 321557544 317687868 7175285 543053506 777596485 608798952 728964993 19838597 411128319 383344323 718646303 405268493 116378342 165857357 515436659 941654238 315801080 840039677 380919455 302748153 499248908 99768771 487035014 198274638 822321726 222115165 216845430 166006194 831597489 147891863 470419669 623076784 93232116 464358581 51506053 659772284 470006059 620554373 186409217 485062385 544581772 398898981 369144025 738901317 802037577 682763199 850941467 875740768 344011886 291588156 193073340 209671644 914403486 44102659 612994581 266917853 341160335 416810189 558376834 993726952 858869994 921875946 876273576 822406883 386406514 271088951 358654807 767223091 472246084 19109910 885849805 244845011 771869241 821981520 83813250 226572043 431928771 378265205 93378997 243326378 222780200 832243691 384439644 487626560 715097829 586336306 425554665 271789517 855974598 177514465 789627868 645375383 927673643 19878467 582995706 85327953 117294014 665395325 130625296 640447372 578151031 53293979 297364264 532990967 75846205 582646173 63643402 107000552 248140642 212493161 475840266 257183434 860437099 435362268 152866125 984334292 931495616 661113333 340765887 87637658 983723979 672561801 690460857 289355930 701885293 149089939 663741309 590898999 12367121 312597903 592802274 578737011 488447970 950357319 863985050 804634734 802816141 479092332 689563392 37637345 592234667 159936556 101144204 495326796 322920407 272458291 763308153 902990633 776345733 488896853 402167895 952023225 628145375 667952443 87833771 161329651 59089710 394901439 753758970 214077013 834068062 487012929 698652859 289245845 993764986 646098186 971432012 364297276 328897142 110966773 826673530 503688317 954471090 9130665 629972137 31256597 491779118 340963979 897035048 845202251 444563513 398636907 402777269 60025717 56481529 453371818 547707137 997223325 476188244 587992170 574987714 503732206 311265636 920437354 124228589 974681175 682486824 590622601 520719123 864287733 984870114 252586182 149984831 183141965 753397328 240599903 191998063 978406874 689429488 508762636 308601216 825067637 881370785 729244169 364601752 212032150 784725457 913084990 627731633 169745357 14598739 757336380 74478871 744608275 458581965 8535953 265246579 112156744 399954437 683913536 76427537 465751965 512931513 164382133 431637868 608543030 886132192 679776607 439572793 443973728 206550399 735050674 276022443 107564695 247306901 117820830 997807203 452423878 763665924 217762203 886041874 796815125 863621340 590954805 642999768 830574255 258591020 445201040 476365105 304056195 593867551 282005040 965496557 19110784 602799187 946743624 919986181 235562699 563563973 821317015 98925297 738202332 585020419 753697613 850385413 336075232 773061094 918493523 661573729 933726628 563710239 509538035 451008357 782411514 150475033 106410679 397327264 361254715 652441402 18295421 151244726 900925056 96559160 320812096 834451468 758112933 476018322 256423216 176182505 334250164 495618915 957567725 708394435 292882494 588501826 798268402 303057860 352813664 960465851 826906135 372286445 644791555 887275368 981604615 463635323 153495096 19805896 826007777 84970153 137471301 446398449 494070956 264995537 719971420 855579404 587590692 685219355 609850131 966043505 669773227 88434162 268807502 114216224 139268405 292738493 826398216 788441861 844113998 96763834 623480385 345916548 363153387 515530300 198606356 292385510 744870936 674086657 328209551 26707492 831655187 40992932 391963305 434370082 41404519 854678008 559534975 483319963 820973055 850498246 439802434 667414674 878536152 748735773 569966973 611665606 24136495 382082652 786991049 110193001 242131580 706751622 4418397 554117347 500312035 390808634 664011650 155399552 509928121 474799775 895279069 470704851 740222160 501466959 964121102 83053649 136639334 441706051 996347679 604587262 291735984 714135254 455454968 855068019 361749587 792913341 142734725 353742329 15556080 895366129 488898602 647527429 143497876 500745064 742848195 446780446 412323156 270822714 554593804 31437650 135807998 283741992 744665140 231658987 14701520 331495025 645126041 474007844 519477188 599837986 185657370 822831164 762489207 353548767 634164430 496394627 602483506 394708782 160865304 930818866 67706855 174210807 34262708 566336833 371511131 707112386 294699355 942512448 362553241 417553019 173004420 762537057 129889560 895529749 207016874 968172022 499430064 388076246 421954966 353740080 382960595 405951053 394381506 186312056 588714297 579747231 580095045 771616647 872688164 611946742 192932613 209975102 481795974 120768066 247632433 811872101 596477106 494681049 287932771 311623844 771249312 900306139 579997169 2760397 370811043 445036553 156811051 4512699 714493639 72808344 537099627 818028993 811192817 85059702 195896640 979935077 952991812 723174985 667037942 56439645 146492331 375875838 267678157 518723500 440677771 71990261 763738279 662445199 158663128 593915099 298391739 696110073 193434798 395928409 689556471 76429761 778358435 594690203 343254378 203014268 87041107 341464465 10106943 920228356 841205721 937792158 588932921 830607211 630632977 583517697 458600116 206008280 79032781 432607894 119295349 214580078 236038721 233056133 703285499 948341378 870528448 431845181 248768686 108147572 103137968 115997803 487584629 731469586 119525563 743231814 413208236 129561079 848330186 414676905 476767695 909221318 305605471 133719655 945147948 694932655 957679398 943415845 281328594 757167879 328663717 839596128 65401565 725413397 524158097 763315709 221989064 362095162 517901585 573460333 72404662 508947811 597236680 585688203 277445798 550274310 90254331 731761315 341598276 196162551 276700453 684012428 22646629 694164936 585031353 309691100 915017134 436613820 306486450 928149913 623286760 598534379 140137315 114177710 218887705 557914069 79654903 691098123 806813252 640088914 762727562 398103634 600191992 147053644 162838530 708193050 167888918 480851393 615073251 771623427 702273000 30420309 708083556 839605655 181884207 675447094 775580199 85470343 530437765 187030648 351520419 635707890 484521937 519742731 603926564 65724942 462642542 574276395 725047067 390000812 876640966 455473031 406417999 103113527 350654631 545518207 325424671 858737165 246485873 670825578 790975431 313915261 904002297 20998507 893994769 214283334 912459397 77771018 230175547 512976876 498289562 55757836 538355412 710235390 944266819 934953871 706585149 985675465 108469164 214408393 238999124 22713594 921617897 956970514 279208007 699222890 294077054 646694004 122401271 138292994 792647052 220263458 571108577 567396640 646146087 239019837 887914485 805926265 860893150 324740753 545972152 784000858 73278776 555286880 619338341 154747759 79174125 863651869 71181476 34546889 672534207 895563493 243227714 216129043 767628726 657774487 740967557 706866299 976987703 729731029 611687925 356518289 315822397 957222054 814938370 239551646 241647477 394130923 116346602 597065310 547666419 233141341 28885733 557830013 275651542 970334195 491579564 643502257 240400574 990311357 573178342 559155610 408355298 864274391 525584923 774186279 961043567 553665599 635154120 160547358 149136943 844508877 206546670 966112895 401025765 296276502 905972911 659919829 111383513 910749103 340717085 179459144 832453079 761126227 683153691 82258637 188665371 672281315 407946902 156280768 890478301 445672526 360502707 100132212 545876787 814382029 839923348 569148479 987660042 138139712 889510594 993454620 878608408 104917752 104727656 85405080 456720875 577356168 965340832 244870215 791152749 487851482 613993982 809340184 116709938 294945091 961498457 574608085 218463971 245544374 306596002 5212179 658560823 200861804 264412574 594627229 841660694 471419392 467919901 636374971 515917247 753293758 719783734 665700328 886794605 975042092 243269171 351637157 890534642 337803232 144625516 666696517 7858204 435413708 81489912 280966984 255755713 229320321 638595078 913735994 159676173 993093219 344592355 418589409 286279417 958381174 988691968 589058632 773127950 410190852 333890138 569908229 885781561 224414287 37032766 109792112 846940034 397638825 6356363 472901811 761421494 377947946 379741817 753706491 524730143 126040647 345758350 315794666 347923635 29537309 536291202 847682116 634822628 86951482 22464142 599835466 713523473 213693326 134069007 944599298 187143651 838262801 694570635 833092944 75191922 605834948 880701245 949788455 610425630 943743058 263218379 716834666 277204085 210897400 784376636 41858527 76817294 270095357 200927078 105381667 327259721 940281463 650946423 69421278 870015430 740641762 510691796 893021165 70389596 636021957 446553448 470793168 676623320 67608034 24015791 80583541 872846911 112051078 235352373 383686042 67143862 806068465 724142618 185469155 6727030 125954259 11489010 235269568 639343398 656214909 811188713 395700566 386101571 608409296 869722783 872844686 313266396 546141288 495789450 334894593 526810790 403948096 97085213 270910923 137160642 982515657 588006486 843197201 881288331 809757358 280896355 648154079 881048803 537682004 143492461 485307169 825563611 771803588 375125595 158447786 930418812 278691206 910518370 516866320 648188106 2625489 503266617 393761095 234216470 749911859 890472625 918064312 432929308 789022790 36571886 635876463 53436449 549655738 431817740 387911288 952556575 680867775 92640082 111165102 977582582 518683882 649611226 293164455 167705102 908159910 646788099 908636328 15661759 85470175 826755094 550554232 68796411 396174761 770647327 674428677 499694728 491783885 327131013 684940099 342003582 18899898 53424013 285646284 591554442 587806528 175920345 967436909 100892889 588401207 278442532 978944883 731291001 599811490 987214179 323271875 746274045 924379485 81940272 594410188 134911856 293924667 374129719 981708667 421444220 431721634 244647328 982097822 914368173 9430910 423560757 945892156 700440489 441424225 513516663 382986654 836876150 625516788 851184070 425409757 395892249 738712297 346140859 984923702 221172578 278087452 537842759 446180889 109178979 544807005 778301725 488178975 900557927 592535755 417988419 782479726 618721178 208674605 158034526 483297075 76135000 524069511 921350078 600750087 639198928 409233792 423056637 115579146 909896654 407216423 808514434 291123684 992277495 916564732 30658075 405035957 480677326 934171776 897351754 613620570 110648347 431822843 301542522 893139015 68124746 248923085 657274103 942998602 563175414 480485826 423232401 11963043 861914715 132984573 634998531 884565932 33590415 770107298 979548922 572434314 149118651 12193322 150313167 769574398 688740884 442778783 669403281 675513741 361221707 444378383 551215875 466224775 491735991 983213388 464980044 107325010 688808825 900382584 464877367 580621630 74390250 256811621 205443914 835484303 941577383 493663860 88329955 608732111 471751286 435478495 764539823 126047431 932646532 734569805 18990000 91396375 307630178 239583542 156103141 98451584 177028949 302522755 632986382 117433858 229895044 614866101 177387040 400896476 427329170 467623809 276593197 209951277 476976314 100137271 225421645 35383896 986699022 519853641 581610669 45922132 571635354 396125744 305708025 306189236 519018531 243977311 285862312 144797099 147294408 977452494 112770285 554457959 863012930 374324644 859133082 860606468 996234704 295647446 318307670 919351502 935540735 42788254 172286736 968787626 931828534 377892957 881273568 83208789 703472229 411818900 547478806 250945228 32462541 681282681 542933282 398039026 861479924 463885806 820134687 169758260 247325150 88380483 528359069 834240747 742277714 29154638 359301380 546433120 322843034 532825140 219838191 518629805 345729885 440721187 322585174 518283810 935706609 175708057 65299490 696170115 933560864 13732908 20738803 801177420 890752438 283538153 836079738 854361229 116293506 308092368 434387135 7584861 136187668 626943175 114105153 910251874 548932540 570875817 441537725 350881467 741031213 393689668 470299024 35908592 34372795 141269003 774757657 986464991 96321360 36172597 542021429 447538136 202941077 700951590 364170754 772431118 174132986 343191051 664318432 957218365 106320798 12419383 34616427 667489114 991589318 573357998 236135948 208323302 728450310 66705952 842902922 456869828 748794259 367122828 167005711 10827255 795435430 425198129 147571016 274167666 226548344 700278610 664921707 138008298 712848857 107544354 893366300 361599456 324952244 784404657 297563101 3130777 608298273 463664767 381562715 75041998 504170137 466186362 657784133 784440829 701907506 229723154 778348944 246909723 592595567 840214874 287326259 136200917 29769853 75715088 732916076 102190462 695165285 150878675 917596508 216656919 24373290 672057203 303937095 808432693 678688219 642287762 188355698 135245881 163545752 540884143 858378624 850113376 618341149 445703430 113937453 4473072 566267633 637265294 478735911 534584256 303067503 268724372 593994862 408173589 989626920 613672264 699623357 561076373 104239029 317813558 518177510 740993576 953958829 589704085 539820653 360436222 749243562 711050611 493579985 179014948 358354890 994820026 276128881 609539162 908187037 754280343 134472370 870844612 532505571 280089173 68395030 877296686 595000124 16345892 284313835 934204667 280384576 86070145 480468489 110854601 946961425 666333132 641344148 136692123 825000719 946952521 881573455 710560875 603086301 237271899 470711099 20067898 700860050 518639864 49153707 80304825 206292787 18247478 601799212 526153997 790884556 103833787 350345358 392783973 681043542 850539145 497584800 481052416 53137742 270729686 837526112 489173555 365793926 983486875 862751646 22529633 509396099 797072161 884516231 224685404 314114805 381965373 947659567 19296360 578455788 13956315 303828744 658097065 723023192 216803506 978979391 819506101 25978139 585030480 893227870 528253860 882359651 752981179 688625304 411934340 897306323 771308825 43633736 825281115 673946830 809190905 514829435 682953910 41039494 352277480 935215415 126612297 409625713 444440246 850809762 390487354 553518151 885406309 47460051 592050583 345557252 630650200 738500647 228167095 504122070 936717844 391364766 433599929 639364447 641809767 295950445 58543926 271328108 348244287 499853643 177795146 635445753 129424472 926292015 673849687 95136903 87714227 129349762 763578650 248443506 187117484 314280595 428468981 344766995 631212874 954103890 750817683 662462840 221669916 856425031 235416764 473466600 147148849 249931158 30946416 73874535 183899479 27552540 195436012 897802805 395760935 665233454 194098854 733604788 969799497 73883441 405130201 626187244 140251143 91780258 725565060 962256046 272886659 682517987 520104122 946516918 344342812 844716961 532084628 217867161 402095880 65936410 3655201 807193891 288307115 871043081 570005394 762873673 168809663 707921168 536331732 991099317 514624593 692645814 141722358 602944556 549103704 156445253 72387713 888547571 670590205 970692701 724465172 960334342 209263715 540820173 957997301 938741211 321940938 538869557 39020135 922807815 863715179 707534618 843481258 741950810 893284024 470714728 914791647 468178171 804523680 883951655 292446244 497486907 659840890 417035356 760133967 446116777 659966912 887204333 211910035 36837404 609988013 679019249 443069220 296061574 364663156 231558298 781372803 483098325 882643139 76917974 98001023 54273715 205416383 528566868 105362015 522981821 363068611 701291892 805021691 758662432 592153554 838598258 841718686 771754201 895960931 96677774 862283960 585259065 850253030 457468531 753425657 880014600 483617253 97120206 273319593 687054125 865722026 388907523 928933536 180923997 662311173 745883943 896467459 280765610 872582814 441137282 119771315 671539789 836635054 450993424 963184641 414233657 244685318 387027287 41396180 821667169 2317190 130920401 301079811 170823809 566022971 197242802 222424103 815093038 644280804 850572924 937698877 447005052 861247435 960288155 860851690 942056266 318259840 925370684 28311284 573398162 722195122 919133003 741976400 228368178 776024291 965571440 759603576 943697496 531267186 545518136 946504352 928499175 827175540 465032901 821983714 772865390 435270443 606972985 767767329 734207280 579971567 762707227 422598824 248964155 869966378 212067071 183202964 883691737 921242646 202714410 840394180 596789619 615144574 897275003 276339130 595325553 404356224 474958789 85743621 718673884 414224127 507515358 66491441 874496039 796015250 586215443 386876202 473430016 981242183 488079121 734920069 151988409 124732684 236054883 44282276 376835140 626058850 667759855 642715418 303482006 547033890 312352280 413950447 95571145 130149645 740602603 436588587 55209434 681742796 190655778 580386170 472980390 341771631 871772337 319365157 816525869 124490017 405897232 955042609 322519865 147465861 539226993 671741203 956040258 248371239 162822252 962411601 113905926 353235909 514368084 431592643 303326889 375840478 976337512 770410004 189983708 547087008 395368115 178161888 278021138 351734724 931636932 626867945 454247485 445495049 183266831 142524299 933118294 313049483 440055950 153940896 107298450 670974872 665516423 135589779 612426553 683250782 678073510 322453635 936943129 395785891 736932073 940464459 550570989 508814067 347837709 352443405 876629995 729066450 154764147 180383684 756291490 996071422 455523032 820347204 461147866 726660069 438301179 565311006 347314861 840072713 669392526 593974734 406005288 831813193 429210100 21463791 138915112 840335569 167823940 160461764 28393177 179344416 24191453 148149359 622031423 498822017 903622367 111025724 66406072 351338432 726407980 23318109 740461974 198041445 322840857 19595861 650991918 440138714 656133205 591630165 700711662 812390176 934789478 400427941 610740891 645031667 898488633 745020191 995002264 7092892 662701768 707419595 611073562 142101203 27627593 379046881 180938974 669609593 904144119 37029366 283909239 732247460 72888969 119159162 92360918 995969323 460571864 87232407 295833644 202658962 40569827 302215925 467623354 100538504 451741419 733516844 951112934 294200991 694174850 218479791 905627646 474334746 946970693 439928876 769179444 869882686 322417759 492573824 395357347 961153167 906992151 192246825 350579782 673208362 312179257 877030651 868684021 351542515 494667387 537385072 372352993 225658187 314688225 657995807 565218194 54666928 708379898 286914188 289120886 145461018 237059150 421839514 818088648 486312683 518213102 7459399 202067961 653570636 549729398 271014268 364650347 404257062 463499458 631941209 943910660 556202661 776714743 712060971 586385298 647649780 867741184 728320285 14560814 903068054 104829022 506480382 928614253 142210030 900598555 562167807 252532242 751876964 524692905 844449605 173848929 994970967 593441082 385295859 825544955 128394673 452784078 934378628 814471511 118901370 773447699 702275723 590025622 231845524 907772953 3404749 561903771 416808051 188335015 484711581 751839164 966676107 453153104 553312273 315757916 319395726 936387726 933201618 424122628 799529554 952091414 548706126 721180011 631330182 649843640 481179621 764995491 36444536 485498029 958350516 278984308 677655 757934937 125473175 634651667 859335996 45105640 558749976 294241105 582036033 976008135 215766296 675352520 896542514 930747374 11952057 974027050 256216183 678697111 999395913 973865092 359870524 620916700 658112306 992212882 423177694 713780877 479547086 28684258 971151780 926732739 369690701 249194663 767769577 353224280 285680136 617359626 90560820 333505763 79948658 179060784 562674595 845172692 67452814 989627026 520542068 377607884 611764223 995640739 83347898 554848438 124977396 671499023 819994931 450957371 365996514 283898487 330986416 862884903 798867393 450234207 483088631 780192189 831266851 972941688 272754811 25571378 965443298 257563907 152504441 627139037 478689790 913101394 759499746 728397482 858053097 76614167 667905574 775941465 88577476 814648515 720832917 520650321 93723207 496129293 573778046 811510875 382665950 343561197 490396330 61405568 254650487 374841645 109609993 11299519 302570592 218092297 55847153 11227583 17247062 576023904 971164459 674318093 427026273 149529735 798049848 549157941 287203499 519422916 573376655 798507443 20281591 30054685 183833091 178089500 120205315 29514852 580799446 739661872 362858600 501411360 942221672 17166141 527245710 384322033 548285946 319818788 737361688 280787226 563173034 663632228 183028562 8012391 585404601 425305957 550413206 485000890 971873876 245112303 316265873 709505519 595522456 423826638 43338448 212923505 964273669 756623806 55161467 581948129 463800284 570868105 816288611 520452018 12251661 109411621 126578065 223458655 306805764 209399317 561961913 839607153 611051578 399624317 856338247 271039990 277770577 208481211 666982032 580923308 752721480 659335982 240828768 727422758 554364446 898155091 639044401 75824984 440593792 48581462 67364621 262991616 462730823 709153599 668310403 837260521 5149371 833443736 106124293 835535888 806166958 960787188 724312163 731360506 360660029 461174126 379026783 787584387 447069187 3423700 101268841 513897525 576148475 337302135 517412602 896106235 530288293 961669768 604298095 91062032 544854003 448601816 689409753 736605036 483034389 113511611 943115294 144074880 157653393 77219510 822286102 530532285 978126557 732014760 635500497 929981277 964264398 40458443 227377208 318154277 4885417 831674660 115899410 343194115 142785416 519930661 621627344 451973005 400892701 819249637 858006559 88506865 581033950 159251051 364696391 858865261 350092512 705717069 239160871 536020186 446310799 317908603 442605278 666471911 861494790 371612363 158931797 982427491 324400817 767716197 314417188 507542892 338087915 859438663 983800428 158440422 255224395 856577428 53584345 805387292 230977179 682350518 513765762 763041239 799002817 515876035 520301405 479991094 510080470 613787291 464121927 286181738 585058603 156949746 412393639 478037185 696081142 704888579 958361730 122152683 932573772 427074523 509108749 750222103 756690033 87574776 147549306 309818303 41868042 731732582 770756500 476951490 640761694 591584418 753254666 21632406 105888106 641750913 542581745 277239969 578217272 511165202 201566626 236193327 810394634 433165609 10116605 903553655 180783728 191004812 888453281 140389880 295830465 848219436 923040071 480566846 866767054 398077413 354201808 566795013 16454276 91843143 372518755 655121964 654517364 956542178 292693598 34414123 980078076 737994970 704800356 955691448 666819019 990086364 116354116 993401376 536273165 235400671 299653582 276595877 677747236 160104897 431463213 983920831 878676104 290200069 157646393 439574839 179806168 659060641 964038399 8527434 433460441 367228720 669415154 559859954 33470368 536079452 241346108 275299107 314180215 270313942 265078330 607882726 589721219 259825411 630034855 554392272 942686030 13441532 713822544 588359057 583810888 604518119 551332144 888684581 610901438 120933543 528989871 760792377 487116558 996160140 238461142 84531172 253196605 741660209 219319112 865708104 667664527 794243824 497898181 72559616 767000337 475530039 618443217 918948214 821239294 602602241 679818977 888230172 405731210 258359081 878848246 132550727 681300290 103396219 946693179 727464240 397851483 741425566 182157029 29274238 539377746 820521359 261909765 480096112 681508392 638388809 896515617 618209687 166898314 908700092 976989308 427335027 410659228 466267992 555670707 54990047 688753373 246002414 239621049 991732105 475292554 307846589 639989744 895116936 281620789 224265970 721797078 521402107 999689360 687317098 500434955 731513081 737987531 788474147 246619528 851895472 644803100 726173651 375996321 408689086 732465847 810875239 330252924 737019440 274427737 564702460 659779323 513652704 248466331 745465725 942835569 876367556 328188290 435606620 232451044 33683514 946888268 71768898 671785926 572944422 337229093 219751062 851129830 475614441 154961666 467504187 747748736 248921181 36369465 202783512 788479365 391216948 854671124 455097609 58989539 332877376 81484428 74114720 593732736 103684761 331477623 550107610 487883733 255277167 532888304 587164151 439001494 676150249 229363831 104269152 461888720 239655222 154885922 895443699 850753158 647386552 111066620 31758749 319784525 715403381 802177453 652998108 513629165 729768605 376959047 688115892 664594454 117296176 295511755 430050073 496832426 602629879 955509825 363883341 212549258 557821390 238332778 343652332 604495937 460581447 71582532 886747959 732355288 960799930 604627338 292242670 58382306 236307080 435912643 206226835 360914377 223100666 276190526 354202887 435877484 182738206 502160162 766904685 763959260 647914930 279805767 340189630 723940479 346672055 151427779 564194354 372329672 4208215 8518678 519413838 46478469 789288774 689403166 339555587 204957807 915370132 653829911 405794704 558496886 640056475 519719456 493805139 534504543 241287746 346351194 458297965 786619181 202895446 859722410 909140391 457354064 142189161 149250403 92156392 31256962 332818850 796095851 136650032 542727104 654851659 686723104 550258803 592141174 671932018 250801042 932486553 484596465 733229994 362668737 232272363 746038274 296747095 673936919 209448066 302303438 340305118 754560627 828715536 968198369 849715016 287738873 753860769 564268539 887919353 487740798 177764503 400528620 461680069 21421451 299001081 312586189 588479329 920145849 374949958 790626187 780356334 376554780 535397899 45784479 572527881 407506937 260424057 118667368 461374475 363472775 131488786 178926099 923518487 268403927 582990269 634978470 200654238 760997883 435450470 735515556 892846681 264489069 423501240 193933719 753693748 50532938 213963526 908474742 377650432 56841985 890935604 63480175 374588248 216691040 810733771 540932101 15421698 360537487 555131751 219665956 627388417 110991584 173723812 323970042 436232920 806171261 844039899 702469653 200538163 738164481 576787116 683975726 595466015 774382650 827441216 5322556 11796609 806773331 566663436 502690487 439134155 881824055 541322888 105063894 83592440 967 60151101 76441046 847642104 942066300 655064231 462862813 761828859 538612509 671671353 817927982 30363405 854836951 329125446 467194670 350961298 280434850 120748388 122735439 397360387 413797938 50797201 742540594 642228565 657274229 247839988 868198198 451507674 370482128 110221691 941809209 884915484 974187874 505976737 1696267 712370437 348569385 425244328 44020915 18416890 198151255 185265528 339257662 909656625 164897519 429936295 73591185 91359615 309200825 411986476 412893105 624668046 283809793 819057021 883156200 504113026 655444870 849337470 610057523 747784496 301150020 229496740 286869958 421715300 225437852 545587953 855856725 851816821 399437163 40319746 990723556 508996184 424130933 54403463 718068751 176680333 692853405 767462320 517265726 711658072 468750612 400660772 831276899 563229532 633115883 232371513 917745557 461936469 957081999 849695796 417948964 1218255 206990917 727171529 817007061 143640615 967285293 951853183 335678540 509475923 390601579 262478022 692179707 4643183 203786657 490815668 105197141 22648468 748831540 585489274 801199889 545858890 499309666 839451618 57812042 129819121 757394092 824876515 714565096 175658772 913290909 396200158 43074573 598321951 639948714 38623203 31068363 800231452 346283454 798573024 186545490 780734528 28545151 292681457 484627897 471162102 913274853 874567728 944341727 364904305 199709663 922935143 80466650 164568093 209082183 248230612 704911945 71029433 705598605 38549838 105717841 873345876 222735155 909882723 849186444 26295876 171806060 428016530 578690749 459495743 258618360 633988913 222458587 70843916 614302411 356426399 530046028 423859381 69917758 502241947 320319685 487198692 663836375 930407363 106257943 394702569 937573783 930596001 601760837 589539461 720784477 998523155 787870537 72821308 292960453 202781303 807458617 241454020 944222301 209876637 514332193 67570976 835819548 430901317 556683263 953506483 789946966 119076956 636606991 251091950 822240567 961152570 83984299 851469075 974505937 380626149 749516316 767842893 423705809 160066523 3960445 670447170 134264412 747372022 367733329 512744272 329212237 108157256 1338306 442698291 749111267 170850909 513633091 308004090 247754894 967285331 816117382 218551019 882090418 472756064 518224590 232654046 375645739 708801518 624022678 297401981 275360848 416182312 788659500 919539445 755105463 934918859 267262328 188350885 290052716 297703007 822017099 604564818 352354 749604513 759343821 25564339 513813699 255528980 810047112 586676845 869592201 563885087 482403269 830742460 95282088 923625280 320139209 293808043 69065342 167350822 651142197 920661015 239419410 574570159 817023611 252527622 441436036 615469679 164906947 589292810 977265503 832066312 543393881 511781373 548598638 237202187 717429266 877265793 410729917 340182240 121071672 257655503 486520042 664321906 732229382 328713272 767391119 792883447 640065510 283189388 612133478 27340072 723537230 26656586 841104020 881507293 3827629 420306752 531141951 107694118 853221898 775172979 899569709 207233588 723479954 581901279 730406203 537766139 574218404 719332309 709091684 351326365 456354181 400701060 308227661 680206537 971380891 362974633 897702868 675071379 632715470 966139634 631909849 499931287 867801528 887007837 313154702 656928875 350894683 650801734 721018188 6797284 748039815 710347981 874244707 406939152 284101244 656039618 51867964 437720403 570988847 793510290 725876279 199686344 916057708 524947649 817308542 10415593 733994558 762037214 53476336 455407295 30119065 783060468 261452620 734624532 49436246 185014915 39559046 797927298 461596753 481092909 681939794 284132768 941838059 987494361 21798358 14318534 147752564 368034673 907732601 525878827 379343336 184744617 780405367 894507226 728619060 532324585 42019027 953047220 873156891 42594194 948972435 309306711 583372720 536393641 548965515 660730266 105207182 733683057 749357078 170994896 652243064 859620096 397159014 603827226 534336545 993628172 240059172 379679409 818993522 717267796 697012080 787671907 234643090 332248217 748701986 215345929 958595403 945323677 43820098 898062720 535785520 5575597 880571754 340757457 563595675 636753243 931925543 141747916 467013064 778642996 458860518 445909796 79430660 232319259 844996330 937502326 669570411 156474500 236176255 131061895 286569567 674276219 572984716 187196525 444345154 94576456 750846750 271387992 600930726 676961251 415370265 858110090 888501315 235100545 543044032 417665330 577575635 901574814 497286916 88191915 180665018 360111782 533451229 880876787 594064204 5853359 276933929 726129318 994133872 381518483 405959028 193773597 149301907 249264886 943785583 158155431 959421128 691097877 633912280 180817112 838102321 243731053 795041262 216313102 956640893 469402914 309446339 143134562 212397006 480582002 630433269 386058882 968721998 857450442 800254714 711336664 510977406 470252196 116932671 884309587 928667025 666415462 672711611 483295590 283272574 952511027 866247918 727978123 264650630 431382088 214060914 795607029 309196481 79912163 182980665 60813465 881461459 386020379 855068990 349384743 117908392 681561128 17481419 68313759 390000860 745323465 955143823 755175930 806873126 975232337 637074418 319766657 936233500 490168394 943994692 503234029 109574088 155782215 377873309 835648616 810284518 814090123 363702877 631731673 135266174 863453301 515129864 836338616 80095324 792407818 156844511 293034909 539362595 326240445 717157582 954662843 668494530 215631438 56073948 740133443 638542264 582932598 616038338 151864752 883976304 648973019 707132192 251033052 631785311 879791298 892579238 543096768 941625821 137053736 883312295 475950250 857826436 192155626 591740723 649175756 288413801 787208575 231785138 366498218 676914400 527557666 873513682 375943936 914591429 303444189 490853047 588494117 868666600 585363940 460478116 515562990 878518155 432467989 548799133 654820988 696546073 87280801 511921766 754795456 522028102 752790780 815495743 661570288 199585748 199702204 81076782 794031770 168740911 684808520 776657708 695013466 185121451 274766777 648034747 791850465 312427083 248842329 311291215 107169182 978987740 456120326 439369058 568170505 106767183 955790046 768412904 949814224 548056733 40668283 999237799 756260408 743182364 956800706 251573192 655730460 184546626 872826297 846182557 75138451 914120805 337007596 777421323 134547558 985230393 433007014 795806852 462006246 813941185 688092415 602583189 585389993 944201984 56462408 881499308 925269240 369498523 825360494 452715349 592843536 730210363 448462713 630081877 111076213 996622206 905201217 764130824 262547714 107716453 108805442 373980180 128988064 604173696 96417642 455863772 560986613 92210919 948068609 943451974 783524489 438171934 35101431 564761647 676353429 119741065 888428040 8482770 22080809 11566428 295568848 750699554 392439334 401074439 838188855 746279874 387608538 786407799 254513244 717957399 234982772 824528399 452221697 683068230 993983101 476219261 338054173 489746201 498719740 811657832 717880790 660970404 609095445 345422044 685596507 118383548 996864516 902380196 249004219 942034981 271123649 398012139 659940634 91597752 385493328 102058605 100052848 344516019 384688001 747833449 39092315 92400842 75328763 789225263 324891737 815903254 212870784 148959970 850510216 612682518 45159236 402022746 79210801 59891414 535451366 552294862 103433860 646478289 351901838 807971371 651792761 236396521 308822773 491884566 793324265 537577609 584835465 112288332 896827933 525742333 79702992 409293779 326140197 632785822 843064232 605067372 419284861 611125098 260747582 987706654 153565169 93567076 152486605 625235421 434487124 501014602 838170745 831189913 410016252 657646463 874922008 686547502 535461634 923541321 597358373 757578890 974540549 18628221 606620210 262731636 990232865 268850732 848642520 880359195 472570318 365908533 283119236 8839871 780687172 353936099 582623408 449806633 793781726 531957366 136488871 767912806 239985601 311373616 680896112 303843334 383830047 672177381 226883507 265601638 937462868 283063755 776485679 334089303 587585304 881013360 933875378 270663475 933168830 726555355 328783909 971356440 500412966 800664036 943240440 960698898 67083021 368882141 934581698 336124869 785574860 355180364 968052424 510601560 851739241 708136662 306122217 729367067 952491717 522935132 774496475 597278806 370640833 139817910 698066208 774584893 182486595 516226380 225190192 902435837 21142038 59835933 239378081 86197257 235029124 261044486 595639392 736565727 809886473 22947082 938492894 24521556 528520040 826155543 316493286 595838275 581566817 143310494 869615711 825384766 568100777 981637619 762847982 302995884 269135360 559594829 819951098 752920876 357412290 948700739 30678739 849689962 817470166 524129368 152934125 127731134 890689064 714786 340826031 952313460 656073320 99029764 947193060 445629500 732992640 353719896 774007254 604074267 406085253 301193629 211047094 39931789 821586126 55917189 557799577 366189688 782727878 332667337 340858299 346689623 549277712 484033420 717686091 906406404 253100319 28879008 813922059 333992273 32479715 812144032 108995483 368288787 521675808 43286986 411060023 576762707 643577057 57933840 84291507 220097414 147601666 100402784 529615208 714005207 479480811 606516550 630583187 462818473 198522446 615810490 708741435 602997005 536833507 697221708 516411255 419939478 902962653 695382384 230185885 218670450 591987273 589098389 741557733 556961654 879717734 567332191 198306018 213991635 724957109 620562431 469360400 645636134 334546961 908175155 959717713 269747501 767230285 785660139 906955443 80656954 942330816 611108595 584300597 726408014 705839508 515315891 547966353 548552386 635124674 305243266 158651605 371586759 483433409 414268129 31026351 507513562 407626058 56338626 645032862 18072894 222234355 213812324 607654027 930433194 409535988 737510690 425873377 746194388 433569963 658978256 164994352 850445743 518126031 796066309 975069558 320683988 998678090 230940971 961635660 775653648 820743977 708814713 622718628 738917193 649778788 521657899 169096994 318813282 768408821 718774855 13519173 965071657 502364370 943369145 991939642 636327048 392574388 496930526 162819736 880393010 299279998 315420830 662113034 454384389 624967150 745303392 737512165 907329565 192871162 846723826 506120960 860106090 265835559 626861309 829948947 226462093 79060780 477438031 616311541 452357588 212842050 849963336 328006314 395206941 393302594 366348477 653591099 134837577 90539306 112583525 415465335 16266949 461850882 999966609 282808215 570145162 358128650 519395484 413302 833365166 195635486 961578100 835409307 562990833 139448952 236276266 153681932 878450968 313512615 170428308 746217013 481296633 172817185 903445200 116066815 807779874 706100019 57238874 212879551 78932532 237402217 454854595 52834586 806320879 822549194 231534180 224822396 420974350 323312037 761080838 927412861 826901612 289818779 156095883 390157663 869473812 465084469 516708312 868448477 939359761 388085714 807537368 104437118 974455271 538470004 874093478 530199122 950335849 803967574 328286987 150111417 244156405 384059281 950896678 850607247 538071040 528324031 318957435 134979338 725027744 122317809 271464455 627071667 337144676 22449420 322545737 805688365 727873567 967235133 30486480 335750805 322859350 797150905 791116340 513806918 978547100 171920624 584506293 920850662 519954845 398443397 875737020 757394403 399015187 946744558 71181222 601810132 330855879 781283388 882638442 825732799 779583575 674055889 540123677 797687329 63087349 353241362 424526880 30814246 501776029 220567052 648996739 419708016 985305342 655271671 529266049 185328563 963104873 170261494 66693079 469798855 837812830 108323593 149703527 254247547 207515183 474803694 895320665 631684165 222076680 495989936 997120868 750752371 744237266 461783400 8823762 979582943 936819826 741866656 746460373 72650397 652658712 400298149 594550143 424867493 952875347 258894776 152955765 932771037 143648631 675881744 774299559 349979380 790329436 765370078 169019109 680453553 680018750 533008765 143341002 630841192 433296354 435945211 275435653 988795713 467462504 402053547 611499836 367045708 891992435 427757999 801499387 936925886 758749554 4633707 950031474 360212643 45280276 450647784 362106701 470020306 886866673 60109998 421924956 286792445 483482099 361133804 601167608 334365077 352719424 907097121 742389137 376179308 985709885 942292553 653857106 214442451 860164321 237496400 263355470 139873285 278199366 953650710 255788617 17739263 363603152 824506920 48106883 869638474 147110823 228432421 751568948 441644988 43001520 126360342 927588165 948276635 639453363 254976289 399836321 879123938 280554025 884109814 757447212 620090908 372793401 97813495 794391708 847472458 593214035 839500958 73507120 472246247 209342711 224722423 846216104 38421532 468030413 482699435 223275557 671091498 148420450 957191823 472629388 605155644 752009824 578260555 269143259 497949223 957277348 111478828 633435993 805698210 124444767 889137248 683689898 531930025 288312279 923905355 454331539 664297710 752780977 491594038 827264035 501410535 584675608 380191570 634831657 944278290 315272867 693094559 544079267 356955855 922403559 711251787 182446140 852914240 23896339 421796851 332825483 314060232 335112637 164948664 723807161 552791600 516740137 580844816 244486789 311072312 822760103 624760306 713052672 74262653 547212221 694466450 265250799 229901465 391491695 338656782 221153837 530879813 857341162 952987689 574652085 99159897 316971121 423581135 748174555 75794847 834300158 3542187 213817215 564129741 519490881 267242909 907936144 799213534 601596677 852331210 403050583 890514212 399056555 118387084 273927060 272631400 578306343 593209652 320056243 971857039 342266986 886573304 660697132 745469744 267139215 886509342 784634950 461005907 860394489 332710252 410488993 795072802 339029445 159022501 331936151 117834663 240722973 636823319 370816803 778224552 901268994 625158826 668357 550041690 188325949 714327007 898089894 220240793 978105748 262558422 292412298 747334668 474539571 335918765 297392429 13710406 682129423 437276586 377156588 324257425 168960785 912371792 142438184 458687151 255220294 508257348 282888104 682826931 708430544 164509581 975679578 396275977 817010672 569087038 92907113 231809053 233837356 286983775 414795678 235404064 699587238 305547200 315341856 754950741 383641687 838801263 426370369 226531467 563730251 16246723 183173721 63115553 783953056 73009712 440326175 771477356 412580839 155123459 711879563 207469808 260306149 24350728 578253739 589279491 846321084 144925660 817820690 855446915 751613541 573842484 553073565 651194264 652481367 538613565 24979216 421076375 841188459 669411659 131150863 254964855 716373421 825459026 425817645 342945586 256757986 765462091 237132192 784270917 91541569 757511621 814977971 560429241 70612756 235319527 841203897 889585130 141732685 540686838 97225622 869553410 668623980 147598674 973920145 396443173 709286577 433600989 751142845 546437907 461366977 844303854 642539391 840407195 844070324 462655744 220343029 113795087 451981686 132231301 702302269 143273818 238133446 57495269 22387865 990595020 819777178 718342607 234564687 265093633 6862113 560829005 744075445 752679971 10449191 234779509 890953776 654703194 419526673 919954865 111368266 685602707 139559343 164859624 635546890 278519465 997750067 679013025 923562508 189421691 494440031 494855804 209434633 985870293 302226949 410852994 193488280 368960088 825391541 139372533 188789247 586508563 54371651 772334584 535517918 176643081 600527147 975967867 642615557 809640327 889516163 375942025 995820631 668941339 990415872 934272438 876469970 211451217 935055854 517121247 669201127 420830376 629159893 553019385 233684581 863244619 515991788 436156254 374704514 772089073 614341436 215504741 935752438 468817371 959617051 376024889 687776926 951319816 124625740 653394912 366557448 614561358 85011635 377799527 39758580 848738880 75637175 840237455 392939772 471506535 714182554 986689157 155980284 234535861 362244332 340867322 916435085 917915107 470117827 906853519 69992986 37723787 251376542 418454347 888081649 28361348 301075047 595698906 603009442 383220052 838444066 138730746 354072526 641497272 39954535 122295250 654001270 512557381 663256944 628208684 632177644 741994385 792343262 296742763 249718577 212631031 220780005 298023306 154989953 682366215 982878956 28163539 980799488 495571229 35628040 964998282 437088927 55791535 276870257 607557709 990939703 306653309 745975700 695353398 606863082 686866390 976165391 51738256 656211368 645043003 105172047 35802337 907288226 559127585 710778177 339062041 325237002 470439902 259893475 10754615 504140610 836567020 545201464 197722188 246077681 733809870 805950450 259054987 848071523 945976660 295898064 387454519 645823535 548940101 114988976 104746724 820822346 421645767 927823987 703777424 278427536 725506480 917305334 571788568 169005032 46312679 327273738 872836332 299504071 164664105 396807869 120021373 928558788 722057512 631387708 170187775 840983537 476331933 104118391 188796716 226412772 370665577 356896322 353209135 473542806 330298221 12985488 71837715 805432055 277075661 424091774 272601571 294374966 778800549 924704373 931631105 24328560 262053281 448639972 813943974 798684987 360218771 957513358 105076755 34722015 242781194 494785979 421204015 582198800 154552767 275872589 254966758 467441425 965181216 905475093 95119065 828173775 119545423 648390875 746550839 37462292 971181145 396597499 57170409 102006351 289538581 956232818 718242525 492694356 6838346 85106571 586295338 81105304 485507005 250274093 616466006 362404455 475355940 366369803 348963338 950537525 367229349 496047652 884909205 847122874 840648011 773295561 929663 308266045 731750374 35318594 751562342 862868892 876889830 790955398 113731179 263187547 977108741 663318404 521323861 879915675 991712271 354062390 646083043 574101438 239571551 1033202 838128076 766580015 809233168 574180503 538313521 937069752 549460053 635886906 46192336 153535085 833715104 908426068 214271531 183413353 651256795 820529180 711660447 813349172 443550573 19389729 846178090 33438987 855779854 111379397 213751028 700512954 342073923 256068018 416552508 395254346 188529719 848397608 998611170 583107915 732240434 508676572 661875439 5869724 775009660 235830770 811851603 463787325 194192427 439602655 85282257 688316916 874530016 281175704 986583339 447149907 858180577 424103207 978011115 381259228 876080117 563656656 980313886 236159650 948149904 681459880 164019898 840567952 871160347 270796278 57413884 532622510 203008570 93610375 616133013 731591476 740155781 333367952 750357841 816088602 921718609 318603951 263491888 585070150 261187251 95458295 415312477 406597862 998619190 2049986 464962407 425343061 906539413 496173956 273526101 439688854 775446910 688087076 998608741 775276314 15887911 190728559 892861158 293703750 145457147 460126036 103119940 263948276 847227996 147088469 754057919 561877958 590789591 802884721 146186341 619345760 346893488 206873118 13367276 398512926 431703587 827421826 16121178 884550745 754396721 99111936 733734958 322412914 771024920 611617421 487422797 91441580 944502381 168301595 360896963 239400558 282959312 799949075 89683324 384573671 967925440 803742547 779725711 705917855 689422050 620853147 530619034 376337735 111353962 685843905 694286450 65301338 605623265 538531973 192638434 73035087 727322358 557095439 909243648 509449066 16160004 720692523 414690246 157450411 495153235 646999726 209656551 714221837 125742904 300321591 944666417 197521743 798084679 89022394 352605313 792468875 162083730 16027076 303052445 56699342 766992688 406991443 265261586 278923918 514921429 821293606 784767407 700264655 98924462 121313257 51787736 63194996 460783122 551432873 418308302 449525836 511778722 22473866 803817969 970512356 519455895 404416874 427432134 622435101 532438903 360008161 53607618 787052682 614433347 883969236 152699712 998773064 735272379 116983842 673050395 224476939 715979524 502674730 384937460 820115874 880125108 345318658 81485762 993219838 194126837 706059233 749784027 45965997 711969197 525230354 303845326 788577264 701442430 845799795 931211808 172758584 138542061 321604912 370595775 471474080 356549969 977117160 229604487 725961369 996375795 742503109 251414563 152363058 516570454 935503802 9019392 894224850 48755473 674597519 743290350 583035644 52029854 201522698 132122660 239971368 769758823 581144652 413428840 765219316 21089245 350179912 76494488 245376586 459355730 356390596 266313651 744353454 538124732 79260881 812394185 462073215 523732584 705270014 146128900 71267791 255031770 847543929 627308717 587884880 447751777 730586087 575566505 451359496 709319051 640826140 84321078 67666845 975396968 947846157 393463229 384417947 15018440 548923373 232152942 92867192 703261800 794060486 606757064 760122139 437927850 133962346 964014048 756230351 755297948 82817515 433377888 627122831 279142032 423432975 157249265 444560199 814488880 320636110 401384463 990591277 932292839 990074195 369018061 230935830 792007110 439550184 670208957 419981019 911602296 567598883 246021189 69447506 789609488 688672982 170197035 741638738 770249341 663678469 274436486 458156134 548351475 597826807 936511204 898870280 905412730 860630134 649087461 564719313 714829991 955034998 839939607 394284528 72197080 472570009 817036076 455920704 906259887 25424744 389141645 916938293 457636741 791153904 941699196 435455854 974036389 471490665 121951515 759770628 257408788 981967412 925297975 434115133 262015289 121666123 913242393 563358721 924895940 534873883 993990244 523366105 554174906 878901474 212591924 470833395 366376126 408882879 660781473 262291227 491948452 275163136 781314622 403550969 21980578 572831828 754185166 712430017 697552033 940406035 324833014 355557348 482015920 849887225 875101739 572691067 794596971 790882495 66781555 246967913 205385153 88061224 977983224 675239849 31495796 418675123 540601358 914437241 426366094 896632131 72113186 885563263 298135932 46672500 307436798 332893021 616317600 486737444 431489245 543127837 451527117 879567830 749695594 75154626 16468647 485932281 537880507 217784232 816759079 67407665 524195566 828511846 750684853 190061862 750897508 336450286 474579879 125444463 152972914 834338545 936922121 580864757 493759411 173046638 208268091 828254654 854740765 642643377 374125056 854559201 373117221 470701407 575737271 543761201 246465201 420853170 29128013 532416054 276526632 583550387 832974194 895976286 143536468 312334622 273946602 466576548 160531557 250390185 740956830 148788897 109088710 410151296 863861525 632398369 557468096 497815196 631785854 950263100 16768196 218863221 133470675 669549802 680988159 825459870 975630813 998812852 221574397 701249717 740933112 252542606 856051675 365984284 958949775 585529637 226906284 418268370 240869682 168065799 818370134 188655946 484454856 388346561 768864509 280798544 344632053 172533704 442385442 443803034 199393580 910577246 549550276 372224517 761663633 17433548 143128161 245300286 849990184 589961189 459708922 428359805 134005433 396049194 58417992 80085593 653861503 335784297 386687617 14200921 690851685 405507500 851462107 668205473 603070007 669343494 397055785 657530873 260708418 920829648 877424816 989029 837205771 770093209 21660667 957262326 278868427 402018471 741334336 65340543 75080939 195368790 541718110 494122558 487908219 111121574 306207611 498185114 116202958 836654383 813642101 354213007 453772680 474527997 398835386 172735198 127858149 304383931 998975968 113115677 328175018 60442185 298097110 878131473 140340294 188934285 744933349 281712616 240964997 309734478 504300843 818741190 479049312 103247072 118012064 504566445 764993019 493150392 923033024 255017169 292148628 444349779 261579947 184185664 110899898 941476751 45740687 699803997 55554643 793157540 484920369 888437842 167527718 141649057 645040084 4678882 156644688 675308299 43747837 33440244 779789864 826136258 323499626 112082509 818637959 334267589 490459689 285612247 384853231 975659043 909545653 481765405 258921013 617979795 755187707 787340126 686802211 347132671 804516808 606852896 365451838 682590548 966353883 544899430 526444502 974386022 640441036 917076925 478669243 638740703 749398000 647766911 688724792 438288614 458150096 737180142 883024228 717364680 411230815 242670928 834217145 130880757 471236606 8581512 283365969 721754385 379898849 478763168 75430205 735675279 823073390 545343244 402584853 18563723 53794367 873812034 469075250 376968926 154750006 992006605 463526910 319755965 601839171 223802641 748745771 724728820 426909702 837097086 557853799 682055825 993695329 565111778 337535179 165227788 511043883 929122949 980557760 497764272 75751713 234899402 38707538 465908045 250582619 845388341 804952152 288145632 922957577 145991794 141161737 606303354 26580818 824694678 584641869 112154712 428242689 903228522 81171781 305998032 794611313 853537036 685804020 252133551 882740628 230570361 951572277 943858671 624807279 859959025 931355050 691784432 744040728 39928086 615474275 369926289 160019201 641945208 824089726 487364422 919973706 376134522 463627327 757694662 704201105 527229677 26177969 83464411 686284817 748270938 681589417 227534330 502203461 382182059 375901716 817581865 542789999 410155843 23183238 360473505 17210349 475895929 520497429 738338208 974187469 143844705 765889521 953875689 568916604 775582372 47678969 12867877 514784508 924610885 876598555 593768678 608157735 488123325 745058623 915914688 458429742 967882284 831990450 525283049 489021175 551157402 457235895 910296720 451237607 851510720 523812768 28916842 145316738 800272388 99364735 83896604 384892943 99482839 365780392 261152917 221529972 656085388 98216524 340017594 871552765 959288444 151703552 100004903 999063916 646317852 215234841 169228800 534992362 785234387 68607213 469604553 801751838 187603489 122100335 647559082 611442279 292156292 967523922 748322906 748737407 537871864 337740567 626196951 217012071 883656332 862557308 74713284 575995662 276057909 515387883 170317447 457923357 447852344 574388413 573958772 866481754 700031396 734829865 778492065 460470806 867080840 248980402 821168713 245055282 653236382 728619919 849320069 93754553 463816519 256769078 533547649 944651361 374770036 218420426 103006054 557507044 472236924 921402045 921460809 975128495 301363920 372567923 778617703 313421210 947450771 97300982 640762808 35708061 281424566 825864316 15444336 612658132 331158646 901651370 606347339 639429366 830476784 261114386 422179139 129467009 416483591 540998729 976169617 161202086 787143432 513006667 370280848 74801556 810419777 74160486 322841814 582287275 259308063 491523357 69400102 440313610 347829201 411514532 204519049 874795194 584384974 872314562 97011002 203875359 847045453 522048103 156131773 664874886 186278010 379386792 265123027 122139122 772353483 420624488 787056404 368819551 934663994 27495671 392528516 26330759 701019940 209834992 889315305 391424050 8006421 66860493 177314861 403014975 398720870 974969014 658841239 200223717 345668929 776335095 904188721 610739557 448553154 799087071 590073689 855138301 106869549 180847723 940496360 188673728 381171642 411877287 862954849 840105931 423552926 147942340 99966433 753058991 157200338 879836673 850989513 790048650 271683808 525771310 915012815 737832593 991774851 542436111 740212371 372713629 195609329 165263051 810961597 551236665 930140227 719934318 929872216 788120761 91159609 993888736 912380442 856910176 648112455 953416919 470710759 978094169 666328630 943866517 251268287 112271334 88271456 249458245 660954411 617893109 564247517 669362278 794793311 663156494 253222866 316382309 11717236 788924875 934247237 660837547 480300611 616029834 784845876 752549232 261524971 369032947 846880245 193121362 17018194 910125923 325755448 839156371 303308055 731007646 428172905 58333231 389517783 580376536 455764974 12233638 621917316 388538150 96069890 325015436 385379064 607261716 992529005 260222764 604669525 439713221 418547404 906027598 710098185 235717013 875506532 565905588 60720921 471557773 729800176 796783775 722399184 128539405 200679816 735937261 825392727 965446511 454820478 795963353 649935698 279155626 227056256 715931082 972461670 753177139 198569348 310983209 862681321 487448437 201485782 669508373 745079070 135913549 7512833 985586285 602798047 406015846 909368725 270203085 248379704 632239364 557421806 927055862 999526313 300302978 814209018 177484050 547677410 682263089 750112856 344892723 20112006 664211600 561330240 858002978 285546488 13587685 694554735 72291064 503860144 178349686 175855318 827784563 487657074 904140043 744232440 808716706 171426560 375503692 955396377 646986620 517246071 847340984 173562109 674658983 736140293 15699346 122720512 821227177 183625459 544036442 873407660 625045970 104231180 335398994 959767380 536938641 519641819 354890439 392246985 35829787 839720903 499167050 802319708 181350229 497104998 146151836 65938581 113285526 309560868 821931475 312533155 82941350 392428465 168837731 505108555 419866010 243847619 780788752 465363289 748880388 856734822 449751807 136830198 401102955 852339287 742217758 647857525 565504777 709430907 21949541 295138250 701327253 636675840 494881674 650396387 32382454 42301650 962453594 588242136 992565829 52025290 792109155 123636348 911854713 592245547 482383785 278412891 6276689 105656326 600925303 772335835 572215323 956466320 938466939 189307011 490110035 437608114 465914585 344275118 911276387 51573382 504599774 202412895 344934196 635018346 903145283 668123454 981272035 900523297 404015773 827077843 256151259 646418672 366168840 641486531 976317117 81278296 297473113 396016267 359772194 557740323 348624273 54068361 493083400 450867311 417637631 801908591 585026124 773725392 33467733 73210978 202670638 4816455 307345056 24755325 850742840 200350820 631878333 262606766 277076754 617022705 526712174 700039377 7236812 816256545 626814286 11481921 743333089 612509308 441108388 262946401 439990779 862867478 570590284 855838620 141388348 716103072 922465305 225647295 877181015 886293774 895469894 873977782 871746451 541416010 263221064 458627798 328839138 621758506 979638408 563844660 351844513 189077526 477002220 660908612 400819838 751573223 549879114 638700072 119401758 719502870 714836883 877171482 248455972 996669660 842195234 521744317 891857627 14878339 131174865 599174372 389193775 873988671 351749123 535637895 574863501 755311950 453813851 505491152 790319364 183211663 557709532 574621848 782273065 909929671 438271928 27676970 871579016 635367799 436622037 438265320 280154196 171018879 4408912 518124986 575437218 1019689 10954732 156163757 578038549 207546751 545685731 202207033 842747426 193736676 311355240 385782676 244721199 377239012 298803097 58054291 192769112 49273735 222369219 772468965 484715632 255630757 48286913 966940707 847997254 371683679 35172354 137514008 928426848 516832508 274855092 48098975 348010544 788348759 651128772 292384699 20683094 585655349 132333617 98466331 799950175 62020161 389789590 975270359 899563299 274791756 63446934 638237721 614470023 952182155 460379331 847703021 489460740 817644030 150498101 115829901 710222406 863343287 524803354 912759188 56529220 447596602 358746378 741987714 787625421 386765004 454589835 766091824 87652418 922241908 451651688 916093094 673613534 861875305 731118075 531577860 608514039 932187653 444813413 946910620 278081868 541474408 600977714 50668194 567991666 522099633 146707092 869988946 224940382 125261137 164157991 902684907 763035924 566789412 452626039 797238868 398428580 156748224 224955247 295208612 179153379 729964927 854159684 240438156 904495651 713686652 645460703 543771419 406530750 617718556 91323827 972213935 304394629 818323175 13291121 218689706 242639060 428533411 909630657 507084180 173440959 85445987 111921183 625192443 353513270 329329776 544475125 309275318 205654186 195803173 379415996 59809877 341286052 8744049 830445984 124761313 780303430 334272260 445515946 492799272 212236867 777490811 910482469 88773165 860987202 254975967 771356951 829656615 418341194 365554585 127362609 444483921 480907679 609703703 92239151 818188689 19152247 270025601 354073448 941636141 639592015 580113217 583156274 87862802 215763431 715541022 173315737 264871849 917660072 455510928 972355329 336207423 781680748 238694823 242324203 325442651 370077943 970591826 578509496 523381013 813793128 272779789 627555688 354117706 75273829 175696866 965986434 748651067 790892525 503012207 379633640 397052940 540536030 809064807 385249905 159291202 602232548 715793760 270826131 684336044 675237902 736734280 499782934 61824081 586244369 929106930 283168562 279884003 983029725 211318879 513939444 654911495 702821166 758662816 374210972 660074282 299889910 173313466 663584146 974272462 570805790 997967131 586235073 919446636 343525489 188652596 629583859 159019574 856583586 972936791 250103758 791347159 294833488 839383056 461798661 579868709 112273784 830410187 678553338 477558321 680359097 854953309 404803871 611116140 316416499 556622664 700535990 204353116 822426575 476596725 608757325 21068631 902174848 862526954 367071801 50858071 650813416 795337846 567287151 360810841 401134064 614253385 297487875 435611633 494526938 218522901 891694094 88434741 892041230 124137590 984669113 26076757 880679249 495465436 802428474 423746094 278840664 631246434 862114598 549964608 769392460 578144962 997569434 616370332 928826401 476275226 469928956 290338268 393165154 693524618 414917882 962314729 383484288 441812251 50899533 894834643 674707733 147029654 591484255 877336267 848348771 714983623 590268163 76371382 717341908 471085524 37646588 870488240 219858114 654505988 22702832 827023722 25240551 453600446 578264390 806382029 355590814 35878675 32420495 955920273 122916050 299016744 224431990 397662173 647313279 681846402 60536794 617238184 409715953 39353215 874638649 528617203 24784550 333423874 863713173 934915682 649211258 60772261 258680061 173853881 147720978 390214630 360615817 260412185 677149407 401110295 289364294 190302580 862865477 791513495 562750045 390835083 462989738 620889752 861187014 617508114 739962065 819497754 648091595 751037280 692564325 105704656 142056779 10454242 666751840 860758644 544991079 926690372 151202432 478548760 986397709 871398410 844583852 226410870 125794233 538449364 821767967 61168763 619940347 551543436 685743519 520387905 803302538 175962699 604454454 581221978 909664305 11874732 313974287 419058768 395507664 344858000 423817670 432308341 731670099 661997705 290594838 522450033 264124162 69008542 520374371 191824375 12439241 31233794 226434712 689331786 629254716 810692862 784811495 380334560 534546343 256043168 947007579 488014353 132827636 81047981 857362994 688677223 137938245 426976488 938633614 671674769 725122008 306108924 994964700 87467512 198797447 588555654 137431081 375556392 193757056 428245733 649008298 717500502 189424911 129510481 747736397 474334603 548845277 740824923 649737125 7080672 901169022 209101895 362644583 784388707 548458739 125528151 372808836 763930295 110247496 114623891 603896671 385833093 700438798 213615227 654903067 313591735 616877544 311846853 2514767 356556081 160299318 998706884 33686654 45266369 282088776 987927990 44003535 317370609 930511027 539858451 653610895 540320136 373448157 698551534 342131978 170778425 356289844 272410586 803584681 59737971 92513523 891176788 111750612 172951913 316979819 582346712 588974959 133741372 197079218 273502452 244923539 470972314 808999943 126778490 503463222 48872305 224727834 713632089 520353051 448251530 45886014 834794921 867016381 76792412 627284249 88919272 569778902 943048978 813676518 676582769 853463215 495721903 398701075 538985590 351061253 158241259 706102792 892448112 86345862 373425724 227564677 353922276 427248658 602104109 684451580 229370683 620140478 88823833 186434936 773317706 111621313 32950083 995743088 15076782 847670422 327235749 655419456 81314519 563604290 831409071 727203349 57635171 653086920 558098285 345850914 176950086 22880785 716980244 741767850 902623235 848524183 450158299 409932164 859862604 428861386 446369718 119892537 119980887 939544807 461321520 429437176 698667781 931221014 453304483 528686752 492371255 801399855 363971570 403509896 95101398 130486017 392828456 145876231 962487007 104977596 442681914 923869424 761109787 995435977 540176071 915924265 213997164 288836846 814945154 295877460 233086353 184636747 353453224 932375454 715556837 667063651 877191781 568669658 256210350 205897179 309094467 565041781 571974173 858585239 414557370 890898530 900811632 432146406 435275250 145355807 388235981 482859574 983708475 548586192 451683945 809576792 747321570 986764309 718998807 169827692 241614787 225258000 380953297 939029912 908799509 353760288 223230465 95725818 479848621 614982289 681173835 824272743 872290344 756691558 426893825 666110281 831168713 860509991 347214040 329367736 804693351 916663377 691347941 92962240 796384547 599410125 225063347 220215822 379700954 547610451 190725307 223628416 699757183 938820839 85191101 223071467 747294646 403173524 460123085 567758878 496813004 952424650 586310762 579644491 709606334 157653073 135410005 190480896 932848327 16438418 717819356 805493713 520997724 810608227 467889583 356682895 543647949 700574041 891346226 310346575 67553798 611663752 371551819 75614994 147700878 320240285 379021752 272571328 506895042 382728112 641027901 647337716 783611001 735815689 231728258 855233069 337538458 746742262 186377476 516059202 916156727 104393758 784646852 508752535 510841910 223266105 446433041 183120014 985162116 263580181 217931163 729415372 279386753 246054873 503773698 489334498 616569290 171821536 228290713 22362022 410595880 46102569 438196631 837161703 815609597 333399860 67874431 522327489 290662034 83972515 617387985 535578776 815778883 77853369 817183974 988570049 743465301 300690203 951218988 714035472 470249784 867855703 103325617 317446473 420834285 297712240 434142156 175790960 941038892 327659576 108599842 210916534 485500981 276417085 867737280 450725483 98871835 340729275 432786285 933080157 319634582 228311759 375477149 744989418 959148280 216985347 309310162 192712331 817745965 389580806 252562266 878370820 759491551 335040690 263460292 907014331 982117860 11618425 153515399 225632930 208847629 301832490 88553315 589396055 128086499 713326812 352114021 609038208 862869104 956269369 10423216 228917600 228752888 725440955 341828973 979697873 987623066 352761161 431855592 859311384 880651203 514884513 834647827 477634298 855917359 420983427 278296969 449450749 876336901 828762084 719466000 220513276 950618660 379516464 595264030 533756046 933642006 286285695 897588639 645977199 650618937 220224597 768618734 216005825 736491258 479664316 288316412 236778223 833133385 345323510 984835075 859269152 766312880 15928905 607249584 438557345 424494146 639785710 498404147 650637645 631776101 237707656 173155324 947783201 124692877 606438928 777964444 455200509 143166110 621758119 783235190 771132002 704765028 584322199 495823761 646272327 307139739 608834037 235312490 947710295 762900739 695122910 899645521 538657216 590146548 221500716 381431841 804071866 320296499 601148613 256879376 946074445 171356270 608166845 970701565 125813903 156301216 688065854 436389737 399701516 272939331 758940805 391135895 414733508 515188489 31327109 366655653 607780218 262369969 152795517 607040415 556501003 834583742 893053198 442203213 26534245 774289596 376136974 103267260 37826142 951411628 233268253 558632342 488647828 624847905 846859888 822392267 148182242 391059367 996625804 470863672 126115709 887159269 165147953 365172839 453226330 180681407 628103589 46352550 79797403 403652496 676449966 435846084 477617142 283610531 315471337 489866056 302308462 439728377 648248381 815507526 36416935 550703405 303191985 368917982 217252765 791782952 139567345 391974367 92155202 189510990 208247328 838379652 522400025 419437636 99654047 730229550 555843948 284206535 568594595 428118877 662339172 898235875 488832533 667070164 868973479 420139089 159421063 461144587 896009017 886232553 274400592 382287465 546872590 401611613 98203567 463074271 799211163 67124621 944313823 965111113 799979694 582007431 63564219 249884231 941862074 354436675 108445789 679668339 497257208 507606425 786095329 5959436 1281553 718858504 457478627 952546110 268363822 553940539 603437133 168670839 454935171 271483779 655439938 774142037 400586843 784458267 262331544 514036855 979123485 500190761 988498600 805540613 266416903 884403011 618199669 991864081 467010339 510854187 715667630 971408957 396022006 420492084 653147853 329383999 989561381 828011486 474900242 704630595 227807287 621551093 924957095 332845537 820316239 995724308 41428079 176881923 675863665 219935970 760098649 379767980 761085363 756567478 391033729 304013965 408223594 604003644 245981553 443502968 936936176 736204078 966795042 681299160 417167735 500471177 537119883 862431240 491854092 2910457 937612319 314273558 157984661 432719785 991766316 883967611 235140671 475017819 129255177 725172276 493176041 31975195 714724565 700996006 44348848 872210885 302557948 971459438 974072169 878149803 196685994 818783112 428862042 13326821 12601672 882397476 351978837 732950434 304360408 391186147 305161082 473967409 649916341 333951834 617781699 188386719 690585214 733251162 299456385 481110334 287515776 146965053 670873204 104831785 920914222 552752388 485884095 219738276 261806674 675379529 961126553 178025903 119134528 840072646 395806346 749939004 754617626 966045674 153950233 970589775 212328519 486637084 197057072 474164181 547419720 902283941 330849584 445208173 817265047 770673220 919880771 652511235 137322899 281167351 397295902 511836329 778654542 463113708 244641895 626333939 969645152 363727366 136866258 234089933 874443418 993698449 917331065 429076409 827186508 591554483 285548766 746217323 511235094 898748372 176020869 390324889 464888707 464263906 250930049 275365834 517221907 113415251 76504761 533593006 760291845 579240294 951268148 115406888 316775631 513645085 784930349 381359002 988291312 311375001 73355826 852830714 550253323 110070027 271018979 709262157 670131385 883637430 648759047 108875582 658801206 995583575 577640745 392989666 448696393 375711296 684726625 594736960 806319840 873695004 313580760 102808914 533597579 288875417 997244295 412655813 973196612 936218603 431612367 658782509 734174611 476242335 761246219 298525351 638314748 165527201 162476967 90977539 864378218 126237544 247970655 915498541 590903538 256501562 849247991 90741327 889470133 742969671 263830168 738902231 636906894 377525067 66168468 626870645 383369105 845657173 584076501 108962230 929126454 992735846 664816350 431518896 955907020 214374115 706417641 608379234 351847407 659835833 653122215 625037707 175712519 429162353 60158013 108041471 942721080 633563916 126720933 726137684 906183837 486722830 254922183 592418458 867606025 244231076 763382239 814592561 146943966 144618702 642148557 483934535 726826574 869390814 597492350 92346857 725885455 500004524 823457417 920694111 563886161 912987918 953514239 791342747 349450658 815061873 605417355 165773135 138132529 808982901 311563518 995949433 156821984 890904392 383514299 719084236 385223254 70797187 716841059 517098919 774069247 894162163 473314849 511469445 284352978 154373339 145485387 786395725 825864840 167972158 652953622 291553015 197847625 968185462 240058032 78313286 189739250 29666067 142035473 794179041 374141131 12329250 738937188 669308192 40767698 900482938 712013671 228101847 998890182 592286319 7837809 512204712 913018770 24908587 407226432 223433297 15557569 96787199 373475449 928291553 372402157 615840550 225207616 700152670 772849230 881249574 592504697 435109418 756548513 135110695 605845336 516818150 181434433 664381553 57386557 966992435 759120554 341004784 217830147 978114284 442233548 609900697 611362573 375408727 792842122 271555984 759994203 507274380 394321897 272139434 646430175 95244682 160737894 868723027 190505004 441915206 263288028 560273701 996801355 705388739 751462601 520377941 253066740 248910472 380972921 517254030 330626407 245667241 48414861 674688053 125553939 7554684 85332596 110077471 473194547 258123971 48907494 546542158 262813774 292345895 430887757 613113564 333376854 264757127 162523201 214098411 248288615 117207529 6635951 973212215 989961564 177268381 336670497 383213788 608829894 898217256 494421354 213845458 882496777 854475865 385182829 972739524 516635080 342843665 352559565 595413561 671296179 548595668 918432734 723813951 480775583 520703815 502172369 959961551 419252527 692282303 803012203 353107585 223469218 734420055 714589987 900515447 63662938 435714753 116078614 546016940 979498869 471501097 952357141 95138501 39760193 322085899 865450738 354369961 277076279 672384914 238518332 780003151 561859369 662369006 991217614 872772586 485118188 124952500 625524588 816119562 609526864 47548917 154480597 496446785 877330024 241525550 844740140 564397694 977656569 194280219 542722921 513158224 194047330 903640766 18375787 409551476 302010487 372157104 806093630 847337393 913408990 884726238 154768953 487892735 253213213 940767774 975408341 763984954 884713362 649528552 472452543 288024391 899771303 84804345 102687489 717034107 683394759 711014801 782235804 148618474 525599348 574385676 868956538 4208113 163473043 967459935 254632192 200132942 870204998 888135592 162420041 281631595 758069139 279314241 826817615 959692141 229999132 655576980 439794255 707399386 466216997 853611575 453332250 234367198 786408460 257506728 155970155 334769438 516608718 538269994 655451927 951883926 889580800 263237737 904229503 670231362 726264613 275461921 176714613 671950637 861133078 806852797 301666504 538622934 476981474 228647694 777353274 300662271 765427060 298908924 469395917 342730607 5147015 24424861 24914111 559771670 395422649 624699080 653305381 304031583 445440525 206889963 317531343 775816451 106234058 532796951 479254290 139439851 818167605 298231998 681655208 397484799 850933567 845033593 207303421 321282039 108254624 57393246 324170049 56700874 616977420 225022503 131380789 133909214 985982047 523203962 265092947 186746811 267906803 218231685 506346997 728365175 202056751 40137169 970111464 130398277 118071706 99735039 814863055 106755425 698097598 337055613 182563082 464961838 342006911 737532871 621222631 273178306 304205950 350077953 938766856 880585543 15332512 499574437 838167902 510517587 174062628 764810191 211608964 418628690 126980356 522944374 789502120 52573992 213552660 347955373 205681075 235596507 568493526 810749530 905962924 807375542 356668463 739914969 713685277 316889285 798017343 974757652 563793818 882801345 464726852 871156287 880683003 847837838 857909678 491490324 779538073 838330810 730787887 109602678 783154524 168670979 930248423 480016287 928867314 843030849 464388344 894167903 236750274 280785137 139434916 679318752 942913330 95771659 280819771 270225095 200467396 954283766 422896812 664043836 703024666 943029177 258136432 257321180 664288086 491554344 26142194 291869637 760934357 10001297 897558794 575832404 771720687 647629228 822185545 735859569 811705784 99444081 432073106 473318661 806669663 91240266 24953964 5216364 445121570 136287715 12013244 572328490 866369256 329998954 864809229 926582382 140515363 101650466 169786637 508181126 117832198 925766799 719444287 121638058 341390363 247248954 976351570 663521260 867918712 158001595 137605343 92628863 914426008 732640342 592840254 35527808 711568925 150052981 380429655 380411510 345713128 425530380 189952796 438101255 605828174 619267266 905471766 740570313 786363152 420911171 674276943 564521353 946321196 707336168 170340586 487327831 863318181 430810963 148633289 578892904 474337797 747611003 660648093 769788896 82863335 190870607 934371916 751322936 339314818 643673052 519119023 109881534 896493289 386819447 377674201 572619782 506534536 328120918 71385540 759743080 631764273 23585959 117868294 230604416 850073179 187338291 453035956 422281312 775770542 830670698 367978909 881225800 468293867 866545444 237029267 236172508 236245452 738261594 868867782 845896090 207967018 219611493 262752209 634595601 11509246 14457945 337647582 365088892 393317328 188485017 572127012 284810913 352875299 505097267 610662886 670341620 369518452 575222264 106478589 620840107 776023747 123143729 895097840 440270230 909059938 843005238 99080712 192467894 663813779 24668591 707402987 829887346 962651817 473567693 313250038 878641817 84282842 62649365 321271437 435250707 913361514 624983151 420923938 870559556 329613337 817892451 868194824 86822077 981800411 664498831 369731799 464459187 743724418 683954387 995469021 763863312 753187029 982588433 657238517 753784718 145204747 771580098 925808364 124626424 640349836 956686764 337104964 503514765 447442310 203734772 883292391 228504237 960473186 133242414 312811683 459614635 635288704 207433087 186509415 496591920 727906291 613318683 136097045 400659778 859838466 163558210 178440508 98800564 958429469 537889718 613640625 18781491 917213799 80442552 248863790 908961198 940419997 669260625 555884813 414405989 800385397 435704749 344781424 15104518 988401956 643807277 67792239 291381041 228513779 262824228 362072180 381583002 881721547 710322204 669016909 727878465 335087164 137664319 79823075 652086927 254076313 195325722 323663377 460213528 260211586 644787313 867568288 274641421 678288534 394850346 952238535 831888214 434907806 56227029 663134256 270544608 135993684 886479316 362429986 440499928 430656648 532637261 190684737 592265049 536937700 78805965 490896262 842240467 867159424 702599419 901531836 237807768 351199449 160015489 123288017 571598471 900887201 705533058 730129728 929821927 680345745 354984585 968237507 339270086 239037243 952911581 142645538 342468006 401675089 41661414 792084094 595133016 337838564 559232403 979127630 445447410 318658903 307653559 741022821 480249869 120642477 272364918 332126362 190276718 388041070 687244842 808225595 491824178 933950615 426362690 668013680 291260109 228184454 81063975 940016469 288535917 203679579 552400099 349982081 267340733 835670775 583087138 329078544 620368366 263751588 557840894 299992239 814191590 134174315 402654104 81016532 719816213 815182390 996508107 208186534 190134954 601890082 816637596 983477878 758124283 777543778 295760388 221701329 935268208 638389272 761452208 601262803 63972446 347947410 553249419 349213802 604483036 776193215 690295859 661547726 87339293 698410608 560297249 184975202 974221948 100654000 61643759 794768957 392533337 516205908 164898465 829339828 999810640 641186582 226519566 660157521 885730693 461681013 322116577 299896210 926095800 571292550 330664438 877267971 11364475 683639276 114449975 627490607 41160057 990839007 548218048 243029983 838360938 370346808 27329057 307314000 455271316 305963130 992074910 6039690 227031403 9357414 743295585 530747499 750009940 804426078 723058151 452898203 240383162 94009462 633555783 541029597 669896477 644314230 425247289 118532561 339091729 826052196 738927705 464413665 21888731 528320695 306613658 490502730 218472012 317878026 495131784 344630656 96553678 287960249 364249958 87179480 462014243 984179921 613300154 574770217 96774330 144867466 548629267 666986814 16014916 715738643 737891983 616283326 247358813 753564300 59928057 886033658 341899833 76168611 899939878 209865020 393700945 729623896 872056940 493989498 791680196 498358598 815628588 252963130 480661139 383363761 888887141 425881682 175092334 122193428 250266879 681960017 970866799 557968749 615083361 996269112 454381105 763306318 123927763 809352176 931171141 401110112 147164289 289186593 428652201 573600013 538009274 721819100 8816797 524282759 188418434 350810171 414541325 163768012 656780195 802023978 516013418 331321265 521738951 658139356 291728299 88014750 412952606 372026149 149624806 828719521 673262299 790381223 857382827 694426766 155981551 892960833 180606137 296810143 622068513 925455678 151092210 423692063 709622936 203482031 412332120 881484303 818658974 300048280 388922860 349834473 839061732 384781496 295770961 976710004 360898883 980943274 980598416 825311464 906631572 469640313 527151166 598593651 40620516 738830609 908576708 379764590 459072371 870326926 890033047 236982054 621381644 818214301 280405498 819658632 398973601 311871020 903434153 612678139 133696158 545923325 863866826 734426663 193235498 455549045 873642571 518957971 360271146 381632097 729513944 361915475 592075866 323715820 301459148 502680115 921006426 747869103 744167466 463207476 758238066 712494481 643556075 387802581 376273957 878664382 928337825 221237604 271568648 677733558 429142240 963742609 315465388 4343903 259340959 343864235 881308118 166747223 26265333 947733635 530674295 258752144 212529704 880972614 416304428 726285314 848869218 178715217 884961395 247654417 35717413 334272792 807184698 690606356 363176509 556809499 529829802 826773181 276104362 395324799 764402135 361462851 893771951 318964364 847274122 869107408 896649455 774765721 606898860 599730340 549563946 971911098 950116474 184847051 780972124 69777179 842971956 781594818 244654153 395637696 414927656 14459244 938608537 965536570 970208466 283864533 93884649 525614146 808416520 927367969 107471171 575126507 982132634 458360862 866911138 946338402 881492562 111063221 46002272 209551600 488542946 126214164 184118910 686906788 530018118 127024548 260532770 878163596 531936031 712077173 223244544 87690780 773310198 356571071 653715401 762808105 94553330 687353525 606319166 944094498 567463815 800612572 888271399 597630558 285538621 313217293 231738098 140861022 542973551 460587897 325844500 631000692 137407107 760113801 277569372 736701171 912790418 812241612 292511373 594315050 830186911 138948951 690186938 546736535 902914667 999512906 150795061 789787193 797536285 546823805 636132968 99307384 827058340 494880451 209816503 616315662 614400779 606821525 294141761 85633701 789267502 849390172 901054960 49990857 581071623 789809067 711144853 796830136 272648426 113384360 718541415 136704355 255796685 846200404 452769510 534899954 863204149 853058698 165960822 193577109 464061633 42695490 198509894 990894088 235430716 830245771 810353312 320982978 348139815 185056896 432192894 163586441 927704513 78419693 703000411 14410594 418176489 227325007 464909471 121786703 775248157 869863259 624063181 109670817 850378874 10938554 265766313 923087089 597524792 465466037 271049453 179559494 336027234 493476729 836965451 443827724 23910062 503589687 150062861 776797520 659945835 666540410 611260292 831681961 774321569 712856887 319988698 984661011 720600536 513449911 945870213 450500331 42976033 968954849 106616214 103672010 536056710 587191810 963150599 714318412 589081734 73388071 490045649 414183128 920013773 165375634 538294014 384216088 733173102 546317713 91109712 878061472 916535970 179068454 287216586 522583728 10005295 430035192 178660493 428019648 217350833 463246022 41399932 63750102 37174472 814004741 884897742 611871171 535856041 958788854 570088298 57534900 187088601 93042905 59411392 651645306 260279063 75174092 243191198 504088998 238165886 173066111 234408254 467509546 215297488 636628397 738498399 756183374 921530436 256492394 594625183 373970328 327382294 555605892 43312147 482494569 24037300 227963622 443485984 621030385 187603863 225984157 346819444 423206769 214848389 2454082 476761131 136291056 961102437 302577721 742615806 857576970 441260000 230671534 755489842 517711018 4407777 384522618 566446981 603341055 455412947 647883122 805777136 706381773 965118656 869767417 145733399 703728341 65102091 466373047 562032570 422183723 667797069 840305688 944292550 259118918 770950029 959828467 637355729 925668751 403999438 69365639 653842236 37015452 925665573 131863700 28104469 811951121 205076891 755135311 523747342 693751951 984612462 376375081 279079906 129879055 883429484 503119310 69631804 794422374 736923296 834777634 237359580 581086029 917769838 547415036 64818736 601592982 575812970 246750946 596430491 951352985 972473446 779411447 881079968 102956980 885238035 748136174 802802693 194310247 483200770 31747352 3210219 207212638 448435506 556088484 514293979 150117221 349958951 873284892 410895483 291347394 641888755 985495921 310262751 996123253 235529721 418594279 36244579 508382752 598695757 56461549 892439883 417172631 719819319 32167397 312882684 462050884 548711881 671301997 67457734 92528566 151589585 41588573 231845593 772805841 604562339 603337565 202264165 349411816 525989296 964181743 649010169 811548240 499788426 371415258 79218462 547324444 125973234 980243450 898236077 376714921 405944641 101113195 313890714 127174971 129757768 533066667 101752323 627552841 525544044 930083119 820851692 830847856 230992274 240629015 988877035 713154381 95873926 609252350 145864019 259716188 879547765 713512221 542652082 196485811 998410666 826249343 21815344 491297575 96521208 898711304 997105152 543520120 122700299 61505062 854694422 628815567 487175940 71115710 954067150 574029444 387965811 684593316 590173136 430200408 429277171 90686349 261568058 588265498 411004261 535123627 395018551 79815480 44742 940777935 551077303 437108345 658759466 700702885 132777781 273639596 114699303 205232892 534584538 603788451 802669213 669378089 182643310 684734323 306442253 218095007 845265014 182891748 961525800 628312906 55916041 250744857 509631075 816852189 242726237 43349734 907532661 73723378 776937919 175073731 26059449 234466042 249033893 572876367 579429878 969232368 225909165 772040103 208390434 931370677 856012240 272228545 146914979 478335850 970707997 879614340 330458857 464788423 676144597 819751172 301832273 757027275 499675067 794502977 863962933 493987326 573783757 856404628 733930041 304188449 343814729 995785273 214908559 438473049 666126462 378202762 362475137 199074697 587848911 254792444 5760898 735125137 680704646 794371270 910866555 828371873 745082346 402668627 867009344 313874458 832715827 291897028 582907049 501978304 858973822 164530881 130776245 72136231 685217897 301127644 451839116 707650804 694203319 313785411 888444957 966968365 25409243 881989734 114543867 768995139 881274027 155509449 418533654 204731264 901498504 944905554 291586777 82968727 562133613 36087244 562857036 439862821 408988705 170329448 450574231 655497102 164883452 203297610 100118788 969173536 272676545 213161039 152260072 955691028 157119497 788280630 76264349 350843579 658934456 544237904 768212385 333341184 478296985 153278104 883944544 388679384 701348059 702187324 891169278 942747639 399938812 824540529 888740178 82569912 819305797 780121843 519771192 203080727 985041398 83014375 569877551 482153317 325887478 740842702 802101430 638823220 505653602 333786381 108698403 152195873 109011138 772330615 327202242 422311514 675881807 377407583 119028475 501236210 386635840 623805807 321772434 772593887 719043138 473905387 185131246 516640239 464072350 982822541 688173108 224238458 415018844 509583552 398110892 936168377 467816456 984010633 13942807 523274475 247048536 776314964 624818753 280612957 964505634 650111353 710682844 258742436 242251566 253800305 300553434 191369241 393677777 150742238 546654038 516034578 228346001 17928908 939992633 931862329 78443002 779976221 428587852 479866263 923377866 961369776 379562449 683792170 523323357 663886455 331261236 767062614 120645585 555499603 466742457 476569082 700692216 397740983 153121824 86410240 616810511 903581013 313906219 509422758 426627209 824465466 431140377 418213966 179358470 546212586 329702254 842025056 425383875 170882133 237113800 530252501 408008289 622734913 334617992 176257354 242315396 248775941 153525731 179204279 721459256 837058575 54854843 261163226 89925886 647814495 290823160 15748123 335709427 140540523 368995727 420594379 648647651 537311278 365525946 934728399 235510791 301257771 892993914 286060695 364065135 796032287 984797761 749452278 448359999 713782548 52982591 89179694 182317378 394770051 707484715 901372933 378931459 408066037 508416377 477828475 127607759 145256557 418402131 764770469 574010336 933365981 917749583 688173988 969392578 146861397 381236333 603077464 921065247 240599492 207449337 792423205 485073313 459481624 784213919 384499099 436247685 496538946 297170128 494499749 421560385 530927542 826992190 648947794 95433594 706422312 962402828 509717695 955059443 204113323 274652992 579836829 590099089 834080220 648963737 347355271 912588434 135675712 598384966 275531888 513982432 696921485 929876961 105370959 687786655 310100592 264460640 775139624 611718457 597741904 66722873 510315390 610845883 565574961 680417493 934278740 916385438 946538884 259199445 464756769 213572926 377871364 619545682 310806663 372540382 539163290 638075301 337205307 954763819 497163432 838448419 781695202 227667191 219388 191851374 776790336 675200314 502523576 832726886 252112651 396827015 28238414 816185559 152924416 705075334 672905589 325634114 727457174 795047177 110130126 204035825 3612989 361259586 50590117 956482562 34888414 614764179 701738874 65347706 227316890 805323236 20064587 732334535 180107325 41744023 746534560 192721420 774230018 226908419 825608605 855655071 646406269 161031658 368154454 799056049 724257647 60026269 266825825 976233584 167354551 87376475 568234351 729849739 518840523 264669136 231398849 159861593 949848956 56430835 752583342 104727012 886034893 18542375 358244022 557122621 534463747 248641099 512106543 799323046 244463429 698178913 619972429 548801822 311127686 382830061 355787417 564028776 857935688 387205680 367146108 360071555 398390843 958198948 699909371 290939309 655735298 296840957 123200984 858983928 519317628 966402311 513188233 802766126 555169133 530078317 553948839 51705134 442247461 572698754 112269471 688788809 535325173 429468732 752768768 158937136 357506395 96975275 960479404 881435784 711440475 239104180 96443843 959787585 234533004 957241613 784407468 561047675 224114487 845657772 380150462 458192631 918067603 398624880 218123047 292582036 191893609 489990842 646060206 759611943 907730186 348047415 401765842 471636024 741956547 572500015 379476807 34846769 376895914 941583465 778279994 540176567 903974803 350677519 724520143 61795528 790832011 811123896 689693445 802981860 39413651 295983172 286852308 601024576 412250155 67520749 753379385 74158261 814644131 820195585 975484890 942473525 834121173 940624116 723341839 845576219 540795480 796101121 230667208 754646948 68838569 526769133 2314121 862818230 89831050 729369235 241658060 269149601 5427196 327779804 556802030 180632614 965387685 702730557 305665224 950235070 500950430 360177695 532560504 346790347 397741569 346126137 922487326 278856787 277544551 932293989 705111747 319134066 111567128 827797057 802815899 478545406 541675873 949780143 282481847 51959397 42270692 775270625 392898581 580481748 756689923 448083500 113229142 444885398 842305658 904003717 368615220 813167977 689663135 684535226 466206332 9247764 532851271 449032214 234067909 917589698 825738298 507611359 988194152 780072238 111277952 911604850 297572720 346871393 102883970 121529543 26996264 716545112 740004512 502492576 772641571 410069986 333417325 816705545 674757429 106326502 936761454 233149369 823228878 653501291 975651234 76473296 801642733 565256046 352206828 403690721 224893378 733625984 896344927 852163826 875624557 744622666 354892053 2956139 825300987 720279085 888687409 169644570 737755455 2419136 281824472 457918959 217450838 808986164 74920739 224808401 561205141 776435321 673384850 404460410 420454794 782749904 170395277 224927770 244363411 699627937 192478328 14886248 139409955 255096272 650947322 583897644 450070003 41493681 358466509 389764178 373036837 143547066 126945972 803365467 685868636 721202647 303678608 937985437 685219475 366635285 563660546 160306838 660867510 252702365 761547899 704499654 509141941 728512878 467199820 805006626 84140028 59194639 815785429 607897698 618435459 633883536 962313885 413182797 626884386 590478605 87537863 138489354 627825454 337291548 488975343 751425486 26143117 546370205 776707231 189435416 24947152 327762589 264709386 852272220 915725423 349479951 371493681 252898566 291411172 959449352 79610948 704637848 44679786 900567741 598069943 383618445 774839764 402686023 523134000 672937305 754632932 350061183 163664687 169318591 938546878 789653231 370004880 162792557 225812426 127951279 999930484 733992804 730388431 445562503 832148610 125543568 968425188 380248057 493723085 646193559 893746924 402669550 105827159 649391490 779264941 546906674 881502582 386473011 38477795 289321315 441426930 699318132 627489140 200504405 314340069 850200510 78409997 617562866 203750274 716912531 275214442 405771388 351238310 602628715 189267301 767372240 142609096 326499590 757453678 769701513 77876137 300586574 13455205 259384044 819113485 54548941 621544248 787317802 357396204 151946165 653306377 445136480 157267799 674538541 990314573 78317248 971712173 844943655 673907106 915580846 235126259 45113243 267786017 858470683 550714326 67676698 538787953 580216512 315527155 40781354 632355858 893506844 783200727 852170789 561484398 68785356 549626129 602040622 258866126 333421606 341595446 473930763 717558908 185124962 215765316 532503424 95612695 146400439 564381350 576024765 559898386 181813729 490245062 854753719 660239464 49604349 97459196 669800570 581222854 301852286 441681455 956872746 867755852 215998372 209488930 65400699 642637103 276091345 30455349 906292140 18627046 502178122 889854097 56820078 775709418 23460064 362661091 751483588 499517494 276302023 760034655 713428382 344516701 252077256 279858015 347531509 283851987 373386140 386043088 318127049 826366121 232903525 366061827 58704051 407080166 878468658 476146868 171842873 595177253 126594346 736259070 223257414 725858640 782011714 23863277 687452949 590015020 161247995 289691269 755855165 6683658 347826299 34689820 148677208 54931873 166353380 151479778 943907454 130519414 438858983 754513559 805381297 822956742 858058141 94733240 992635628 801768264 834314540 372282670 330536548 148258700 286552900 905427241 878841404 269706537 580839813 401759555 31451401 479838065 220728760 506192487 526062642 187308207 963600859 20197446 722364896 509961484 710277625 435558086 334857499 242077611 738138365 213761184 3869338 970878302 536099388 198155313 333952842 601251463 639084306 719688476 327374902 370774309 12818509 281442169 150239837 236264652 664940666 436699506 686278638 773601849 543661540 732245865 109237863 62251164 32490769 181371313 100357155 554003546 697393520 327318761 519829919 654521591 381341636 573528421 333943709 159452995 609565413 214575492 250531113 428571154 812525859 76137694 412254409 660410529 2760436 254993607 123441560 304794950 351107429 966983488 43143471 807808804 300682684 796249276 420615151 710097179 145194057 733914942 949107951 416112890 183112157 720825819 475853107 102023962 559937323 140727751 431626529 89435988 224844976 205150212 113307546 66844204 120581676 369884781 922031678 848337522 188728316 266028690 960095227 546843181 50353433 145280049 141793159 562793953 733387153 107316088 119067642 174681627 759230436 346385257 341618006 116968105 631303532 247130962 336537455 838090714 191469242 430131863 727493561 226451403 389860513 675318491 51028105 263707316 523496775 257524026 768079005 484284501 784313772 684544047 489455752 808907146 425093769 928478576 565699886 66976560 39297666 955204983 410018546 758641604 927355470 991630285 936063135 892422614 415325140 311944009 403258252 349873381 424936669 152728577 314875630 972787499 349341218 935575618 588376255 599584433 771920254 61823993 595837421 335398548 244588803 435825447 447115563 13450371 542655457 215986803 507380449 938858651 988773047 896023053 349682798 504508082 161204753 72635713 938336598 103273780 88252927 426303684 853152474 355931207 63120323 697129484 174358524 787396538 542818476 370538247 96070824 337601543 507542769 285893365 190882412 514202607 494908235 640187504 218703198 238829304 572519486 63094280 602184506 822816095 592013257 588593564 243574857 224056950 473736708 294106280 72573342 46553578 520441052 965426487 872509313 550991304 835004919 47237284 851079757 433922729 990539883 679158044 886965807 343347019 2346356 529387703 168020499 886701201 591668966 625850776 976300724 855522008 108969834 169830362 264816897 943022031 725238034 37490756 761375871 517494788 539434198 170196790 58688029 835360713 12790805 333463740 296190567 643274782 474989392 34556956 682606862 94492664 615104469 673101948 978205177 431875987 130326905 270500064 185377933 849817816 374382908 121584690 94492229 505873073 965725207 632019741 643872867 847499809 637901334 504514468 122155735 905963815 272507135 231474966 909356858 453036163 191438040 442045368 104756381 687168830 50004775 533204160 99305550 736770278 357657046 440938813 335740839 958523385 242245938 265187918 473118480 517294312 564130191 798390579 269012955 985852635 130576120 374405219 543159962 12125147 56545537 289439094 885182254 155672779 289127374 894378405 622321297 70489292 486553799 561266843 980890581 697619818 913274346 540527747 395480676 721180247 982073114 235258009 3959404 595902906 948609884 586797810 446320609 84304708 146709465 179550535 673084692 84524446 42660248 189719009 42704886 567346489 985856629 313475516 123467451 670340315 492044657 794693598 726822067 272390538 552716092 330635742 610174616 872494966 740944013 247012969 351265542 338161865 701209490 290206839 119545463 976005249 319392383 549304942 891874645 662565002 381610747 249324759 360067409 24305460 895196876 825672315 639390537 355560849 990587707 60590169 331717300 114222372 672983226 976534287 371481348 20292239 591680382 679200608 662432742 598432657 139938082 278104119 808437907 299918796 982055871 120176854 298225943 531779855 128032586 518836294 496283600 763915648 949408976 532253134 633792706 203470920 893551275 988992098 807470498 923278914 411364258 958664893 146652492 328228219 270722673 971232890 867559640 98767744 915875416 612854527 687300042 559446198 408677047 276435380 380721948 28891176 153393405 777784295 107460136 150202081 944979269 841842234 936291493 26190455 864907448 62695505 112792512 761972864 405295585 87815545 313028521 661498369 199158027 552229445 542018011 671730130 280994875 734454679 157067451 955320109 269728086 528846742 187869858 341621847 572558996 628047097 785054099 966617838 342908649 832510326 957265957 93222711 18849767 582600998 200078328 991015360 772546738 539479295 100829128 591390465 141941085 903436507 109122273 845713160 572441628 3288205 657038976 447960432 340844887 171621360 791701767 640357168 369238063 250479259 514878166 54371971 852446062 617826064 565559262 207324879 925944656 313246654 789865389 936507448 342850888 470523096 322769586 519297259 789795102 31971085 818410211 955243383 909542790 701031133 955711609 885187627 113804439 363376111 251180465 87195443 814024709 700072630 843985892 728745217 193185952 827838614 360780728 34773595 696099066 991161368 280745147 647753668 706770868 958614181 690014679 194446254 726009863 803745000 387138641 35621495 633053443 919705756 141128406 46733654 165222058 253258527 426480254 747576043 9667009 788903569 397582079 895491592 483169836 497526013 775916372 311196379 645049232 294251980 190551092 363158870 220495263 719824286 464467580 469889424 232503765 542397271 861576806 893934944 519411422 225729056 629744775 933537414 384440590 442179985 709104654 818442884 259098395 243749233 572921461 263631362 38199262 46603558 990272540 92357100 925040496 142867037 996180435 739339121 685188965 836890226 6724913 420520665 747922427 979260206 207941627 849336384 405404145 935800413 327707321 828977527 109623294 140792971 988770502 903070355 503706630 169240347 949701973 675985832 814652749 870858092 281803197 793359041 430297158 494846039 472910788 170225848 393513515 224074893 929145898 107030149 887679336 553955984 399509707 888886239 700658183 838123206 727668163 26901711 653835084 892380067 91594455 424575325 935751400 498710446 827077432 362613053 746862580 39477524 259741944 327967917 72630869 206831629 720429204 889666268 399600810 845861446 857130119 352534022 336910257 346827564 561538141 371925368 319037605 210073010 935148398 228428129 53261608 491784326 274937082 871530836 19960165 961260368 460815044 157019403 273584800 951664235 801960169 911646707 867704537 86463491 940874670 177454157 117300562 700690797 829793461 336418638 532525593 102087588 280203107 117824446 236439957 626748463 327928893 976112090 427447145 26996492 712772082 209788334 416761003 972635224 345226307 124549317 3273130 913946070 830913387 262074013 774645405 725462907 557292998 919962974 969956657 599914331 243217254 209290065 759470535 276213945 345910518 830404283 931575587 169195134 372502390 626446154 507529976 687165908 486262736 349524637 669053410 906201190 89989182 609601849 188104871 766731661 204876955 38864336 511519412 764622416 441440282 820098071 597206286 980496347 350550035 476760679 677804048 623861415 972253863 359434378 359568907 410614593 540929852 360604140 206502414 330009764 792239165 148480411 636039050 278910886 580999244 560074105 797432894 892889348 457078434 93504450 65053597 374053034 161483357 630574442 468860737 578551150 322014748 739655614 386822609 462183986 769457974 20453306 856003941 30883534 626771075 378206681 906997107 185868888 519596011 36153004 508240875 174367736 157370009 792599081 685242877 99944127 948381943 197103870 451563437 766456699 269704490 124007688 681026427 454653761 271478830 218579968 354361656 667942120 322894313 566101369 224105429 110374634 796104944 710509285 369029839 707014032 122792877 222984097 293328670 153103803 552671118 917696238 607612484 753576701 851764475 762453546 564099548 52576367 556090963 449910518 605284782 519139403 854257978 225424288 712521319 990198964 681119514 887049430 675468479 460781389 398515212 855057778 136769309 201628861 890322558 387715789 718461736 727172636 950791312 528599256 510998446 651790435 378388546 851609466 974896126 930175789 729984107 908537091 829386477 88834583 50770958 33589591 231217418 481756995 219491932 140026797 755809059 38076264 361206233 257935101 857993448 567681842 250932774 169790156 105225140 12755705 999754402 50845711 429400485 750958806 222607644 11161257 787832294 252978414 971508809 44003792 206755517 583727144 465645096 397444028 403123890 91166582 419766015 267500103 592413386 735920316 742240522 963249051 168795716 874990994 602787244 837858128 515483931 124450047 266002806 212421591 944732733 987185348 535631325 375564586 773767251 654358296 243436755 36316617 983261912 231975724 766806128 792320109 251852294 659487488 465212402 568112300 604904759 735069251 292734472 751894609 30921931 403256525 581651981 519216315 480718570 716859292 625652690 638767564 911370167 181540750 512993870 733224214 530786526 520653208 258794510 11098363 326850805 924952904 590488060 207820897 291382511 340209935 696867734 984468956 423232918 580229825 946935014 950981476 30495526 431358184 411142888 232461364 378923004 517815508 807929108 313744433 377976230 855571599 31837456 892106815 881198330 305594002 757673889 493193361 232554453 80672266 215785455 466327608 362633344 860653265 223580654 731766770 110937115 513584026 500159211 753695505 610499118 555349296 185585282 574192215 859070671 677516054 154537136 315921948 482307225 976858319 441492106 540916028 233553016 108634173 340878627 584653674 335771068 880256079 933650336 689570865 86509208 371020652 966410525 986686237 145581604 824393351 300522628 688748972 352462066 638063274 115577073 218062473 576146645 992975479 644951668 334335067 181998962 672139388 941183963 877123469 364665940 820672605 280829617 508674117 576244496 769390184 998070790 856604335 185675200 830150103 97894784 944158097 419467935 533827689 869383982 26685397 677618849 999742115 721576847 151825451 961134913 487805214 48599747 826399709 127992904 404936832 175800413 206816212 14712554 272169254 967609891 151006457 367791047 878588904 664609545 735884084 538773835 821010971 746668985 69316579 462057950 209459819 238327027 31493629 532169632 252574843 244177034 816430729 297741671 918066200 187053421 883472455 389923856 743576204 885407507 880489884 370378822 680864110 8607603 22883596 48045205 115776452 165411007 858871949 205266753 582718150 503992976 108294521 519029245 107335056 189749635 716374353 935682417 959230507 459318990 871937800 454728615 44785189 339390170 890245947 311729929 518676579 337602602 718372569 66595443 389906977 911699799 815822811 271622992 57761088 422324967 434631534 841491657 897794747 764312336 125378664 157628131 291375064 949789254 81005321 928520837 8838623 759543546 333243741 762002794 720109134 520264866 711960449 226336928 531297713 855752055 251981200 618063130 606863348 953014572 647862432 609410094 165413297 677947255 352390436 869724470 601676346 883988176 632997197 6969679 880732208 86327524 455429802 235971408 393421926 630797111 584258376 655537808 762451567 374485123 932765505 847425955 214973138 669550268 737641241 755027298 425015217 868557334 472817286 167149342 144155247 951134839 648955419 555665385 652957883 970215153 408992753 245515644 360071497 493337790 594554682 500148540 761635418 449135599 937378013 871564552 321258205 219406835 482750066 701746673 918034029 343265424 294066931 732279561 180362360 872642299 351469861 428945809 142524053 286343052 461908666 658703854 594839814 238082882 30518395 275657726 203612809 652384365 496287475 278609930 295388085 660230765 188961832 217273041 24222052 211699065 426153671 873242282 597345138 331626637 801134223 8019297 833903804 562217486 628698235 23014589 451811140 15443628 96575143 74793205 749581273 182675731 2659321 525830494 88289822 204232591 433508107 930965481 904530311 474204172 932075599 374322557 153656820 331300778 337743621 196440579 85506860 175015777 990728551 143845607 872545208 453602371 54175232 414098497 329821599 574458769 849184232 276272499 895066488 283357378 894848153 905842470 565046756 241396356 740714927 142711260 282615054 721921200 799353079 344788187 183386618 962322025 121297836 450088324 744616461 144558834 620609905 549737629 856434342 336880696 684579769 999094136 146456257 836838292 80130919 357991236 99585414 588251144 470894748 284648189 630525393 616823035 341545770 814269177 746129877 593715932 468162134 504736649 844567810 902076760 481916536 425680674 65726778 89538309 411115002 944701352 67945336 354536855 951621797 905362380 692013043 24473193 620123225 973020720 76981841 517975655 711386954 369291221 743178737 678253108 74068662 791050094 132338865 825263187 470550200 158537470 986127238 71471757 289502023 679595152 544243974 77292420 892061637 549988357 547556947 930700274 383656958 259087192 731635367 536467561 920038098 119879771 205425381 870207026 353413483 114050616 240321469 284307338 672619609 127497241 227430601 226919109 52589544 607552483 186774490 561838504 873089592 875351452 650173061 48313466 215026354 197499980 861241175 924257316 310831178 204796687 536729038 285406381 318300185 266485852 796216001 130141848 697064111 882123031 242376014 866557802 92442144 91933921 690764345 484268524 934794060 829878158 438151105 455422624 175744231 454451912 113022170 889473606 93273914 859943902 592231166 646075945 308678275 873831719 340893661 350881548 63613027 310788031 975905058 217300046 997505300 862774600 462273946 759712332 192987000 665103399 20000892 339022024 640223341 821286599 592331543 28957537 962106043 16882732 766027516 211145165 735093519 63306224 750452640 570450544 530980023 763187937 452097948 537124054 664364954 344855614 161772993 504349488 535250530 874897638 993230889 632504974 506905572 741261717 544436451 473711480 365300456 800896614 276739274 616416406 116645447 761265067 164457016 887375983 20152677 521773717 626375560 991094954 898555871 569876869 276818291 656941707 289041791 316397914 491940492 293336272 800570914 625910481 305806954 656146163 850884068 997650829 655414525 939407517 83385024 55963988 98187318 442246015 440712184 587547177 395933965 887563737 599615890 17010343 875026383 832731873 340015413 100556506 597885524 450520931 63523168 822597149 595386420 411270860 801348050 920736932 97442212 656830263 608404897 263084969 430418770 652555376 739237317 731078230 773646778 633964630 96871409 621954455 324775859 699632867 420791903 843807565 938723347 124307804 360823602 850466859 3516606 779092185 156553142 59311958 942627427 888479056 60037171 332075224 364880830 633707402 404154245 46450315 132513790 572553051 126438512 293614718 978679807 528749116 320360349 408348499 670587170 668427419 947384508 412710905 237461379 472098107 557505290 839074207 38781423 410898592 335806785 613581679 523643380 147165106 864079800 977510796 187405658 532617211 732935393 931927329 30945687 162509513 755241580 212570253 639122496 321514226 555700264 441398494 283864597 207331646 264589768 270582181 595263565 740665547 515542289 1387006 446620668 762457451 728017461 75589814 781842094 912273785 24858250 938294168 875119440 156243589 398933287 335902687 828551417 396598001 549048 357431012 699672382 786487126 780056439 790517575 337410749 485089870 664442722 425652418 999612712 306848009 546719232 337265523 859733659 390016925 262826769 234217226 418662001 521913953 730485734 202824365 987503709 351040236 244491898 415054515 191321131 170536829 943018367 48960079 991813329 515812680 599770004 420972526 206239855 998951646 68150280 577613334 592104972 356137517 24794699 558954420 776005783 320789878 210620123 783864131 713652081 399254944 805018096 663692793 211678489 594695866 474432904 192453852 154081492 672298198 730525785 119522512 72483478 922211786 24982480 61394765 822716363 317031498 844014382 38240289 887399825 529230408 789629728 14653719 465321275 786272265 832878844 860204079 884534087 446864947 894019313 486453858 34898207 517163962 339651881 861659531 912318071 94803745 147190510 273951891 138628378 926974995 249118191 817585699 141328464 887685910 802827381 58601670 502656295 231446947 542162519 705380161 517115371 568187646 868647981 770483354 310281612 672503751 927686043 151719229 229582204 834654453 210984487 428092280 679420987 424774307 443777563 819537879 293556528 791227765 111963316 725257848 371491834 188280069 676153836 751697030 14763565 414384472 893737720 488686825 643202162 966376194 978856583 136724307 93167260 411421525 669659205 578989160 804206612 248862404 335253545 420718777 583534106 933301873 388895709 852405271 419687156 332485339 417094902 597502642 781884494 871606842 168244256 750438732 464613959 318951148 417392939 929113444 526382539 447984814 828147490 674857460 465327643 662520187 926671871 174696699 204361875 287886709 857855505 456256666 13585634 956873409 667277727 847466446 633526985 778790242 55609396 189606034 651641601 369250723 765814807 560808614 31212097 881237013 942968600 701398757 14714896 1488577 810883633 630989988 377778824 402575049 651961908 551068596 867144974 666380859 273156793 979816952 55571071 262020199 933307492 373519902 672342545 28276816 135659995 867962060 534156310 594019162 361107199 279177955 510297333 913907084 641939940 367896933 731243207 390514249 362458653 518114205 855335619 261698025 484285461 619914971 242589737 744820871 304975887 728235966 305423796 462845370 728544992 686202854 83801262 889882091 937032264 513928370 659893481 153375237 90908220 921169343 845882504 11390589 511326525 178707613 876176095 181515085 789267215 215599985 102343831 97289581 368228878 753748230 105172455 513984679 657815946 248012283 618996036 465517545 710068209 661551181 334790365 844101279 760059733 644347153 871396314 487486022 489211219 379053384 932545899 976023560 948523722 46007483 715135325 699926028 4824420 929732718 261446383 235584791 973271591 624284722 636377560 455433025 573483612 13855784 652021924 36426680 359962460 348728763 216478952 270256171 571461119 963099822 735862419 756137115 792882331 341462934 230799302 39744744 337716541 906732022 79420166 191042574 250376765 828477176 342515747 217946055 945072593 681407111 411649733 858351043 693438903 549904851 166814244 698588622 538987556 665266579 109072027 798392349 331378095 853452352 936929338 409721406 471086719 455283578 216977495 714187833 857912891 563988794 757286940 713925196 677388183 29456018 829773417 136129337 602595943 400734239 44462536 250465422 538504432 952946913 363003348 33315665 77561101 353979647 148738600 817258559 839897305 486346252 472503556 576258661 898701618 813079905 801999165 241728243 765270213 234369271 498054425 354898308 572047674 425950948 858434853 174129924 705089647 768732495 16667551 917607029 860606382 583266064 321699021 326226500 596084837 588279450 584263495 243392535 584976057 674670175 107707519 408702074 655367166 647386116 630960276 782403729 395015886 876319850 795300820 770331995 480940238 203635478 718541218 668448455 951481856 844796036 233307914 185422580 787171925 690120051 642465595 908283910 209491514 365086984 135289911 616683691 626675603 876004568 890938015 246537646 212415862 128177563 894871641 919600500 597341641 925841260 629854723 549803019 121240939 859523481 816166508 105720462 185315657 173670472 369019895 730814936 166881933 337544192 31343276 175573541 522915484 978206800 815632302 212921926 562445177 677125071 33304044 283983698 881744625 978751992 711621670 717691786 931432869 171313582 105324252 61075649 710589259 269354303 368579735 39880094 296388558 39441093 145192676 955143263 915089578 535136662 566952347 456763690 177755723 345006311 594559043 497295863 795693665 290281696 374760381 851624682 413266656 893848491 587976032 555496929 535569493 95575946 736391404 181572632 453448999 100202588 607229325 298301225 410299997 634582465 902742512 332900954 582048902 577975357 741305539 319185024 121679922 956213064 564215421 606447256 822698358 310772830 350200786 391448788 962687265 206023559 798747336 807554581 762553214 89694259 586052700 35705511 801419612 496676659 982916721 216061990 115445085 781850277 160943342 266122511 918462183 568367501 407637120 96112881 511807885 244601298 473402540 13552862 168110843 763317966 869239886 184707850 835304191 538448528 520230704 198094973 797459163 362061564 471597174 220032482 625090030 798481425 274044496 48206814 31262034 267883851 412556284 726780559 597365507 759928121 83255651 427710559 414352140 505875103 319416909 519115214 400986767 518878335 815760455 771613140 91937415 447817856 149022855 531438965 649232829 598420057 580991823 819972295 165342331 665680076 932695119 804056622 12734572 58995307 959271647 888195331 959043175 672091626 440360879 871780552 844454539 230718194 416919298 938879609 677526893 134537868 411253071 468836938 294366681 615666246 941250566 185071003 634701828 294736979 282347523 7895323 138024970 744811434 167877471 830229742 234362665 281823540 919765071 995263450 168512107 238753315 447504352 60286290 932613478 610993511 306584419 167031572 771177877 928272639 848805749 536333589 902280345 661151688 901346217 303869213 527200311 902543042 256676697 856108165 637136883 813417178 475287486 660060577 575153783 267722236 270700243 812091250 56377417 569009323 768473363 838045392 598780172 744225515 389631668 749091815 478340399 485387735 380868132 794980803 767800923 610716743 8281828 682294997 384361664 889114138 17537386 124930832 825658675 675830044 983903139 197385566 612293976 486652186 851111518 541407199 189528833 164090405 799325653 891952011 519379062 950233987 461974678 156734091 51571456 258117130 233479310 130848281 780130774 157300112 624689682 497007298 490268178 731278027 589831166 833113138 313461542 949186770 325300081 884353759 458140514 622845210 5266742 418461345 150478950 285420510 501933 910204669 90382914 772912541 416009789 903890577 719507231 402685585 756410338 301064140 305641843 963395534 599637404 28426098 5338357 909319327 884428163 125866013 473187385 55868542 408420933 480213931 477660257 731952692 252281329 969912452 438617579 328230402 250282948 779835141 712899474 719768217 222177283 56155250 816012403 572103240 365090606 683341193 609259049 508421919 962178375 851272203 528218777 310319105 799865305 731770782 6492821 551800181 187498070 802814681 903831458 66438643 899370468 481854385 31461988 316318239 809787809 308178924 113452401 683058627 234981929 734065586 684304478 105124913 97838938 323147631 979089827 927813139 338823444 123782069 106511534 334221705 783315543 460834182 694963852 578889736 888496130 732088378 843580111 918940926 283456278 11460304 527578259 360615308 329948919 136446680 580110899 111811016 407947724 207389441 307327479 84960024 821490034 962937452 416867444 965740275 716853800 365973395 463438669 181350500 509321920 14268984 241751809 901757655 683221312 211970237 894474114 175287141 219973781 850476823 291390875 891714221 715377078 158810772 443172914 65359949 66722528 133284121 261947636 634980627 384497200 821564319 523660983 888204353 682905159 177737771 119731547 657567670 364845653 751905005 186384541 430694073 339910670 908471217 499405638 159253047 634488555 515580344 820116714 260344100 662620287 743838062 298437365 814092043 132313855 489782353 783513440 750486691 603993972 259874814 54896693 74316413 195832261 697536466 163677192 762235989 888425821 552957320 180280528 125019704 854048998 8930236 279293624 822458803 336072048 790801501 609908513 545643177 743191092 768643036 195665328 498287628 831564199 298731543 666295268 151130670 538283859 608213355 63391965 619539638 149694409 537587810 725771403 508256179 706763880 316786344 519748580 877622001 759002155 331602454 555282033 883119893 583422220 939646250 656782984 244537492 885562023 343496917 756905493 753244257 9753000 917101138 874249291 987565340 576568372 2181433 822883519 447332306 339383995 598890588 600114471 470096330 433874091 591330543 853185791 482026674 11426439 78629751 849562457 546223611 837276415 606168794 277346085 120008980 263355368 613211937 688779261 390744754 789090376 113333131 573430768 352981742 255076651 438646476 496709942 78760535 358344341 203906950 19066129 196086849 444867745 882954059 972450549 286954649 933815521 840578700 507750206 584135431 277129400 405338307 102365462 569805125 167947641 538365321 19013558 794365063 615735668 773906168 559182144 429198648 421826587 345965653 299937942 516177230 876217090 40583514 903474800 193352234 28691360 265563942 518803407 682433166 459702484 317856244 66357741 194696488 938702025 775877886 211301821 255433014 19142103 798802100 735442155 739399153 380814649 851776787 866676007 381907741 542295443 110156107 531546931 181813656 529442301 369590536 917250267 47317726 98516417 56148298 492813456 56438850 859678677 597691183 181695003 64804877 613002465 658502407 19433689 897441122 585068000 686058536 696225938 314577241 399289999 114552821 798901800 310226093 88352548 365924569 581096181 98769280 56583153 296164049 804821705 726108999 298845808 397889429 128145683 797048672 358217812 360270597 759807742 943850547 646000909 771920409 64460944 208277965 111753450 56381045 641859460 486209529 812505356 534323346 913069262 341002386 499945829 842056205 347478364 520005986 548618478 6829155 559387663 916445437 140114219 14502889 371603110 82587153 988370094 152790112 525202411 589485457 763185317 281154124 76952143 448937120 862368620 517915940 953804196 243259304 318681706 734760797 86093144 902652423 380361884 751153992 714825466 427296823 156222552 754932297 154331238 16131988 531572236 55211095 954887140 646604301 883157261 440640341 927339708 989866876 420282972 748797104 704869190 846094653 334344152 682989776 407200376 352319300 963737541 596681158 122168387 412034726 776368208 820853050 543906318 463462451 118256132 687812920 122776700 361827479 989893771 550743247 235952050 580415952 933668475 181947548 763348329 373240843 960631006 134899875 103977793 930267445 347261475 388284524 178855900 389675934 1083236 100705228 195331531 998003761 963460782 407139804 31676159 424075873 173151348 973138944 551097347 630737374 947198062 180970025 137793016 714850566 794042541 755613703 989520628 24766920 299368340 429759327 624924936 708563261 362762428 806082080 869648213 636789070 163427657 83863497 521474437 677789842 8917715 80939624 567448200 632565176 814119970 751911655 252255449 797427168 101424395 235921382 640102534 581935530 259320087 84780906 925001969 230923078 400787939 441680943 463059737 231401938 733007412 756648489 56901978 123536656 7585900 502772485 62794880 350661250 382303271 814100393 921106004 74431156 619531195 536558453 461710398 214065505 829087756 433593582 86661912 398523129 728468661 927716028 468498644 928288099 456586843 686721223 826923812 451046817 861748206 230839802 673536794 482067974 639374970 608650505 667474394 488545468 305366860 322468739 345641838 786424027 648400012 251432840 256529443 747014232 504920989 739944876 111089202 547267915 90305262 812418214 254566177 419607663 627821591 323783948 187771612 446312320 127936916 787474023 918501075 826003709 306437866 236335242 258508847 203492373 260192704 361935048 205621656 70982117 717353291 345061374 864497195 66101405 283851906 248086773 286726920 955934857 292214890 624840832 793587661 908883832 148782991 380017496 544288563 651040243 263764544 707408510 116823219 169472648 819575972 890914001 460653628 512382385 714410549 29111472 543427264 386574641 633938281 182756047 850607764 747508614 761446781 749256866 439943643 805016338 279350012 648515570 848696853 425994643 99270347 245402483 58580697 273154359 917982925 361078545 118859580 207442200 450306911 662565454 727717924 121918938 695076910 281706619 936880200 837209809 634332405 145937612 883020505 493324420 717237207 853303306 34645178 593793575 831707962 964345737 785751117 893064868 821572612 360556289 140781398 224093645 103665437 590650002 64232489 537253443 937187065 101735477 497621619 818978501 442630326 493575998 361516821 373383812 961309832 314449231 729716031 441235783 1326347 405981448 286454272 65669765 306688656 163151197 693123662 981437023 812279473 353902639 814853663 129467320 922414562 865930113 385151873 836773822 588849694 714737972 49245195 541496834 893424270 925937073 567361666 711329970 758813509 715176885 243920548 395476181 894913190 13447874 314333284 830640114 581308232 418157986 25643517 777109110 666927470 454857315 373203259 569654660 585221558 618112227 99002572 388465330 107630805 315148288 289098867 53445543 14901105 613265178 395910824 941076394 485578218 201874872 207013483 998309621 361212131 877518332 94068961 204172138 368991362 897926497 921385965 440635632 208362262 999466656 335801433 16746228 182159095 877757892 530076907 4697838 543475140 81582796 446390541 430749282 267652189 169808631 255680077 85766977 106950057 677959980 991445124 28637277 65740534 303850802 585445847 110304117 448180762 490234761 440132582 725438653 425206024 168100290 971527899 241619207 291056157 838422865 354431812 825318616 512828822 128438160 201208371 633486485 793501099 954511344 731062377 78189447 105649106 563531403 279995474 320786828 477819603 497167831 710010032 643290386 99711644 393375267 131580950 561818930 869740078 256378130 894273118 295732502 450165530 937328648 777501191 650023313 493838767 798557242 980847857 137595768 626954014 560609824 218868084 416173185 379444833 829512490 244529781 896628301 749432865 233519062 827336880 341513423 966837867 809619087 371245602 646508745 119325947 650987696 685307004 859015714 472078214 109100682 611616544 362271750 279316071 177806238 578186560 839089425 738055859 521229114 322583649 691662246 911930252 509202052 864708277 404822451 329518464 749643448 799496537 347623601 170016253 78998229 662228658 243224468 20697338 438827452 3787246 554816524 222761383 835527506 683582402 517553720 968895873 828503456 797595713 339424858 690586528 689183445 697790210 534690447 195269556 955093703 45991658 926551372 874299689 699239563 674903079 323040644 691820770 628338962 929146229 836391916 689718744 670308337 507818173 605973949 458103791 912989157 790318645 493952587 992675252 150545220 698245531 72922010 21791352 408124570 225809287 852618279 574754422 603037617 206053572 447618086 407263587 316800771 959160673 105738939 528122350 646798475 723290806 221164735 49912460 222718846 796601611 786252020 586090128 749267624 998912787 140673052 933276126 666920427 613025870 499440447 302372509 367914906 561875995 351524491 116977909 441696943 615340147 537203844 274380852 795663444 47262535 388618246 825555414 726413921 316368586 537979610 697864911 602599999 624872893 275579717 776199879 571126422 415343507 649987581 536086116 920693935 25955965 447900865 584310528 702614082 465460794 302399840 12225533 860875007 184234188 844292018 405406374 9250856 336668346 448152935 21234044 593602910 379819049 665736738 474750839 131207227 579941627 731660767 162116887 461533855 190294922 381955745 202384308 654688252 379328941 770937642 859670490 512501966 857667340 81082985 817599493 262472452 93685595 864216267 145525507 731407728 104436484 376413520 206894416 690393587 144206618 59840109 148370828 434797555 893349640 763887821 112932394 196671978 140544175 923482763 475099467 66715607 861686923 189930586 69723607 345904420 89172587 21532925 259278196 167248628 537200956 688132367 235801959 950478805 826505676 288114848 958952274 589665430 29554966 961365056 56364826 942442508 480366823 790488326 922128425 895588224 290235476 681670681 351133715 524641449 261802782 632449399 992037814 678830903 426615509 371240709 293466267 468899223 80874154 403520181 461606671 628317673 763700226 503904946 15907222 747003188 709136670 545740328 683222400 793211131 807176795 590700166 915660912 721157353 836200594 777321797 868624634 173237283 32495682 771266355 864286880 612056030 805365912 50161514 128209565 631983516 693913952 694643882 847429482 33569051 479592521 533666470 586185960 912275694 908960595 974825609 232492560 920273396 359823782 257122606 328463073 759699504 233033076 286290124 528046557 887526586 450908653 990029342 956394339 399522626 530350463 485552906 142628504 529214396 719965899 780155883 315883094 402563903 349277120 666777222 42015463 515885873 28840460 347886 158562076 29177932 507046085 41086747 999581032 276352312 651862454 824485293 604182348 543103264 841200347 128884329 887087148 197965923 932252445 66324705 148583843 759333221 601489772 189379220 214622279 3709790 865130907 940677184 124565349 549935573 798188141 782086769 965739225 201395097 969855148 572562528 387336347 753011032 204704555 763421236 677822994 191287715 161609257 774510737 339793280 853610971 164564801 766652922 923643927 600267717 450865585 844076729 665854255 421507664 386964530 844434469 112110711 66820218 444370497 546777986 388215994 706410034 227181128 739621270 121756748 932936774 151814368 137094333 769547684 1147486 100574192 995159270 847779383 629762847 645659390 490038391 520777183 838989487 276186300 566898259 241749302 219388073 993788824 505313777 357823977 66215889 609537374 885239770 32679905 719702429 79015498 144241191 967788461 734172839 426293062 811344862 164638975 27054626 157648502 960698535 530717484 356288397 713786452 879994935 248164462 33059860 846630687 237381510 356128013 442180992 620402756 886528872 675392432 24035501 862772111 767170418 514855904 907440559 978052090 747390782 89756576 770595193 981947091 145120615 619244536 107188641 943023865 183093538 449390758 183186402 477831568 822471420 94576399 122833656 488534504 598863748 789938375 288346457 593360256 44393920 41434754 94632680 92540432 578999109 922167544 734278917 958891796 3666065 121636725 77086477 868272796 232447193 394605332 708661065 644307375 148224820 792332534 564378226 507790610 169879154 16508123 854391589 30569465 677114213 796963819 938055271 198082393 444029005 146102755 601388539 723108861 488909330 432127088 387019784 660477592 903467875 947319214 609516201 154321840 29680045 593432342 698858305 454353027 757484633 854941656 204881459 568464114 326686246 886498866 712058762 312242579 130212949 181332458 203778614 366342329 409303428 598573192 265583770 5311295 658529429 987050606 71236418 482985875 694797859 283393497 204686503 686664400 835633447 947937304 408656850 806007780 363407896 841204978 173539665 435132006 603032636 83816188 180741778 389273512 329130374 609625425 915162907 484560748 376435013 636667448 694064426 658499955 268821570 41163962 524285518 672530947 99531772 938847799 704570315 40568892 660208042 158370553 753449272 632890514 237508076 555172608 937135536 293117200 553263832 708783558 70137277 594728478 429623577 534900074 249428362 161635919 575725542 637170990 355073994 64497665 749064493 992262273 53570963 325177167 365927738 236758538 27520914 297953128 974935940 663475837 804162544 460909763 876960941 237481706 255811681 587770101 217468638 821931728 853498593 487052028 712393094 211928960 374168801 673528569 488020379 706209989 293099148 533656805 582185546 678569636 383943315 844501680 155053001 28592543 365948453 56670492 626116924 79592532 91716453 245917656 676789770 535427289 246119042 404131971 302655761 36441859 44948340 780279867 28702775 439887146 855765619 900371173 296912960 403155086 583111877 485080064 285940616 705901673 229118509 450091491 879485015 705689960 953680794 208541380 353429573 428264398 623728607 12674738 305591449 477929536 887827076 204865705 218659908 637376042 509614315 623313596 470479605 640515889 741747346 637861209 910139849 105712495 760055153 245209750 601713812 133291365 990437790 499963258 96899399 902434538 135199642 365880427 583759908 517434765 313927517 929070254 904824324 25977123 108292402 498130503 851523557 978494776 184999634 687883360 526099265 762030400 898805520 37847685 682805038 987777868 495119727 169844738 734419468 455251804 607470217 217931903 975826728 984718343 843940865 305117992 126056035 511561350 272186788 517350463 267629268 39665398 428224069 808804461 195000529 604272931 376976318 380902260 430302156 941120441 473951459 471141381 255648818 255166522 569079539 181266774 970644372 181388553 664019828 81530499 313281003 713678956 945149674 805037878 990633310 319118277 321359623 154485162 318746406 405633622 179456929 724138763 269516449 360342677 543870081 484826242 402058300 382654620 210443513 164922264 79079868 687211455 807999234 578155549 525581410 252252510 131528521 785910886 579721139 356559831 103576154 122490331 203137360 265755074 831928133 341187885 789737182 342321417 755023988 154388456 439787364 523595329 463961416 118477916 754090516 30846493 401648609 18420531 774613718 368163010 442712032 890009057 332676073 553465742 225811629 507847751 829671662 950356810 354058860 560752692 284185485 366138633 738454740 514981280 240748464 571009457 99285078 601710658 521811198 811078726 808764683 559464379 610172614 734991856 484564354 305386296 494761073 669392275 982557789 979206164 483000679 230915391 575738865 563338337 469630117 825341016 663932524 668707481 587344338 563257544 189556111 674554386 382554449 130544006 591070828 353165706 354819102 565704482 371457316 187336380 465480932 744832542 219637500 245997161 4662127 401788559 315628933 599345925 92558876 943803923 249689910 216749968 453757309 518415805 784177506 727342413 171930663 812099272 940851911 111818374 380195182 414052993 194717746 919993356 701167416 120810169 667299299 1399214 947191843 759733632 608942079 149776072 643121586 112187806 99264049 456215927 569906109 975356633 920369371 295811487 813938233 326990160 12828131 186646048 96296318 278220685 565742742 793949526 613087625 26899004 170087235 931602715 67991017 441867918 28587644 565519090 237933197 130623412 908271062 965018508 673589216 71544951 745811346 651106020 552844700 453746711 388185058 120258883 449234001 204964011 50664472 884760152 165896149 185840225 180768766 657056968 300443907 380609965 265789564 898602935 854998757 604087482 942343417 644180456 949923372 800327639 492432443 179328473 695030021 892877289 60954187 37911319 540501685 733573616 291869730 743216590 348325052 210082974 696544047 594740278 559859431 136284314 225108336 945396229 893187921 786412824 317182080 974913915 662378893 723344022 794494691 933418926 436468056 559172686 794166059 534189941 600034303 4514665 920639765 610798354 892322405 362930447 399472414 672163956 643855058 270203138 846806008 503364885 332920287 586272123 544660201 807936446 61730235 347115389 280471929 293764362 985777252 658607475 735765675 268554636 299371101 762995459 133345729 348705040 289979325 248120922 448377830 366877893 115646173 41586968 484598612 575931123 890369506 636801551 512694632 231034482 804948348 818028973 560885619 847576666 447549923 311895230 773062951 546536696 669801856 583089460 44850172 662045157 178097778 143378022 620097324 934756437 278864747 821534690 516642779 831434566 662349871 224093692 813469000 687751194 466118724 394387935 238786257 720153117 333065610 465287266 875401185 774672537 395427374 83827495 676530849 890864914 611286576 196178291 443774589 323660505 694912073 769612078 630779433 172500772 784072164 466846848 190139106 77987272 25267635 252439544 737331667 26376460 465237758 832975949 13648206 493692428 742996474 868531655 294922434 215905225 240637810 167689499 394528895 242061002 126493109 289864765 938435070 888839191 481110201 956349828 408629852 836229311 85305781 320483051 352536557 227421744 72678292 984038260 341262948 145905664 605068688 185580073 798108053 59557080 529125431 615237991 554010132 776203382 30180899 359363924 12629795 886766902 565079388 281146862 97183658 519476788 174975048 318048452 336744284 365663630 948730936 459706232 262036398 427514304 36799860 677837434 377973766 628475585 15886823 729464978 839743248 209056775 714307893 154981875 35855484 901307411 883734974 523933927 566227385 728764775 990956132 217713862 284607186 337056295 396978479 634834504 658397155 472117158 279298235 893771086 209916364 602738851 303502612 583109225 899780700 449008825 613655137 820084004 169610082 567917114 239741611 219808458 397319439 703259389 399839642 567484925 863556307 736287625 239036605 475576133 573968827 758255297 513045406 39194681 835047694 117654506 515964984 794167423 571485103 205095418 442247173 354395964 337621940 701545372 166324581 5140014 883091730 455795362 483643451 910291934 555728242 796912761 127196205 531905707 333337225 321333315 523065788 963111560 280209621 640684064 13665409 129735205 631546388 501469898 796027767 20496277 51368647 429750285 149754236 153621638 352461833 828142531 860885528 861937560 565197923 600909190 123969838 77600094 908142801 744053894 239582260 815515675 984537862 813505153 716196829 308600520 411494828 545743592 29339684 747692081 555697135 546055076 435285073 297655879 419169173 248793277 244719024 938359369 947600287 229993975 93088214 377322987 707836309 766010903 320828357 633615709 495293045 818650552 549245278 923331707 590703675 141746342 368216893 688787268 298437829 976165655 807437485 556108034 710674803 249769949 177453188 790695838 642877526 880003620 702795339 108650035 601274149 222705324 245101309 884303191 42052224 702884464 333882500 221323317 291588340 636338565 450632439 861295762 611459954 360069573 129206556 565923312 26368892 162314988 651612074 676724620 448532921 520143504 651291711 699196832 357954069 984279907 200829101 664237148 774699864 747946478 473792848 481269966 982531506 393363204 115964984 327213878 980155535 478565880 93940315 805869476 579536063 182128658 523646325 701852038 950807946 429064427 701793702 265907555 12300427 477456251 343269922 870367413 476423982 780175134 924300573 368925589 578559535 585086423 451625509 636326672 577066975 236592134 528956585 969202272 584169650 487926049 544825844 840856254 590395806 778924478 436538164 662146064 144210931 581945688 400848191 26507867 970589056 547292000 324740600 375477751 566485308 683725465 524832738 773611368 156052565 847777519 637766942 164315980 58862259 713267281 898353 460712138 220301020 971566387 555779938 739048743 669161873 678231752 860534141 215826533 248954841 237613892 465045993 220848371 553071914 427135168 910318720 700322920 728185557 347300276 873304801 779740321 746654324 891866179 71244563 672984943 956750777 613112171 518705284 288476807 992591592 972278870 656641134 518542056 550492861 139968814 114039266 455679017 368843368 298478494 664514784 738329690 156188751 285304236 913682250 685380134 203067753 113495794 14872705 878865196 883833547 105465872 781917586 905210893 229789130 955207923 268369319 935466294 469812940 311482782 174228533 220190187 883683228 45751810 321334199 85020726 294641455 920908088 140135243 929956460 157187319 289152980 740000909 513204496 994676106 106540072 857593479 374818490 876742946 40271097 63678979 280501604 275188913 80976368 412700462 694227320 949028026 892810199 55154701 854367099 558880371 46644990 402145995 355600310 718974994 411620940 606358375 918881286 258554368 538450251 38197985 72937037 388169174 419272727 427957002 693561190 923560429 963192700 416876858 8360600 992170783 904917777 312422310 650127142 918661916 39422840 116371836 717664504 292391526 229984444 826015216 650860370 154304968 14723492 727557387 618252993 85958966 31975265 707156866 876269220 986529854 723925729 800606788 702534998 784710887 578486890 753099703 883196009 941388096 41936956 392651500 411887601 263162825 690534314 772927388 20465889 690447137 971612182 758767810 393690309 925804642 221367851 9113645 448513593 268117638 678978782 555439351 239438019 58918468 480130812 392462878 796390525 342166117 204536230 99381280 680128870 835554122 849674018 965760602 638626470 242013939 771992369 92429090 352421669 339639237 76369447 159753383 113404505 795358551 64059124 675703373 372281840 440818321 229374139 917727392 581015496 852038427 730366229 794144710 885147438 895315614 600225976 733034422 164675236 898773741 386290466 364810895 678941306 766210147 444953016 876958585 367314240 782284412 426712860 885451383 727714780 462721402 819322908 185937081 858651520 373321740 99408310 816331866 865006998 693947526 535363459 902460296 852662813 910632562 665412603 451811549 721669518 755095062 427541332 842861132 896401926 163259897 974872516 345613957 833548697 536412958 953641001 722724887 944279569 851232917 79858031 838902433 524775823 614638655 864110528 248358266 417248509 620965509 459770710 627072369 972513325 469563525 777041091 373846381 929825902 893616235 339271878 526862394 336785328 424056920 553487783 575190522 401209209 189265791 706474713 938688201 438724684 689835789 260237932 223484683 360090403 258014924 796481803 348126698 24981487 536012238 299321377 57375514 470909478 714510017 940458170 454528123 542855564 949054241 986403681 444582108 108023229 805341894 298043375 348614433 988585221 619656431 729696505 997260727 545402507 483283641 836899751 127811068 254259571 326269119 372709659 640243201 700121220 60009088 387837784 462974700 512192021 840036807 210820007 829833020 610476903 590726554 606229957 640840147 628754225 837188565 42047929 882978116 56909868 332180279 481981672 415254118 222165476 585201772 459254398 32338799 147225518 624254215 688553918 124347856 268905343 642386600 186082926 563061797 866871926 647876153 731409022 484774762 471766685 251397488 655524636 325585090 281886195 715312073 757196280 615096243 101924959 588226308 144924444 131429439 723866566 910553559 980402678 336699085 275977265 22244450 699483580 991310883 573787938 840238880 987678892 582157982 19579500 578693388 227432203 908219782 198175775 626565951 912066277 976179306 908804937 84536809 502432794 869896551 996127299 554548430 888432867 67442722 634063862 29057977 177916889 365363434 691248408 922027590 606610602 476056733 429140303 903241552 169234702 991992288 452544702 530741163 151825528 431899840 106467363 396320126 90133061 506528362 703878345 575489166 543589526 442840741 486277930 916867088 730850384 173882023 711815897 661593266 302729467 399176360 153925873 80443183 297733437 830399084 858074787 466994962 440324460 862702465 427378759 955171482 211372749 482983814 432248508 252021952 686685916 258579255 277011931 482159267 278729749 959003884 332830314 787995392 242591680 439879742 701884405 142693081 540955276 913315104 144211385 237094084 463803763 990583349 683209251 623049704 387873439 105029940 96601550 513716482 865715157 539117660 447902023 828014818 271873284 956094838 360408937 155789099 943483761 434184857 941894329 172122566 856529404 968692993 484753285 518571630 570683589 246343784 485783743 298746079 616119556 413047858 562975852 170428045 250707857 539400522 371932267 323058182 235819486 728988173 141216815 949150328 23869069 671508183 455272305 762324805 948185124 676719797 886644229 720075579 887586565 696826878 505231948 6766440 678557705 314550629 892815223 472915282 390393054 539677503 216511263 991038332 283916499 949297089 167038210 667028997 690069047 668421219 841382075 580883065 895506573 72114397 783617951 414821184 779357827 340964536 313149221 738556935 443225325 34671134 425309138 893496984 474892949 91181327 581234381 405793050 167197765 479205574 264285571 400828246 101437576 960875464 499809598 763443407 784812618 619821364 261378794 166233270 664196449 58363563 363670372 174472884 545846458 728972438 172908425 203482290 265655373 878559762 294383504 677336251 531383067 643609217 914877363 801420917 319112374 323622002 830915211 458350411 825071235 591368857 480334248 924323885 860284123 343019864 956817430 448768561 949455600 147515155 694177460 358912674 975051414 61811733 295106172 601685436 112712568 71128770 835612071 159603418 610777078 490051173 386997926 318444610 666905458 616093095 598784701 609115551 40337284 925943188 160577080 912710603 559284330 635640370 708951450 385532071 564880412 610261063 93931256 924098636 707419634 554884429 60327988 932379810 280065613 672846419 889329262 726711520 875839043 39256907 440617657 334285135 898931208 915171164 631756021 58250833 510238184 240332699 721002867 157176179 528363623 296057443 744043318 129546396 55148316 97816674 104733244 217164516 315475526 775693658 399372043 231167600 69065943 422945451 212055480 887018273 404495902 286154990 179733862 174456615 176624805 808216465 768968705 625111228 897130425 898982932 124847467 476064580 359604597 153930900 83706762 515088671 315864875 233171806 940799840 868895152 550105584 934583722 955214231 135544386 109490967 792844480 891800217 625656960 284400956 560836219 210962271 541999115 516096909 409683589 311234554 118291827 278152326 869337204 32363533 712861291 306383836 832571491 617311157 14533480 745858792 254569885 570079405 64826959 689155461 267042624 35173578 466488027 196334198 988432744 398490033 842635740 708212453 925254825 731595346 195084698 52396908 148753083 521950269 964551819 499258413 783559609 32503067 489839927 803338746 675778129 703971136 444460014 394097127 418337577 575392144 724564589 375744667 874955095 472242717 858837272 42868453 289845680 785675578 577802012 229539983 25900628 652039163 591989260 19435773 760729706 795304474 242675850 703155956 440886387 959791084 304887171 451088730 879814877 315324833 992388750 815169737 982243636 187661979 75769312 102675596 33824165 180765698 422479474 511810733 821107582 607143753 650229073 935894828 981604688 193000414 493105230 487187798 72721967 12507236 633743346 432858764 301283500 198810502 258689038 148527043 74985304 385568294 100526796 832314763 630928855 276094006 896422224 214186132 285802692 864539667 999905336 521519610 996494965 975488912 189336450 96407529 250675573 202193972 84328853 873280129 453146620 237582172 262576006 767312800 202477610 955766307 311835181 842449186 942061238 232368253 67313799 944757952 648610205 282353882 417765256 548451658 421336732 560839550 423760852 336668752 177937965 134443711 103232902 347747778 238381710 292979675 685697942 806966567 707858842 268522290 516790268 900929872 276812073 962210645 423609961 263863020 940808575 843859381 306976309 531448189 865867645 855734220 569376007 13774542 537113558 908209694 929138057 188220390 410370121 625001120 606653840 337624046 833824534 294940694 794755861 647892299 498254631 466650139 159592535 30643207 503387701 189412934 756116070 680244447 311862708 94786933 430541233 860468747 874166237 31535041 332338053 633475697 304512550 585047525 720490851 545792830 312982271 496988579 112041960 825198569 465892478 605613618 446701377 699823488 975283128 498860161 565440007 27233466 821604479 514718272 209854011 303567047 951575487 590092444 373087402 589332667 893347567 145362758 386471318 163626540 660391654 774329477 796692219 846101814 29613255 477661974 969858635 678012111 922099483 943007863 422332390 510945332 648862575 405364779 974000137 934071419 235228872 273475833 220868273 97916544 181713333 341835310 887989735 407822362 45924854 754054221 527071585 816516410 492085215 429817227 772641276 379068760 300706922 914439600 385973545 943975794 48985075 880609832 745473627 195571481 368809904 943711653 598401515 567568616 678661608 907653724 659400812 623401136 327505334 391059956 783053007 177340758 347187950 328590536 879183679 670563758 986481693 547619174 395746519 747623146 911478328 622852128 436432157 140823036 166490381 520010383 175316211 351230131 580006781 432680407 732952729 351592138 189630626 78204825 379466566 10811809 483396397 739881459 993170574 179021274 28072274 764888973 388713264 526774790 676507946 46668057 166132443 583305353 6550247 243259698 601577384 46116438 552005087 133036060 948443300 315614582 677341579 901389996 567777206 541711900 614441669 649261687 639249478 942903922 163093395 524795144 405946173 940063980 47392754 401604745 562718462 131864005 818589309 770009987 332676811 465127137 330468752 61523786 168393647 686421319 389558487 70136910 396079583 420088122 989465599 690017947 136121724 429764602 474638200 481568830 626464017 199829355 678659127 933819137 858427774 125533656 818063672 965585338 195374742 598519379 869761089 417681305 822307935 868945279 465293722 741650531 420294969 865421847 997332987 851198684 710552212 160185287 208224131 179004851 603814394 734128469 497300181 705126039 463882966 862227270 972038144 621522171 349421427 405051112 95996647 722349859 119138927 18936894 859418137 45144879 734843454 951449846 757808887 366897476 49010491 713670382 286308967 19835506 528080600 76366798 424687935 405722574 671364961 99453543 43354829 474379989 271946486 749983867 800786703 865872745 744425607 118251412 301448477 230279246 677229759 105537291 863785347 812413267 42868636 149634293 157210532 56158549 786821246 935554574 294866471 395721128 888530862 75929479 126154946 962389845 823837231 239243904 484469742 177156253 259107375 950280641 89626603 111221049 293843875 796894169 344741566 69119769 603072109 874350709 349323959 513516212 400431708 625100766 22078376 176050692 743785333 24981829 621562867 446074873 124197317 650648965 399516552 558139897 95687025 171868969 527738227 511005641 415041879 691919755 197847751 596900189 115514648 421197762 456075627 129979650 66592903 812178800 66594783 665028957 599393537 596914935 537547370 642230001 472654186 722705588 87860943 804089212 238928062 280941227 913793163 438274394 331912253 960041305 998475512 99268146 395788506 843925683 687997770 590693839 884278834 238646120 377947702 459845285 25156729 373012014 683997300 217841482 492735845 871930185 876740727 364074421 131029886 335398780 943661754 227839496 416478032 347341182 869749391 324983289 87311663 324082623 173972554 159850372 891450989 514364031 226412960 762028728 326929976 442389571 894632416 599467645 601927245 256480636 379896840 787752419 540311080 422335113 72842277 786160779 564256150 605805728 944241793 63930803 965794013 475052933 233880729 20558687 479701842 947721399 746775208 901431070 54223653 380838692 409534775 362443569 580090306 203833283 895647257 625151873 634857637 32243068 744886362 933061970 464958001 974290605 504093483 857811692 160153066 758693173 344273751 958438295 308919851 388210681 903791719 823587914 987964377 238324901 699067768 129325024 73172745 140423495 999342173 945488556 840057274 70804970 525274169 294812062 341327454 322154812 31643110 459655591 275287201 511850434 406228912 538506964 427405561 543029559 229548259 559706756 889121449 36538716 533154860 725300625 453433180 189115488 304930583 564454476 731378270 438390759 827728627 530187588 927738518 149202722 127655719 565357650 45094796 941215191 721987550 823770332 810334051 731625688 190297478 626813336 700680846 61666673 137934493 17787186 553199235 447617628 86820326 309984296 224749097 13594176 809823898 192709034 430364435 318385188 91873325 978577903 517430955 11979357 329754543 567974077 136363413 190929958 589729119 668451799 333300206 357411647 329375829 134834414 342983368 567599367 817692997 540226381 229944607 239083035 35712114 206085904 684516151 35845800 500786932 747047519 711017583 295471681 749482978 481649998 214706987 347764131 608115813 819748116 152254611 942960885 24244800 70091494 471645828 784081344 254218950 5468818 424137389 869055783 800270592 394877914 67816884 117091166 924885861 23794330 937067783 299580812 833790949 467245831 111565608 214141559 329962136 24109276 215958495 598265676 460115803 785561295 661827680 615493988 225280163 13124895 707451641 751502182 61509157 115111528 386127316 528417271 699148575 75172493 207771402 623901170 551837178 547056502 498080760 919953402 645599972 92712845 138328752 768366383 284534767 47005464 261973350 932978865 488068582 426183551 971360278 72547969 158439734 403798214 627392898 648725143 655018130 100607162 698630399 443671047 845362510 492752762 769416705 827356308 77086987 304851154 72510460 884186541 171462109 885588298 516466216 177054702 522828192 298617227 56628559 227500555 598449784 871680699 438638195 758344813 119126032 812326745 862579053 358607910 225903169 97299673 135077624 555432061 496364591 643901442 692668364 214662832 682932061 261527025 697747940 534565400 360622662 859614131 659944217 106685785 427962682 280774380 906247198 541529191 799107122 29386913 836172158 673830295 868097856 526298109 623376325 889997825 617773177 999293885 945955468 52178170 896699087 455760050 760436315 507258437 79619383 517269427 376642383 378367859 395812546 237303118 739963624 339508365 653814918 226441404 59159561 220966343 164321189 67620517 766642774 795534701 287861880 182268114 683477655 564666843 125503809 715108309 816047327 506914999 749174985 428410496 389151406 296555919 477736861 736651462 141529188 532877589 521006194 760568853 298724962 478500617 744572431 264379411 118796764 31443925 230450456 694838876 63089469 427631901 469190562 281378046 906605253 762669505 626876413 293567526 796835664 151501092 774656952 805890901 74814174 343220806 379950518 484354625 739103414 575657870 494515780 953646655 832338816 678751557 905024447 242592714 292182858 91256538 842485434 347283882 705968356 315321674 871196057 779460480 797183436 275951834 122681841 940545605 857763015 507834555 791922251 722317880 318497375 389326203 79922818 880221561 874921957 898627812 419752262 484875700 662743809 166996570 759161881 131115432 192500606 985241065 931339772 280420718 825265628 371741352 575644386 325313284 316805134 474822163 527389734 354424391 73205712 736419221 626492446 925611868 38806854 150790328 430257462 435324428 488530815 116675562 52483551 491593168 106949278 81255041 629269473 424366470 767878554 752642571 461189607 255969181 149815128 441954036 42506670 43859623 905180250 634018733 950376642 95495238 322013369 858572110 499679253 853608265 124571714 636785269 527215347 168455094 731958858 444414097 509447034 390439076 53160719 519900211 87902962 300374246 134400592 502362135 205479990 930679857 265561881 258697626 555758160 915039950 215779034 541829479 342164070 677252709 386287945 105864800 548430115 491181699 146847775 860993554 292257304 559325269 608894333 464584889 716845366 495063170 704691870 261413570 961283104 327695071 993224742 174673959 693511421 337012743 720949403 315434324 59604626 304409831 52247974 324825120 849550901 737679608 472594104 896580547 969642622 159490050 246138865 33913274 341079267 139038017 207655088 612566164 925080466 517532977 784593277 43097575 244851605 862694864 626833267 270868505 912095937 62164290 460800260 32616783 184878965 22482057 660396492 845297509 487731573 199189960 396941015 48561075 962209499 850499349 498921036 840819985 504809688 435088501 585408298 43766628 87156687 596280287 553768232 63917291 59206873 873696403 786391978 550323337 641688275 51961564 917548267 48527036 649910424 524187284 340065959 852070926 435998088 270060192 758396725 339371354 984585077 675770505 378402286 235237012 255019887 143653068 34793070 484741136 350734795 567466916 855672826 288335041 694223559 904643919 883155898 77452751 57632888 437477133 470697125 136146614 284474818 475168937 375892848 560625774 525871769 612937464 486071309 544715691 405219263 928679200 43247518 963273395 794859659 893703631 938167141 918670565 642619578 105242639 263987001 746293927 646018404 759780056 930011417 599137282 8781413 541507825 640726538 429002880 230559782 350376684 580694406 814774625 658523227 248682597 104351841 201512307 149803106 772832970 141982672 574491792 524629161 544089318 672957105 109286784 711135669 477140787 650007990 394146100 290129971 376817575 129776826 121382372 427456205 371694509 577736692 972414559 220554025 703218488 623213933 499228620 278075502 121260322 842411824 193718189 542847242 224016296 437525313 808166577 208150278 103517887 456258924 254551396 559479171 412079902 931646352 610677443 698006512 848904187 151507914 13445726 224441601 64738294 809669493 214081637 378358528 283624759 894890401 836602921 539868583 52371036 185276964 557485355 327689931 771423182 567747049 517642977 338999274 22446443 600287152 932126052 261307736 985580532 815623542 346300585 159330159 359685372 416673889 809618260 618582752 43503761 854390881 348135266 914802772 564101131 268391555 837027844 691307042 565995943 853935053 989252075 603226311 293011832 673717826 737106083 235354444 462109160 554359847 467179092 354519086 85594016 592839213 819695253 111047125 141660533 720795729 920221658 110838757 91778847 84367725 705421459 651805026 200627702 42091360 731111196 190280449 88419308 209070025 478106840 592190184 59532446 419745233 429053202 94674678 769488166 922303084 517602842 581841293 975665776 977055348 292203273 748329305 496774165 232238774 601050358 268997049 698494763 695822522 878552608 938782666 339919683 920249633 412726512 247294170 74339822 859311537 76194048 529826098 720347514 484446119 904444582 995773329 935141845 773162131 396262392 495396081 700557805 924648438 142175903 612116699 895409433 748358031 472313619 269220890 724765693 806586160 658561605 522537022 701114722 998569275 847524578 663987233 809631099 7225380 661110260 844936450 18073934 740496686 568676899 743085101 358756617 57807735 687020066 240482847 132437379 875089395 821180871 692132617 355950949 909077923 206427641 159025704 850380039 858795540 727906228 788466548 248648280 448375896 877701183 334788360 607104500 364982005 928257039 699726566 577827363 561343458 225713887 977296561 856562019 924336469 131548227 161434522 580311069 920781334 413690642 472594181 857641270 270449699 875017130 45531261 971411396 374172732 176413426 929586177 140575764 158691176 717482202 621251991 370753467 153854429 359826193 841328793 657355652 755582821 91775759 673797110 264142365 957597127 32068141 600775567 197394080 271392135 540542012 533478211 812016156 774561137 988806045 895702622 206563007 423262915 578152456 54192912 821915284 919189778 863862152 111725800 278152026 322837985 395042547 108710027 523769912 531372171 683763642 194214519 289171706 441472349 39653783 367245442 950650164 784662741 652373518 605632211 64948946 968354738 62002563 226904980 577366550 867909566 196695788 449413597 80513858 867732509 356205283 669719532 240264538 396346926 583836943 107285941 235934839 33230023 929850937 607217421 511339343 515119473 113007419 688446698 308647582 741376845 80335809 923541038 960472549 252751651 641388997 494490331 347698027 486393536 453230499 860839705 436276282 423140489 528115591 434010004 991207049 425073004 699298535 378239024 926995934 227939176 233089451 217011546 302187477 779290220 594798997 467160054 977436935 610849021 403480286 125361375 671365560 326508932 205113803 883387118 760568791 701780952 710303369 84438863 25541240 453390621 51476679 847938598 639878860 322267011 115361157 15486473 345634983 267359878 413851425 9113761 795469313 392744917 1051427 807780044 255261881 480340297 556784659 273723097 389394587 447478320 604693398 33285353 464409891 88266740 556523470 588734689 825887092 31614371 640789605 771625419 305582800 445733615 217228384 498947446 686558577 521820591 825771875 557971515 706905173 311222652 806733352 620362239 159475714 627951146 898253129 289775671 751866474 192709049 918110878 681862651 835282278 283343351 93375321 909929690 684097729 72127590 766193187 585831474 74713663 492877302 434803473 770978714 239931939 567017674 644190800 971457303 93319507 913507967 474286501 659083140 540798106 317115765 791665955 430862257 185774642 55342121 203941117 59521250 790096358 917890167 558580444 674788220 495873885 768296787 899551564 77882998 894030047 638555079 379228797 734535451 514030156 241839902 835151479 962353895 298297001 245694629 353880796 980078091 363595953 358760462 45209526 986313075 577117234 182158082 935063246 258330650 805639520 581176964 489824484 670938931 544417504 462032060 18912516 172158139 997170673 40852601 34219596 376672349 898943811 176607163 338485681 779582578 691573121 248610914 679907072 304930592 340530386 364453017 258541151 971792147 862022244 984500085 993172800 280598234 505376498 717563420 618296853 977856780 130088041 969143421 629172245 936371865 318978747 107360739 409504912 825176651 805003836 402201239 116623278 933446944 939509212 531594285 625653991 363587794 244027888 343311843 934487142 625764508 993426062 724158208 965522533 120404637 652288954 686338982 236953981 418978136 357039140 188734473 292095022 288531089 119299870 234035318 232975198 851497014 886627181 851687464 647300352 187318004 236299297 392133178 663032249 620002495 96484169 350466566 101421414 559328739 711980589 30974720 593873692 649093987 257262606 49285925 935778137 550365386 378709993 342221066 281360079 230815651 87990850 369731001 1638021 465937755 768019302 182910858 616090051 33619799 924897817 206755160 429032545 813866651 218834767 929419621 859087541 203029587 458570946 292010780 63982233 344539174 340434394 678354181 383901506 994842284 683797823 132927544 892570768 633296501 469318782 522152451 448059502 74525129 56747600 69334764 627819717 487409704 312155669 801048349 293461970 996358171 280463987 74944979 234797815 727831930 688508554 996626017 832639057 605422705 423702820 168652272 890218619 345369187 528430898 312069385 780984153 399564991 660261563 89409214 545572375 436704485 874467878 446370911 781235457 2296389 852253583 465685107 778890203 329997296 720411452 254610728 109063550 736474771 134531412 814163093 493261112 862495400 661741722 788598295 979538661 316270909 282498463 794721785 916446039 710007697 602218212 749356261 576817079 474752520 489089999 892488283 75506929 534511588 959027278 375316813 472118625 65507952 398048994 403255541 772165466 530860660 515524299 558723756 544250124 501706913 783081495 220252933 995186761 842855395 254438045 660986310 391191540 579644956 63844077 463045560 652517923 755928336 404047793 626491890 186366929 577878614 99958976 512941484 240171217 360021363 328582184 741335676 263216986 694473674 678926790 921490387 688591308 35208019 976129736 228849502 484271441 767281106 591613703 821270181 912633984 468158121 23908185 840337948 409737780 677445063 709670054 948822596 736040368 761799136 461713344 812020783 835400041 510704307 69596394 402382435 907908490 690820995 105121322 471545104 662360961 131209705 930934207 306559888 962451266 677517426 988469836 166963019 231564084 962056496 817792167 420135119 771389510 598425720 132803974 550799024 473971137 589375421 103703029 114083485 154698219 376375429 222784949 830171679 92134536 971130012 425339303 472449053 997171172 619109690 241028653 730020552 647065177 645556373 450353173 852454956 760908099 354280992 417052259 945829555 655472803 889191231 992698163 778890548 748614069 94192430 864049859 774159614 367170645 419305008 930066066 377186811 198603927 358776641 521017601 261244604 282172113 776256965 323626317 267151166 596692900 925354548 375266141 143162448 672488841 637190004 546561795 86367753 937212457 209675650 74748397 192853007 905371540 76862660 308624713 789667223 607378371 258960647 628983096 22963389 272554405 2123184 576957899 668260334 152800588 346482899 94893110 586942740 433715151 208006192 2473238 212681313 879020174 815357568 188316599 211990672 264355707 330371451 644790207 154229755 746303958 203266168 993344710 122351257 192207623 755495529 601323312 593899990 361724605 807498006 554495173 948439986 72178740 432385670 985436359 345441443 404584386 752914125 864387889 520363389 467322370 199478663 540932683 140731858 55206899 571371420 809813924 901073429 82482736 701622270 51660881 295184258 877943345 558759420 157594637 519839901 590609489 895499803 397055157 368622811 133401467 466490696 190966719 936510899 887770644 911692137 726519914 396127383 939537139 590280635 707536044 76743681 167845287 313040239 943922669 889941367 167385996 981419014 272186018 983568180 159157717 137993362 69710388 505873229 880458946 578732981 880372505 563366988 11368259 972956507 837994872 811659391 788443010 122826544 266445219 933955117 508890038 938903034 876731954 640862340 562024852 991853821 878286182 842513712 550850190 489929051 809790756 323518731 356823258 766290602 427682416 830551881 804087508 761556130 52156701 727461872 803501555 321294578 910588991 899490647 99612654 368290539 839654598 248997591 91704346 150722165 4551846 4874358 929692655 94972329 399134073 210233406 101576784 733459104 567404067 477655981 898165680 63043756 196023614 710923559 814464824 212164633 884404976 132197302 716142946 954708539 920449339 386624632 633356260 325049180 413617582 515955081 803131890 478822493 245603822 923993350 929357904 902391792 956097532 921953002 831230085 279361281 734144683 649239428 959047750 147080038 6796284 735319385 695497769 593917813 853823916 273881568 703872892 997953482 469230874 925734869 983712707 439536950 689192485 150603908 517221010 750838376 965970286 657812255 794157131 657508501 414207505 279080726 265691633 532119413 421547788 361838981 833232686 259627324 740926773 359999829 446141758 879273042 765747635 836206516 657669355 177160869 111406625 787050428 961205882 368598301 607034431 514958710 144460075 304958476 277262214 442653635 881683774 921260310 380652495 443696915 940768733 479850232 331892890 873070094 77814496 585087582 312356390 804340092 730224570 468659252 690902913 896867904 360072572 707115517 457233629 781467916 169569575 693274251 530363676 65032977 615135904 242251037 834744191 185878198 330414907 892150139 493740545 623133513 348033759 603977866 233363397 547284689 504317349 122020228 523067129 740526303 793112319 18613628 801355775 537138574 672888062 969400914 623584234 879381557 97084118 343179677 915416524 781585815 492730518 553645973 609465086 711332935 826220551 873819559 335647243 118838869 825071543 828108188 42593384 976069955 507117983 631350788 204805420 499405717 546579951 859599730 800191409 279887971 781304025 467790634 251679590 518721652 699288688 87980536 368082233 666302512 998405920 479898910 948500206 606310482 630910828 967852270 188510202 631814570 2034463 199712366 86584159 428924822 473331241 531858169 809066541 593464560 196112790 361871195 676384511 574248958 228524919 742999958 907360288 228937469 513875613 140751930 139538766 936926292 931885193 183463920 519819594 875208508 735824686 253743540 35682152 221694575 700879771 945734373 574159215 279448452 225771813 373896157 218865744 915381248 350837614 500165736 945995119 726306347 100210960 315882889 114888355 374528643 318378151 618501360 257635312 837653053 421513595 559887820 301135089 526017187 495142353 211138645 88246982 222291055 761754513 73719378 453030877 46561450 774125766 820185435 147612243 902384981 57329892 6499185 4282797 493666733 414327974 731839773 825365189 872834497 121240443 487503654 698166835 183886203 175924256 510040990 802373979 924623720 984261205 929945932 853693395 748933634 297225281 141705830 687497685 242521389 340395381 568027049 302964167 933100736 35341737 950591965 642334930 792367614 483516330 573783432 325230764 658750348 408933075 479968105 755920805 303208933 778404424 899434497 695692801 729449459 48401571 368312446 634583110 968590479 563401531 144182000 598710788 792990046 474521316 788470854 89089794 705807159 377953692 77218363 261439777 671444207 581296216 170053483 258920916 21806970 325912116 18920040 251344839 433440432 536407333 529014348 935392239 901453486 878298292 168023850 724614564 178562752 706672739 427483212 745441111 211427951 467173253 190542335 243189781 895311359 216753779 357058225 975823092 651171418 912828368 65342428 820836195 167609977 338952446 411187681 601244436 706887699 674920615 314503668 262951166 945075202 497770116 135082498 304309428 7213043 171893541 341468725 325514923 456616753 368594236 18078050 80651821 423621256 175676427 690026068 803404518 695741609 92549488 895485241 525083183 857195705 861594785 997431034 475654168 690953072 523166969 9352472 178943321 437184987 620747296 208542951 531452778 377519849 294441392 48600856 221061256 636704014 236638324 59652944 988063108 26242579 533186015 497965625 798183640 5984039 682267428 687797285 639496520 830467401 321590779 117009470 90677106 601432460 946463511 328947917 367834699 293928006 76021914 168523021 269394114 748722564 298541309 840242221 230632662 317213423 322753099 678890232 322192072 292177695 611114609 583991841 381229941 104312952 72406460 552861611 787364346 632058232 888423830 460884843 137583518 792752457 54023518 818067879 793750203 174373837 340744768 50571883 248949522 332266794 604365738 650107124 692647158 27369953 436924251 835778989 828978250 955527436 203840539 902056316 761656289 941566837 826642282 693679336 366987688 228043721 777235528 246123018 36421978 189389902 372168169 626512816 693893893 132268401 91883638 332122349 71839396 907359338 942568614 277308668 352669866 291888943 163304455 806093450 169696923 101439753 661815702 311967542 493290250 286832557 59824144 338327643 397686787 9994048 313566680 40177202 135405254 671890281 630085730 396827621 561394468 971519439 308467907 291077915 724325158 362424730 345255734 212897956 903818948 693048766 197639838 414429541 562907361 548263038 905442728 548849003 333643249 850449838 470029394 289498111 858318107 223486125 357275450 489217206 980316014 357509377 193215760 180479746 514049098 630807141 57001730 109862831 944716297 606853720 159008294 150375102 218304837 77070738 440158645 815770977 286427944 699645856 532204251 149490904 946103479 664395121 610028873 148657583 372847690 944113591 749714016 356590190 539242921 572699030 25266677 884172349 156700085 481112059 672718498 33376387 909604113 43564162 429087494 837475521 572440836 392531285 995715388 511417989 471830398 408624639 501786477 100871836 575528746 977940919 240983627 14313294 200278041 612593134 816439080 271929854 905346794 961716800 26578169 35483476 574579202 31572725 251727956 502479775 908924792 583900637 614562714 567225522 731804045 88666838 99687433 83843034 713235004 96666212 145969322 793698279 63601528 184477480 495424103 298384053 289984504 762946724 155019434 436311058 975738950 451766901 462320162 88527174 72102154 945381964 457771298 449592409 461874150 837651189 508737300 634800388 837817643 960894863 434182908 517962290 496414406 900801300 883493159 22790402 534034550 306832972 396884271 294486648 561959738 680331341 884149159 96317214 593526542 216391495 71680688 288223530 641871204 143968246 577243410 695691881 482326051 361470846 881892412 971577034 401282026 536609745 305541471 454073089 150955330 841485640 390561315 829578483 86299444 290079421 533646616 823437776 150934662 423195668 664140214 810672597 612032714 343818333 645189026 253871951 950512733 745095276 620577001 633479351 102509294 860127466 468774892 637097622 975252677 175889176 828852535 4463092 746839652 948211131 733465828 810087788 521895767 563355029 98522299 578267975 382713956 218129631 7089695 577867744 877171697 505409583 981020141 886118519 396282486 744346988 822783153 930805969 972420613 789613966 849644845 373015733 373410226 350362063 870000911 138142806 302445828 190274731 747956552 447900739 342993076 168818889 378874149 126542420 800999768 227682335 222558319 395543166 30465460 507743886 696206945 412089544 280862704 723700460 921051183 140472902 251243847 607116107 11760896 646961159 880406399 987519843 272106628 710802685 524105573 916263998 337965920 663202167 572541998 758892500 345298375 586403774 324326588 49566936 57244325 965723489 651126228 511755789 463966952 11771845 494792840 528033552 585564761 963831827 700416257 797615605 836524451 324696268 951697148 996100980 976752130 966895329 183104987 461925421 795639360 516752516 379456720 284790346 539082731 452326062 637425174 86846953 883101663 426970203 128094440 3799001 930036572 906356290 749712292 521186858 944415557 196328836 608000708 758130496 586220499 896567927 721543093 87623785 170240649 372692064 31883622 50995339 80470819 942622832 647761494 642182401 219133668 626776182 172664587 223309670 597156316 581858771 382216101 987930579 467989009 536602534 401808324 126352124 99567599 559657786 521881024 639084119 867264765 744820459 46937870 655734877 649342592 913839822 337467401 52729667 68360132 983917612 632660910 789707255 536143937 869694982 111815203 266001232 619256887 191974094 932827375 547990465 112177445 15781794 228752382 167479876 204585001 694890382 415025177 909962945 271989457 207291135 177899151 569401545 548982159 614274765 280550689 698286938 513139969 622192166 954682138 588603755 762103031 509697019 62902179 444024169 498545149 97762756 455217012 881434731 898012127 803076040 382991234 114745288 237113821 667633122 755918973 578061826 7668890 947953690 8559927 741614548 506519223 878908455 645151478 206290936 90540271 761436985 399019655 669028888 199875008 480311041 477991784 603414714 530371477 441374384 618984853 370842018 402950208 366493560 405750595 455899407 929830483 646276767 154307716 296801865 578539392 886895376 846314729 737015967 710924947 661732102 379849945 37465228 925290439 692137191 662227865 234170105 283757037 507608219 975227454 234330935 145860973 252914111 369179073 679142839 256371591 841934999 87412182 341414867 634924183 59561840 1648719 742513160 93459772 749381965 770664389 525421226 989400791 745674724 208953279 230813138 984309732 800118997 418420844 461885807 528423817 489913409 284536881 295339482 966221884 314814572 441112298 240071484 62179500 516554099 759787597 226545507 535553178 541985566 37243419 944764304 835596620 215853214 886404434 939100517 346557919 348334860 359561960 714781147 328870536 677717055 477222050 909430743 932988357 323343753 416633658 78886121 476861424 165818597 561407331 746233819 416509016 677090343 987018880 361503884 685878019 903862258 992207116 672328785 913453410 781052052 888740639 309360750 208340466 134405757 978590805 856089722 481578782 457443637 649709590 376656798 463480222 569820156 195418641 426913755 342867023 370240472 56313130 952922820 785148909 560044303 968471526 174582973 340932064 441939455 318477694 993435491 679494785 898849848 825511457 512189878 618766478 490688876 667402971 440726270 912153635 124131105 596059938 287211936 970553662 349477836 15662683 829389355 860000882 98642325 54032599 947972103 372087947 685256974 813256691 920912183 426454350 468263130 223185792 722760939 774186511 848534058 197482694 777660743 102678473 77798160 382455571 910302686 92789089 740744990 287841856 465943348 26739444 180766278 429387714 751087615 260548708 256978645 724832621 936538482 476790254 703813322 479623207 543170890 488478847 835550326 833026227 147804745 225741339 292049417 717179329 327850884 417497682 22180302 11598176 414009701 616921231 381134318 867807095 775140662 766189344 280085740 905414856 994509805 730715425 629767061 542908875 351229609 672002658 891649668 728813781 80898677 382716134 891699577 565099791 990365327 296902515 215671678 81384668 214278097 419523491 32219726 920367137 390515529 423054050 438808595 75963543 346743304 885714701 383866500 905584229 368754029 555168072 17922762 975445889 487997812 939231893 330864821 35721794 373429275 318163044 282111447 279878116 518585213 819417625 932671221 359135503 660001159 841016877 869996896 961756829 355902790 348486526 513626520 836342414 862905021 867423116 928811800 754342947 369751856 687110850 27399754 972963247 15524075 846045895 773395786 654036382 556114785 312999661 161004927 332058573 254104324 358261530 314637565 123421377 303670197 820796657 109073945 706199681 646979728 487425952 238790372 643486299 590287801 258507285 293451713 351183870 45823709 122794719 602775850 874496436 669583247 242804678 330445933 834852467 927288997 305500742 433544642 903898005 770824744 556168301 607469609 649480170 807507671 341523218 32505655 104459600 149690594 624727275 529540083 108018634 737691940 851658257 455911928 973760923 619213083 799432365 814915332 80666462 768326044 953802882 861191885 914936212 355936739 827700136 790253056 34331922 194321719 150013127 112758849 465926942 849189811 4079826 615212293 111248101 912634173 664191858 969061233 952502743 512832586 537022483 546142890 282945466 956344947 155680038 741025076 548752745 125050267 495933659 51369671 719541476 216319539 123419620 236010260 253607904 507182350 789265023 998462085 943701813 116858066 593704146 978591473 475493498 665091403 739639368 140930458 247874321 315875442 332676429 317309418 936412658 868654704 133343208 452536686 660289079 579767721 572172379 388021999 479789083 650991474 858977768 425671753 470284932 339873615 53010816 643534628 877453673 203582204 560777361 940071589 504853689 561223475 932280053 142854867 499055821 952181777 590735954 723156310 826842239 203231023 8404710 327064109 918498839 313956120 569756515 416676496 585661533 561558600 707093845 233603304 311887564 98988468 155251320 685643384 651765748 512029765 446495885 213121520 920449873 568301420 606326812 833903801 90189232 168248219 140033982 898755628 907597540 74436337 179667126 428009292 456906692 975952155 740552010 885574785 366778024 801005332 965070669 96036277 44932633 421922114 561258568 782651102 597876402 235485562 556336575 685289705 769772369 316810022 6972965 576020847 94589672 849148646 522865941 690247270 466441848 723861508 287561026 880121765 782758555 124509337 890545757 993453133 350324901 815397438 413995905 460520645 518563197 333806852 928962659 966576433 674864172 509939964 892618064 952863694 500109170 936534854 240156851 993705911 324216372 337240311 136649799 134302763 691588025 21838331 430819181 623208853 582872995 126284543 301490379 327055829 48590210 608479094 605326747 449157382 503007665 392474085 717952285 920017579 177116845 980648974 159804659 623090280 156422829 316915542 519014363 265870761 968258058 139697736 848164299 59586982 153233029 47255411 207745140 419587016 355716833 730065626 74519727 348117590 40428775 69974408 980583252 199148755 141710894 755843085 744452957 112641888 294455738 294647293 345551519 664997783 943655015 903740431 81650699 94469537 512874094 704065000 623653672 602640591 433846981 779329454 655003794 229260177 65426348 14903746 83339 509387079 883771730 375579800 616489819 638534761 529193518 356846959 619733908 177329938 203154176 174337428 360520466 416640886 676429748 931370494 424591932 166597974 451188637 374309545 205080217 219915902 599990566 180838019 208229527 607840467 176306210 779088437 551300941 99218202 994658196 865715837 293260718 202079492 878828091 216652928 243400841 807643519 907753294 189684853 826340330 364518420 152498567 783030088 354226777 876700847 558769794 68312031 137906504 113803538 49804587 715128146 665745184 623998739 688931800 355100119 108576252 531399491 279768374 184668083 757705975 819398014 802821126 99471645 426112057 194044964 103923459 385028250 925154432 952581614 583966326 364583585 780528100 731839146 132783411 646611022 40127476 594866628 89365032 818787081 941736083 17317863 342438321 186262419 193445972 511751828 189076845 879555679 570112254 761088510 388421823 384968192 73232016 985057421 848791698 720900733 873673983 812333697 354287008 794763427 115366206 864982080 836468699 869410885 615454195 19983729 747103485 980422924 501606856 985574707 611489129 633647854 326424329 367298681 178169451 565511817 817896263 715437404 100606106 452793528 295364787 151898572 991201037 525538048 653157966 461540443 295319864 490877151 544034195 507309518 283845605 405407757 303864066 461724905 103109650 853886236 482417813 982837428 246537756 161768432 12699603 411851423 179975155 363013456 823684185 8507558 439828976 286452808 608277379 177515289 812802753 468264156 935929737 373973115 146342129 53923537 401570079 27572550 751430507 111079743 340618906 12845356 169707904 814520652 986690289 422152402 307712442 95369637 873148412 367893600 491139573 875966558 497364705 63414278 602874389 758436784 523001044 682856787 741829965 1580516 791044629 216452121 305555860 169443752 326107531 638660304 366335789 603989535 592467028 179316663 934037861 554630839 122940405 298093322 474445255 929191021 141344064 65056131 800283982 442381244 159273605 943533132 99824579 713044961 390888838 738291986 991062093 135384901 584596121 236418979 368061406 161263393 908038828 321032397 328480610 147325193 287341040 601392753 539751180 406472913 717969977 931589721 870696516 350594252 564147770 421750341 668631307 504901382 818650429 695647470 875160288 704496441 856792382 417286581 245109595 159616404 596470757 157710801 48818546 519380378 297814416 453611813 612702493 428276791 910675386 844713104 279832429 738465267 211671692 682617871 441523170 707970292 532824400 758352242 933303903 777423844 457647893 936498430 424991631 778594426 809535629 905864544 10896922 465050290 956952641 415370285 278352264 840478894 770061614 700436484 496244013 741633463 863057277 386305729 232036604 236597536 670926071 409170923 497598032 384001712 924504778 62456050 365932209 541105748 556229773 932894514 844664765 124831128 424733069 747226908 149459001 222063547 51011903 58110114 493312766 556374465 453759651 313819997 277959925 630966073 793279022 63382477 78664552 854449877 65397607 332396457 318077540 285868250 142932908 95608551 567800929 719622638 949624888 860111549 723157173 732961295 6995056 559274561 463057056 180956005 184020465 26816073 935498721 430472840 107153188 953874651 229700563 966621386 176952434 528401868 858030519 998968458 719419476 750829253 216114396 439480077 831001205 726017733 406999625 729494824 460503195 735117298 891557928 641835186 779821552 668797979 619574126 913851154 596093073 76245037 151593453 15010463 372817103 618987435 817868018 447541648 329229799 669252852 72469856 548949205 56047887 89252364 866904794 37807271 989592863 379441067 769597504 892744659 579949882 587269363 364688312 745451392 715116006 434617922 826169720 620922863 193982794 327847094 432686934 827278933 413199799 883806688 942122307 58746013 503409540 763563409 799129405 149824656 883914500 802169214 173428473 984797186 751250413 964317864 707034823 12247131 28651006 732982105 801644936 531945853 72711377 704033525 903215666 322135379 515417495 389965548 652926922 980485319 165452193 608613678 222870993 270494704 770463030 706789157 206394051 793683081 849976219 478524370 823910058 961501355 944006632 696064290 351715369 927623441 971931648 978230585 147786392 839382427 530790578 284235942 718062914 66318546 147130294 741469928 7081875 371496553 917866202 255573776 162578859 354857590 449954190 608130050 372793758 456795794 796914709 268428824 353595360 498048555 90647870 380079072 856313612 685479176 376341494 12891418 599256036 891202690 500271075 816520911 76217399 724116266 519622096 383068269 417687697 487087909 887694948 661036715 620020366 976756077 114800122 962240006 502549883 487758713 624085058 995167869 97209654 588922551 277886868 228664917 128083975 96167525 244117082 546179330 607994508 695952644 381658039 110385758 788933253 483220620 454149896 825878315 532291926 100189223 906470863 267281893 112527114 681289093 558082145 86708451 342176613 158990628 282190603 535086735 141311390 13116585 163184035 443924451 527797837 314990386 326187504 483263849 34372720 79570596 595238037 556021476 494106287 590068410 222882652 12153438 667173338 326486205 758453847 500067507 488492124 856078474 241988571 869581194 147203256 859180471 309978497 618234239 851775357 841688620 529314583 206695869 563625526 622318697 574320570 565327970 553770297 537024307 99533675 447281946 275343984 818097864 72733134 130259118 917883936 922331677 353145385 31521608 252542830 687267419 396617529 15015822 469594260 622017164 501979917 937766459 602577909 123551579 385306760 866306085 306299001 93451064 449090470 609781721 316832808 426707913 615537919 235738850 975191728 401725293 627647712 797763557 631712326 246091056 24845088 438925351 997045541 860971607 307586249 680094371 781080533 40351024 716239051 224168131 381008466 400358334 726758755 460888602 423157677 765396852 898069736 647318737 842106882 355853943 307399601 975463730 966570315 649256100 678395505 606362278 93114302 582153046 802974051 142479290 684387355 871426165 192309906 150604151 40604318 350963321 657593689 105648009 342068646 115407143 740863415 176489526 648564531 145186002 362313780 783018704 759358983 456059395 980914739 244438799 812331231 654492341 449579906 710624417 24538501 95023801 913728673 388394819 224895098 657252070 164633890 828316963 732217632 856610001 285574460 258422353 54931518 274586846 768777540 584362155 79622008 855526110 151681356 797294768 791442986 269065258 68147955 190877107 207829549 429898673 580573676 765674155 930507899 860170320 952928010 704743825 445903853 360094547 978251865 262408265 165361691 818086661 129612299 614933666 953015032 485178917 836583531 450525190 422056171 362643635 90347201 307178621 287021673 399023196 299298617 653301863 113511426 438047275 688720672 588475067 978467871 928679911 6013415 557432876 977659993 804737963 507914128 292901488 191754709 713619119 507867937 333270255 999978656 165907498 527929312 837021555 887824288 419567737 102706168 279499046 254924676 899171984 772328269 908690768 300022804 268324784 368608615 542620849 688601695 846656660 800203537 600940903 786094995 895191198 488825063 428035465 616309005 827108165 640409838 808863757 599190793 159174519 474312996 920471632 663654379 918060384 934184131 420038382 92187831 9494803 93211408 268511854 268061825 839958402 897845894 468214088 648045395 43082207 884209887 941228233 618542971 58792390 772258258 9899030 529791095 914516224 601187997 687621990 742491862 583957097 962727735 548491151 850258418 941870 362782299 51377454 891377584 161996741 203158275 143222444 235707897 933936987 61943440 119783275 167091945 904774558 892065048 81177161 924745691 3310044 817158371 104012501 397828951 334331629 736941734 269224064 535922518 354658461 781468171 996661908 63692141 798969318 159963005 720529702 189256131 475499879 626387420 19148606 912040196 696490274 180737664 664649202 512651143 710204037 582576498 598453264 194934772 356891623 546924964 703360846 392746440 99237858 39596594 587278006 284429349 789076065 341659488 329339186 390759303 366953492 789681082 323121617 867982007 441636798 152673781 585284203 190252954 11907604 795503340 472500575 826715736 701608693 152699337 45653223 869392535 537367960 240411904 442521715 596168146 842627620 384696916 353525873 44505609 753909903 252826458 46005087 159044629 550683627 744388732 825698605 509145349 984625668 185485736 904712459 967941344 887887877 638021812 34154293 935055958 18900715 553963026 940674631 211343863 144174768 908377056 393906469 357163299 847442897 976967735 717243400 107900182 872120620 876206435 972438112 914335394 130405735 623021603 475905911 871516621 164603751 885788828 745161137 315464234 420205187 939393546 235495912 563139474 964914006 278543735 866298276 958650327 289034152 898940034 86146852 110332058 83356072 530724523 780867330 61246640 994106171 717106880 365738597 357844102 454510386 956116078 620836456 470838757 881862446 70918282 459493190 401034388 619963643 275678408 899365617 464848413 71710413 984154747 662221283 423895140 779322813 44502350 757061739 294976088 190302540 278220828 539655380 786576850 318382433 495124876 533616370 533669982 839160410 249299916 238195479 148416959 948527386 733594986 808422418 658579490 140998990 473469052 869425623 657906835 794215442 777910309 467640236 182862991 47814171 313342457 472290873 649238441 59420511 772787855 379223636 623085500 557859126 434830800 708712184 692749690 408748653 441184486 214309976 260151769 830455976 296655571 418835910 502543601 238004376 374623806 790845640 755006711 267510581 9585494 111351487 646408954 744447175 732145702 328157815 755753534 975479236 373971889 902745339 606764261 336540281 562919161 970527556 338570201 781513324 703623912 666905475 834573139 582094084 244347050 334104094 373992135 695856412 852027168 893433290 195060678 65089190 825870978 418094950 200202474 488821745 980024874 100708507 665155099 434164240 219656659 749369904 657887808 747903079 101406162 18789139 325978543 49994022 905499150 541143870 672993247 346886618 626792125 408493682 973625961 92874418 280584363 640649387 753079504 161625632 281080286 595090994 939213291 18087589 878353961 32979862 318627492 86593801 331838329 842360620 943243227 541551575 302646661 995540027 502514939 53122866 488369203 60077687 234834940 208774061 593757140 824585104 581040043 764335388 321070843 460099119 913209878 201182041 56323296 890786811 158464916 203632906 549719278 353963445 686025289 165561146 43075359 918388422 956571212 108911988 219371210 333261300 292060766 469291484 669752351 382447581 748923662 61702171 745302572 387767617 363909734 77665398 762869830 153897354 759276664 882946694 303868518 926132717 585489389 407286364 972126305 192317747 976742722 541942736 775584151 139394200 554641106 510106975 47868666 17300141 765506074 605317750 211924563 800208633 614837084 822988729 598779783 502676454 302979514 419879782 144246134 593121217 768993495 677694614 748536142 235833070 108549973 448372280 898037792 697166702 606893779 406642403 966040034 578187387 855865239 924400054 936322278 933022084 156074177 866434128 789948125 941104638 761310314 384098132 887459033 216204112 799327840 108506046 581825134 353555991 673770754 170225222 707553962 534442369 976525365 35615408 387002592 878276881 514076759 948102079 340180308 350560565 428215120 864162910 674762487 706295873 922578592 321391678 82337185 268036348 949469743 864662749 67687764 553953889 331603638 307741865 372251664 435413442 376725949 403084896 962174719 953579259 808064840 153324282 788627387 841350845 686358261 870552559 885985648 216552562 438206248 486392569 718884479 116419900 611174331 547453518 910994341 597262185 555808787 233776180 23601856 713972467 769126667 983996007 78370065 456428540 784814121 500016928 316680311 818188723 142217865 135827948 82182774 579075087 893374454 91232562 920267723 897245409 324692186 903779670 229267144 503992817 650738317 474476953 191447147 698305256 707817696 444545498 763731869 471832165 132074939 751768810 382980078 696201388 75768798 459244281 253180623 986312357 86015873 908428759 604641131 18608569 629035856 406110510 915453123 782753786 146947614 3433299 696094443 486599526 884909723 510758449 750284019 787330243 70560343 469061512 171656262 916296618 735742129 25382717 834200881 604963029 838860219 197099379 622678533 149401962 161523721 497966931 19129064 707944697 465596139 852327650 337181003 962431800 956513821 583927851 136418128 522293759 685126589 375215073 668653978 935757646 344736191 28098369 735853110 962396605 639110139 501650 665512368 654746392 293010658 117784782 299842675 140896845 267615310 363785918 176670920 586870400 784363668 258882779 833563294 384322182 644798239 328537981 141554698 401576307 465084197 626619010 19938163 893615494 957340481 638154130 784149865 618412322 829353529 612873229 589408775 899043532 818419265 129042224 210618555 396825199 149511339 110162949 375081490 597145955 737964079 883258893 17301924 311815090 311618184 73967255 728282398 54065777 15525231 713283570 191442176 903900198 877661664 971265458 358192425 813739328 136644342 497777620 28752289 976074727 458459495 326756092 526064282 458606153 489669110 571732108 156241126 48572487 794417694 483881873 234804298 237240770 715146059 168075120 380222010 486917953 513808141 267944706 567510705 25040205 720449375 835468575 513442915 500656887 150397927 360949886 596328828 818402878 616644416 793776790 883998428 426228171 210553231 22242645 864138126 884818811 363732400 555446685 267854419 44093232 23055036 431862757 163742153 971910536 665844660 31496934 321509710 220887025 144560670 700846986 713492423 625723398 156428101 234403607 740929399 82537488 852817222 965306054 225222893 299872796 229168528 913073725 366328519 580825598 409615118 116469003 254929603 149886231 22671778 835719624 842273206 7063553 427859464 727122658 228056601 318871186 401825311 748905005 652419324 277547387 301481406 286091176 589215153 400675722 179086150 890140064 754720761 840823757 58136408 152617834 934648748 246831966 517947421 181169367 146372165 816757485 474483929 501980172 791581960 286897226 665874865 287459470 467216008 847175011 453001809 391647076 472546533 836359007 478706179 717263907 914892655 432746539 367323328 497355214 757259546 340151840 493660782 416694439 587491449 916285743 746146296 658919227 128730515 430489815 723864592 879571484 518275641 760672010 748705728 319024504 835544510 438007494 85305450 136082341 102738209 457922860 199288346 193027943 641992106 239642488 298298279 42447611 119174537 557919912 703375458 667707762 261807908 642836112 892734876 586415873 425195680 537204395 539676494 849335940 247830592 545123735 734289351 228314513 849578080 283598675 651420776 179591500 178241910 929964076 875819774 66294840 34549989 677684642 349193268 701362023 892718753 709207884 915765472 479723474 497401635 441585777 366488154 381978217 529963381 764892073 979712876 881363590 838958084 175209191 280591051 536482768 302385784 718909124 653626351 230116233 298341333 721231555 379335082 725525100 630719928 316809293 184249331 919948732 762387062 18436093 626079075 747108661 783163863 243213063 50788657 292124151 866887157 738526596 19100944 931443955 16029715 925191255 889813122 658295502 594298142 564402640 267688828 24485841 875168079 465804400 767659690 746153058 322817033 282476534 407566105 676775955 39618836 629633001 829852807 633354733 824245633 704671421 974329305 301752993 572968545 330353345 678901214 174861122 977239058 23892349 526702521 76605416 160630173 209932216 17987505 928287328 146464960 918992632 665048029 446247126 345755935 328416623 245388876 115215172 922651548 639859255 390722567 9561833 741863688 22693525 221327861 244248497 303621920 180827907 993306706 457894417 202764441 753754162 228937293 325106239 646839488 906974485 486013263 894585713 998816003 437808201 187094446 276353255 93224834 24421182 800550196 246323880 80731179 408761792 392549821 310695067 451186628 936311188 381794450 166670079 88185258 914876744 7787855 535739903 518460077 270377877 318927548 696322542 566224699 73611902 965561624 203883387 610066926 482372874 187554294 498157819 477874818 227499941 753535058 384844792 546658116 639104761 695895239 988636896 671318371 719249125 480779785 401153465 642072042 315752417 12144618 537308119 12455399 476185088 911676354 601187349 901833845 57585068 2655857 377963695 656589664 581829973 723532698 870363870 360381923 24066500 275177589 399174729 449063765 633458927 865946410 444771155 749018276 273365404 826908682 267951675 929241256 719006220 428708517 827598507 200606274 536877794 94205511 751132666 59062952 514783308 115863822 35650188 709913944 427558986 825867458 328740383 494552084 528386955 842624271 347308217 792649592 221009250 225599933 493372415 177746670 130610765 908186058 856725557 557757313 618507371 956322232 971111385 87777592 180356471 6850314 644576296 618665268 883954848 857128312 47672618 818693140 926548417 210698361 593857517 101721609 257922934 876512835 995345496 656901836 699242255 976905347 889934073 623544037 554587304 37100023 313690646 114755692 954488311 129194650 454754526 925692388 188596482 189278700 244405045 40627558 187785464 945660475 126961199 394376310 551620967 447506670 366839300 624396462 109328455 69922579 262978277 879146696 40458133 763891201 341189355 292787114 110921362 642762881 567761622 984633102 20312055 598951728 56193629 398072476 929644908 579545099 234294138 106759119 523865187 736303589 672784152 682857788 434186188 387446491 594056938 101388948 309660492 699121372 691970247 919612152 449980466 874356748 562036966 410754604 375915637 686762294 445101670 753634588 933486956 949202378 154546765 466147569 461840516 260470190 755574459 376324173 987489361 500333415 938737227 414788207 635316092 174708317 432612112 219541717 323366590 779276064 37636351 954379310 578202372 691360444 316072874 285332648 465779046 654774128 135448308 186746581 45437595 881478371 546419750 489598214 679964943 234252540 181403425 549194620 352000576 965704830 194108742 333021626 179521039 124398000 118201792 864899673 418875239 47450377 16296441 44828498 51496785 892926002 815746141 521617900 890536059 190456875 630395761 326011659 893577447 45013976 369251005 651377761 847292155 412779138 310375799 714244498 319995367 255443117 569434103 893929180 720153578 136584655 839535514 527555984 125917864 727426063 226997223 501425291 769460898 507462062 280230674 147915652 471100867 536941114 226712237 887088226 123737456 100849901 605086982 556872942 365851475 326082700 341803841 562732073 245742384 276300498 275603031 799654464 294925434 438227535 501702236 472121520 466265459 231669452 745357653 953283069 382957516 191611158 727502255 804207633 901265218 955288106 179528395 438219825 108949545 104931756 678682497 670858786 298217634 335021858 205790405 521729427 343550887 579475140 860473129 510475127 571632367 597158913 777389153 745665749 294583430 142949053 675560532 815058048 972918608 656186545 773179731 108648922 838721088 939846984 126460384 351811478 463955946 506257155 646985601 257749775 433273352 54378969 869702312 571711610 116280054 216990384 329207195 615980840 736894419 60481869 280714145 762700610 686806828 185273214 398036783 464683520 748297230 56855856 288564647 321088198 425776288 693775599 850183334 711544381 927311042 884692499 805729747 948534368 567535221 329401972 956889248 584175542 871593065 428070797 524528385 876034296 953221016 373654160 963861639 746257898 657903627 498599417 453504216 90083340 127610820 178671179 51707105 256216697 991467916 834659168 294243173 685579326 794161639 343243913 294691001 677645781 330923595 296977415 199487891 893694845 255639290 701429988 468102727 235423680 373593746 573706177 458356627 411216253 336060836 224341135 804725890 763555672 642176095 74798227 547725130 286259656 740070491 435364706 77273295 318534358 983325034 789251866 663971410 648695199 350899541 482083141 546791907 479569566 351298377 768548657 75960337 371687743 816531242 725816336 69471017 292022108 46400204 322288394 950729483 746595505 133613997 504745325 974881678 132368583 288624205 8431690 775750750 531650733 997492137 23928434 462029809 240679921 222320216 942685853 311347099 83127383 910748511 46124336 437726965 384572420 963780114 681893851 484060921 467258803 432950886 101543992 919548324 653314383 121059936 675368753 495609850 205307957 367171978 390134790 494601405 761334665 726922293 818737545 297207627 530082788 766128770 312165424 851412938 959843902 730672188 888459496 178107559 521339365 119606902 288819018 271417657 133465824 865701469 193410 959410788 201697933 717425260 276560005 951908887 545585723 348945720 662320381 138930929 16427270 74672307 625875158 559554495 450281746 482770399 849676924 839996376 592788309 240596375 400979679 107525094 123744149 485470000 397715978 617626042 931857577 40478644 880235706 24575950 122942170 903638813 569557999 762347143 829358074 324440378 471231944 561328675 471999090 749043405 854919305 895349252 78248999 389932736 32907245 278500740 474894736 374327958 999459890 295052609 542693371 120562758 240301733 439272016 815519013 823856843 300176019 147697120 796013425 107206563 505402163 883746665 553347122 744472367 562762961 929332068 268298869 280131472 808937481 485662618 663485339 132596803 513484453 128653584 522511381 935409558 539862943 466032067 112834317 571314880 770279240 956022630 314629169 977250058 743705594 998974749 894339232 794455503 927626736 768309639 508241104 647604862 993376614 811671527 37252612 785953531 668726462 219387059 72161038 32162394 183094384 241502141 481255974 94317592 381242607 450294392 487687720 840109348 650465245 662629045 482509084 648547314 529035954 217064854 276802647 835818481 726373686 885443534 777481125 622074360 633649396 341896106 472836605 768739838 38526062 648948598 446081819 757586778 537989464 898286806 272160423 95721108 27439808 973243785 316090569 840192811 977342396 748319381 430845325 344504133 963260422 440985152 996729811 682154097 449969510 186866575 187804228 557740720 948220557 199326416 354689599 170836396 437874681 147998576 162712629 65318378 683831481 717953813 748933544 518825663 396807670 375617797 861726865 455120476 971246160 706214261 650192209 787583556 749677836 857036448 483539276 25405589 108248429 658109948 230897931 498170294 883386848 120976229 765240735 141666033 798228273 222979172 95038545 358853322 660165471 391618426 686782012 207816188 883285322 82516409 43818475 848282428 379486593 964640447 258125236 41377224 116325645 374367600 308651323 130187907 488852075 856365586 303807 837301196 569684881 260784928 425221741 49749858 55583041 390431367 108201118 290352410 735405527 326609797 266213101 950903517 981672704 174174804 838581780 663419925 595216580 978517179 818370160 35226674 415176395 542693528 670842343 342700335 98530766 666761853 570699114 723120361 772491844 597290576 238450808 919837153 903820593 57104078 673507788 694077951 364008820 437030242 903556994 331439572 706382483 879113324 297749359 662298926 330537801 54558090 570063991 299800506 642335585 227958317 687985682 579171346 781830429 606633013 391124704 313868679 271367984 436361629 411304547 464260464 653380912 789266120 551706341 903588784 578588622 273898292 463996216 935695978 133854929 406166816 783995751 154419405 199379802 954406333 90673753 136405916 602744544 266566160 196653254 688704773 607971253 686655116 396946595 339846579 786174632 108156399 378563169 999291577 61884750 744399528 432018845 666405463 608556209 478940400 452795921 429125094 710340575 845684232 675442402 623516207 254221018 438314357 501481167 441510894 763903211 443990838 887822503 668768782 681978466 339278271 265107277 275813806 220011834 546970606 990474441 949186011 767439606 688606299 533364310 904811430 765529408 823699039 479029791 981911206 136865222 824321897 58929990 683938744 440198599 866875369 296347620 457518256 166283380 639888955 580437230 71843379 977551517 696069175 371619455 104080214 583381799 790477445 157745948 396176035 361262653 534373299 898406436 779856144 361493374 243421795 628660622 269824198 568205524 956815537 489509399 980576284 810986856 639879334 691165149 19160011 360541174 589811688 622199003 387907182 328167768 923973133 607613194 47346323 393508041 700185448 430162317 140552866 335505754 292451304 347761078 288047698 489677564 999801735 972832628 681862625 608089863 108853714 45713646 562465948 366914807 112714316 845525316 258933300 250004739 180493978 239364978 294491453 934821422 179373774 855040909 361848169 972262309 726968198 359057368 308973659 417666387 836793107 470038387 680614622 41136043 829553002 89989547 105885498 9058268 852906080 367172267 223810981 495541716 860435791 195872190 268329330 716989079 180953872 190580263 627629028 710196618 894450845 960338752 429224800 819177553 480446478 9874429 195950905 944244828 115561909 751863686 464786747 811963048 327317814 929948474 312980773 651754978 618556793 995049055 937256237 660644720 528273045 862530608 144003225 174476582 874414102 924145691 493946858 398475305 31968044 922340271 301347409 726460475 414611501 435476416 216345873 47987352 116196983 226343161 615219483 94313288 295342174 731692022 466153306 168410470 503600584 968492792 789974631 966346603 928720911 304726155 649177898 595110154 180893702 134018262 502156817 228907939 157196693 977533257 354273224 584100507 380339075 530382651 104469171 18092416 955231037 845543853 16909902 490907067 427233612 900615737 865430154 478492455 18447959 169501414 767740354 632995117 528093787 383877437 547482739 154271258 723741662 479378337 17533709 813038565 73537204 7711905 941146711 59098047 454308700 584778618 119216203 85579792 210112203 575906811 538498690 809580162 108615851 949349291 560158069 911286221 542233106 134986658 841485676 690903316 532027069 939935502 160858160 468613271 858813195 248014419 952763730 155507921 638431147 192766108 91996377 247150451 307316946 818999548 6751868 409671617 502107959 783195272 291637615 909966195 518413265 393477764 535184550 773910475 158684770 665370169 375142011 201601913 782097761 913606244 337260817 782719742 400432624 1558509 795116585 358308280 191121184 894747779 37177727 893681884 64013910 612403251 37414671 79495404 444507106 37804593 727223713 178435384 42194553 451957152 165818311 781836977 857193368 891380676 671345360 904047410 485578739 303677075 133190373 408456629 841250505 550624514 486434477 126963455 490184234 178583870 835437045 607858879 60734616 603653893 621341497 950755309 345193296 606006855 810107911 982925920 824124073 918657773 729844180 922490477 638423556 392491025 668385307 252394777 176000503 425686174 976105621 732392073 940916147 520347493 249494640 306489293 978116933 494047437 202584115 654035678 938988356 537295365 117177558 543327282 529668169 227152941 40138938 172745991 3336288 2536820 66001662 399244889 966997577 497731522 41554250 255630977 984058361 913767854 457066089 276900124 560341083 985327432 874837645 171978463 723644484 749760871 875858411 719501745 698797609 340949464 585660909 362108321 299407582 942233855 970810377 547888616 915134513 514060316 157068065 880248924 779160551 807300314 987636259 337524891 935772300 433191329 33668411 425073213 479682357 572927374 988230512 733345479 550446992 626597564 761738271 259364451 174436084 234413420 161459045 965432293 88250150 412676854 589194043 448374854 852987385 950009257 274188854 601920666 280109628 132167994 974136511 734819789 378693327 495736939 489627272 372499848 518958233 605131152 148630703 110235626 794480704 641849596 165170621 906608911 207869172 576179760 523566688 283030555 328728129 729749207 990934627 486673341 755560721 420837213 541419428 349112862 429142665 519147013 583336756 944761337 270722607 338995407 942703441 774425272 769343529 785621171 773139196 615069456 439011905 982184216 258473772 298019832 690695647 618124170 490358533 45582278 303453429 592339396 134504717 456723238 540107173 799534558 318627223 406484245 949591796 7819843 900502410 583402890 450149979 322602611 243507640 827768464 323702329 200003935 696932040 998047068 721438389 858333527 212721379 899579832 887612568 295028920 787303788 887143208 890278854 530978291 538093908 201728680 488118960 134327575 24907990 360809024 318314295 434819045 169442662 261118829 656850793 517213519 732478248 30178124 545315106 165881044 720794914 412735206 281246581 242279343 369184294 822494812 935109273 466657653 119490935 846189612 200314195 726665981 991203574 443809957 844410632 37732414 139945558 791811120 893030256 489888718 842962938 245241572 817883268 842926152 533176381 646089343 196295570 332704044 495141554 29687552 496607662 342583636 676910892 733490542 678808448 229318679 312160300 92815916 544583355 288701039 542445984 381438655 388584279 68768954 850554879 472206116 330912071 688370966 434476254 829314258 655718556 88488494 49894954 683540119 757058901 547965633 751591136 415363572 31251017 965380647 489474045 20531880 573346462 259882675 799602481 706203175 768100850 856295747 363315245 300358514 426288825 277062413 769138823 358226938 585053665 318207725 324405183 514340395 266202876 934785984 479327248 751045105 434584371 89812773 666684216 220540693 629233592 724371239 582428032 899764376 759084833 500113744 497272881 959887393 992120464 443069457 383505631 171354865 150426797 691523371 325423896 486113226 409857125 285246408 859830200 824898838 685628102 982705086 862548445 8686296 60373475 118637152 668284406 936812099 508164165 701047022 611707573 8990816 273249409 784676885 284588335 404469600 367919081 984731754 909977833 556251832 314788504 243033446 702927583 974257984 292799932 749958240 507528269 853581924 555316340 975373346 888152846 841810345 918848512 21816748 184817930 336229665 977290849 327550826 933850970 727775837 603006574 137359564 93513314 374465813 492771460 763342808 235557172 421011796 267557230 832840497 15977595 142337260 187237241 923555061 575486355 924069056 219006195 820274281 821849094 117562378 960252097 534332522 434350193 524982796 763162034 143044766 769758884 945703045 409344236 689943268 168506994 98203852 619895034 417763030 666859387 112770645 351984017 593852962 526314005 474976285 456774585 445815595 181801880 308217330 194675650 237625433 439897443 980182350 316333351 335509434 299251114 106178047 246896936 773098248 632828132 218097615 119813637 842444780 206286047 246649386 805902061 444641523 783603526 484356771 411666960 349131706 216485112 976490155 761442171 77300974 144836811 262399908 135390494 778050117 473482988 647714460 374447335 541624019 744606169 528016413 57119619 846946777 844801458 127531883 423226643 955600147 522815965 11177949 470915640 817529579 120906487 125079211 337136511 149507600 329913962 968697606 740430738 358982572 77245591 39220603 582478290 969032267 83847651 358183505 856122602 407244041 410118174 417922648 991911342 524293227 714320404 816353541 441165273 730647013 610718622 190578605 364090564 261718149 253775107 494468462 49775303 228871143 431297412 450265105 644097155 181979464 151128996 815096933 923160744 458275717 647471131 297906508 950026669 796704196 33197982 481150707 401999324 441924427 668948172 694451360 311563097 462591808 222445011 82277028 272593886 837766129 125600670 94000186 142029638 605699284 535059797 248374977 627394222 178868411 764896546 565816009 811448309 436522757 289078511 656278662 117489625 585416337 308916845 429441652 478775737 277045695 203451176 965919407 992364183 943225911 519392808 471208366 146895657 799114548 77475347 209681193 940332300 94778340 43013691 60645953 667213232 178136152 205150387 590330520 781859846 687847342 256459778 937205707 934807306 840931241 510002698 307657988 385822020 114539219 982470736 655163204 353350039 135815248 493551039 741095677 318736894 238761284 837147257 996605521 213027624 260738404 781644026 287484664 843784123 874974091 436156249 598868620 822804784 404385617 51358976 371510122 536352191 512984112 72992756 980144515 901877369 167803114 62210795 750482603 875582674 908617188 41581562 753095155 178507607 230137029 266052504 72726362 475878675 33812934 661331716 234174827 342541645 784697318 836465386 443425338 48780787 645656457 275774083 393049143 641340427 766351762 705688423 564524624 823233308 743183177 265796642 633807494 880037326 469986453 698860646 298839834 510863384 721336621 77591696 37244180 39688833 471752710 611760063 31304113 6562240 527084328 277686149 638584087 540922580 121252723 632826245 470768736 409030984 315249842 428203508 588480583 888357719 625946351 417883132 863122558 639183209 4591328 200701267 870670684 875719066 87276709 904440550 919319516 506581556 411538394 312373725 753290049 689108640 345163312 394820905 343135160 735080977 928601099 545944365 72546878 147892471 72507398 40798754 834181530 651744922 120076403 295317841 355523409 935848848 330530399 122094332 112154674 685612718 853559729 113105272 458083649 895207941 69183898 609948904 557354385 302230079 105901008 182481457 567380014 505342092 946593796 31552750 805856307 41731678 435084102 186970239 838345575 511066493 37011824 823793032 377361679 519559042 242878499 566079450 407697573 29379753 579606736 858939317 83757510 21369623 102023465 892820391 441419799 571754492 883252180 337942006 735766951 474422474 479561669 398540674 14162240 836580836 379448914 464237314 867934808 581026986 867616015 70874470 352636719 868304935 196638192 750366468 829318496 104365905 547564879 679891095 512903114 386807532 389241466 434700144 213090707 918673741 300329106 523371558 214260905 656014550 712031141 963560626 994018445 153746150 761214418 657477511 820663052 637806221 358051992 637174336 176782107 213494681 918545728 902595398 679714668 694310166 675004802 480452325 942572940 183904147 486316683 801783000 48766573 361632722 269036364 901824290 498370584 185880630 502682019 383095971 819499477 120161374 789854012 797276983 365936880 676316872 282929588 746637113 394072786 279666628 813095035 266244317 390847039 577973679 128273325 225188996 878363158 789365622 464138701 750869543 807320894 569447298 749438691 133070399 90928472 657561874 179273170 374770036 831922636 496077797 360050124 874080179 833791168 990065787 146466457 113348643 733998029 74278072 663836561 818305549 20390956 661257363 779187052 584963825 451146956 616376848 609794005 825348802 844230779 546257646 710077095 992412353 613234185 15320801 852815770 400117748 746946684 246648095 987345759 686741637 285543458 527097276 605111564 977385955 112200478 930242264 882853679 213363646 945701900 832792207 332705810 804344527 461748149 209704492 335824790 333467268 318984060 658620665 514554276 552000072 416077795 317421033 610426290 244464372 529385005 966077284 91659955 225817492 805204215 278333500 79248905 736291985 515218188 337209056 560529137 755634406 160232737 723570833 741744505 342140373 967996582 54776487 184500619 507584661 489612734 46583211 202378771 814793772 520959133 474919589 536065591 64742624 650297168 866277089 992815429 837631000 746495917 893497606 213638227 783060115 814427578 990078156 697151983 374738084 611059465 701735897 446203372 953682315 445287822 345454652 962982361 1533883 452391918 851796166 541572495 576165765 101319760 206965698 426007235 717559973 192529067 128442418 430192600 99346248 733078953 547926030 779737765 597869654 893742565 880552086 723552663 214111150 606973072 94713824 466382648 213940242 838533349 182662732 912703301 194306415 507666437 247502700 909221696 86916236 718939638 879991985 55906964 79416586 403096803 338301890 619580535 471873817 915576940 570966892 840062788 480274174 756822455 949358705 187008429 943009665 353956599 499503927 373711530 807478549 146419892 887801506 75027839 511272689 987710582 121121628 780157001 882955704 78370676 810884625 601517277 30014960 785970032 217895865 685868390 80174421 240479566 896812444 188622608 604782923 746478525 613886173 348236749 212891523 250743190 667603123 81669665 212693690 679989270 982103350 871515591 642308033 855612890 507544363 820964289 58083024 355536260 593002778 851492532 924630420 60494301 614666825 124298319 499967698 134378334 84354068 5004814 175827937 365740200 837267155 777242850 682250128 80614166 370038071 807325834 449795957 136478262 130880527 534754764 150682505 398437492 724362667 930044734 985884860 491179112 683583735 575866428 828102105 190669842 940144600 730410591 608644726 621117921 121772697 211726924 457692898 543587193 149863131 221313922 629176995 742597781 712996062 598210611 689496818 120168766 819323395 978163294 952072920 226177951 28094354 585111716 264777005 576924044 106879466 349037868 185594085 661311461 734933932 365172909 348534453 172540199 95346278 741097914 595655175 318730533 532804858 2007397 417144287 357692412 714844265 162386344 252507917 414071155 654960288 92147523 231782291 168347819 73155462 527383063 627092135 641711212 295132311 168280889 598632731 389573371 493244327 340981020 921259211 22972705 408923949 255012342 162655142 302016389 575152389 296937890 73612331 809151031 322589286 305566768 572735110 463752808 831780568 4404525 949763352 797449172 241578214 53746940 872492877 800440393 251320681 134085293 58874026 135661913 391129922 344296107 264413630 866087911 344653093 758541630 666534730 377805287 647798602 914192584 673450458 394750702 875155402 798581938 777813005 142685301 954400800 753000555 244667635 123478383 811690748 656302168 410889419 831149974 25039026 816657128 254595696 170186014 652089977 845326900 835565157 409543449 959514614 131673761 31795068 242423529 801679713 881597408 512742374 300408600 658427235 263730880 314094579 833919469 641514206 435589180 358849432 151668904 672590317 356914791 881703168 303313935 976726669 43537877 533969127 37180843 886084771 829873165 849740417 571339572 55709932 704116419 268898073 470520861 35113469 140038925 225004167 804334245 200559162 519101210 233290086 172404695 602101956 446784438 622908236 105383940 16335228 946571385 246663429 245455726 940487403 968170159 856890443 757877641 973771137 404475008 77785482 731371284 290150237 277750613 777812114 462619302 62493211 256203379 795737645 565810136 768854850 82574549 888145071 272555460 562785266 47520647 283683695 477360048 24805408 459579950 170235279 580695395 387793386 912582035 939565820 571892347 868620339 771592723 109701644 355964532 242427896 425708756 39882876 897340846 862307906 760257593 884904918 392784782 633562941 695409919 861228905 147699950 776724382 419115582 606875789 338378737 420576166 188194998 919168961 238583964 239001709 186997277 917957444 539985574 801557108 362189867 510328625 974957345 824632339 838270207 201100671 620800633 675176362 679971040 707335430 755690410 281562433 629450286 931485448 650824116 62662370 257763576 558112406 347215057 551935782 136151791 385125019 682905556 605451360 408011131 921842652 847229421 292243294 300230668 419984643 881610270 371760890 977730340 958087056 265285254 988482838 636002869 380525847 283230731 467248593 878715183 883488896 154625451 255180581 925104044 36707273 665678327 748285861 175497160 265049379 992065606 632377824 385545982 820367302 530211886 855725961 812452557 92446020 147219013 148495546 536032280 901078205 204978134 369319564 711957890 49603500 490676192 200290386 593039753 954029136 729652127 231200148 657862063 381517876 111374900 939210380 21987974 199328883 163635091 508309439 585840945 809940440 776429470 610614661 824854047 449848144 834783692 573016239 672503064 737343333 33657567 775849269 467683013 245955437 511364122 764384554 545463746 993501613 214352953 793691974 833812371 313701834 121227169 867297549 871135081 68005289 196203458 343834066 410431843 316448778 786386717 611968627 83193919 191246287 781298689 287950700 747952309 630273152 263849776 626043479 779701127 530730499 959000100 930748363 372116125 302021433 732808305 876381274 982485855 610127669 247276 104399067 534380849 104439605 318486613 369424299 885181680 614408257 587565051 447385420 232777260 999859278 59986409 794590086 270463383 141191453 842290584 234578305 101728367 459847648 767833265 957271819 632515343 599018833 541619384 489781328 494694986 28323534 784360563 457038687 567445236 188071896 623583833 583838182 128305898 320045294 194331712 121426737 36839017 601304097 663936547 515851549 775439785 997008776 918192218 795320885 481389852 761196416 921687820 859006398 2189346 247890534 282208359 807824634 129496561 468131426 446413503 394154594 737340118 792426729 350671891 227200757 114805264 73371333 511750635 972914914 452490533 895019719 410596210 618563839 26008593 124507375 858404455 215208293 429885392 260957070 69507022 703959311 591175572 115562098 689716149 316634247 729027226 237663734 593034874 963702254 221119086 5458299 71422226 607704659 941157832 907403666 765054209 804783026 626707414 234378824 446216818 273426862 400081915 663906722 241760629 636661194 188939302 620636525 955431753 955097970 700798447 936326539 836703994 673013067 786959575 561461227 384367148 921826543 458459228 472714919 380281416 308573966 542828821 130721621 617272007 359026729 28082867 820555926 902420040 760209380 801209583 850904097 434779884 422070516 122202580 223264705 227094708 463187772 708761384 86195069 494993103 343150802 298845470 956029123 695188914 936223585 62667170 548705788 743802278 81340194 337040210 519715214 987744891 660200246 50454466 668656371 614012419 791236476 377240696 433637009 499308630 429461895 287526787 603575191 941063358 938908574 677048549 747683599 625769599 267866875 421299538 792617359 417713504 634601133 409614751 719327309 123556309 900924864 209868332 843138801 945526259 220334489 356913647 234311941 863517136 414755351 736960279 733585431 400087973 962601263 615003791 709923707 538791839 6763379 557794205 538706532 653881567 108639920 850610902 854576770 917841675 962770970 36979753 469845370 999741402 166126909 438524207 706182169 36420150 526517850 226484798 659562437 959385151 549046494 139341653 420044715 588433596 845887789 332277173 745851076 703356476 107559693 9625845 595337765 741858639 976422439 492366338 770580266 587610836 514626473 720094591 134579436 321465414 703132260 84371827 954621185 131030636 852791745 744378400 237269463 576847520 618499483 202447662 184103020 637196567 828227329 195753276 268897689 908797614 491888777 630760627 707553442 934941858 147612840 842694726 320350781 305750494 348825537 881238734 330142812 64027113 143782951 152143174 131374122 501805416 435078555 799507936 801845436 56868205 470734226 638550020 203105080 984639789 843440005 747941329 508759968 508827938 993948071 231076918 128579207 985714431 582354974 844300638 752809727 495894535 733254306 56733255 476728177 575633847 898010884 785227078 839059535 3592688 691190386 768908920 848492537 283855560 773976920 635265400 751950576 319004671 845455847 760017345 21419022 625685490 291858592 236937199 482625534 447200008 310480153 124950826 272432251 405956857 295906079 187165184 47087173 558834670 177553335 827019426 506289078 161221038 740976832 541764971 157412659 960471274 310357839 386970104 579341142 610227281 954130829 580390856 153675931 869310165 188922199 510098781 678566163 371357436 396040795 846854744 488298657 813212091 371733141 868693764 864690484 786391355 349392617 470066519 36590435 983153062 670606810 583820377 108494178 792734841 164151244 333806181 45881491 541952327 262801073 531854173 457900803 858295786 437915954 721640006 928461881 70215073 424373231 815191771 709245428 384663188 161927413 146692227 707096103 812071754 573969209 96570192 201072718 467663264 870370301 740579834 164681011 664516759 566599346 130985155 821255386 246810246 699280149 665101849 367933394 760215889 125293846 93921443 568071408 779601409 253737964 633549555 130200008 165092438 393029199 217436685 356604758 281440225 168090928 626824782 625112487 426498164 442623785 318460137 619126410 863267859 608728343 566610852 332901334 957280237 687383729 524082739 798545788 932112356 577852689 46436868 933132876 721500731 265676760 647835551 327589466 160889336 360334403 265223286 118283418 119804805 528430276 923734733 739853842 943890954 509407974 711287912 342672488 508592295 89925845 676031681 660018547 508999716 488430614 825038017 79855095 18896851 614218105 126834259 143454066 652998903 891165402 125816300 120729069 145743780 611524560 865541057 903145513 981463736 770963643 275755191 665279492 778499751 793184921 722270865 654076738 476116569 72834150 699326264 366993005 750513104 429782592 233601372 670699829 354971101 82801552 900830298 293042158 6680657 730677986 224118558 866928995 851296709 377292574 494935335 294376781 800824797 470627616 928121706 581708722 359819525 741302315 866459108 949779812 682362396 67992405 447770444 649895595 211408037 423283702 129391294 654723983 760458182 758098086 166685879 840583246 377843811 243866728 525384739 425930143 749906728 44122948 169327853 261594169 870099755 466443702 278983024 458510845 123178261 861479077 47517119 609039209 188252379 699423581 987973034 510224511 315591419 144153837 221377822 567725610 705089886 181011254 872531920 510222945 235014874 850998541 432285036 590482987 200813224 438158959 881403957 297977581 331845154 567994603 274541037 940214428 946580480 745158331 291379818 411793599 115620027 239088188 465856169 579414329 532157759 358125434 600398403 220820585 890580204 472206579 977190991 445139450 278149271 91670095 841108710 59811356 802620255 726664558 319080819 695658178 265341967 205497773 40590775 899533957 359128253 950832221 734044232 374327032 180441202 724790588 614805410 398501921 300901126 740983458 982035525 15651028 343550425 143379879 199964596 652865481 353259163 764765823 773240955 356588363 896967604 960875268 972660423 568682994 40427325 858502000 518866861 619221264 233713726 274482744 619746152 776650021 931466418 846659094 559287650 932588543 969655913 162743002 883328224 575005738 99919158 946804118 609648797 585544422 369079259 487124940 209154866 850877324 56860344 588251395 884017850 529001521 770607042 537068959 25972607 897960592 976730896 21440429 783686911 111372766 393676073 788711240 755420761 420451752 951368409 588319219 414056785 908955895 429331596 905159549 786371036 67721635 156913391 422055218 162307096 196931672 463643181 594669840 463587671 354429476 795810178 608790010 160680637 546779292 329461469 936242112 647486764 155171535 306775938 865717399 908623030 544816181 859932303 45280943 796633304 57841349 475610057 165278965 487216401 804061722 334232253 99563231 67451958 383475367 791154754 584325015 963373027 150989447 147973281 362493813 384842252 455600530 800583411 151558469 917236871 602431684 970856108 665351086 458115032 529490291 381148743 329203973 827828879 605291569 225658828 383360141 838836072 417278416 264452591 148827126 475184423 216129389 863240677 644660937 790986702 211908605 583902789 693924319 262123726 544720463 811249462 291839105 706933596 896861665 348803614 442993670 5802971 959835157 798766294 465414035 388247976 495720702 279221791 350015359 726064608 995104744 158831997 910580222 86673612 849027813 1989409 489554407 636980972 940543717 695997271 901830308 598961358 55477373 245387824 704020482 680005950 740767978 586700894 699023166 175640421 513689845 197030212 637393131 875142871 605910250 889990219 775167836 428984151 59746413 448051593 393131575 233844375 629061753 887791782 205430890 933061625 110247679 854345803 864231753 574482717 725742214 982149247 241493033 23768694 981762208 654374416 247282105 586171455 869651396 305284711 624560692 43601987 756579675 591120177 304705739 324830053 596485820 850937304 769615865 436286298 373928463 348947696 735455356 275060891 101702259 489551660 809869707 87455871 537175540 884701590 817852319 29621478 281535298 452066186 682832691 226297494 288231042 804522134 891857274 235547813 114065401 162707640 446368317 394732936 775435935 155782382 781678376 332196621 663341282 486415653 437989843 947511789 556373325 702446015 692920026 198662162 501455775 490594499 201912875 359805918 974664987 272409942 446022605 288268397 500481547 413174698 727206794 9073711 541107487 898099524 60987599 341113309 957126455 886692691 801425302 443687693 228919530 357990015 418372760 774199594 694845013 138650017 775752423 573193074 295756076 460594121 131730410 885765367 584148865 922361820 399917702 888216206 163134849 511875543 507370806 465492908 538851865 15926210 966394229 792036248 549015831 320433807 174203430 917388359 196330478 282216357 506448968 624454629 94878067 348391064 647382337 240948074 774996411 830126147 189228144 983881015 813809086 146045521 851002258 459722385 440696318 475942946 176306044 360885875 854378890 172996108 526718306 978461130 677727630 185017097 197101352 821165578 154035550 683735315 616037114 95299241 488262852 624160642 299138111 889792452 279007512 724252850 730336740 178401540 456472406 233090161 7878735 90388156 910970673 475368955 982709429 404743914 777738934 397865180 727178173 910384540 351269939 433905123 233837746 499820233 134202152 149475493 645576149 749524784 776865963 370282234 52998965 139722688 84163716 825926175 410893272 754000098 620676976 41363910 167787500 828632135 71505088 962249482 837953204 457038346 689888069 982342606 163291529 53212960 631540087 802043184 187667071 166673698 682360185 327770984 735582308 302092715 84963144 558644854 521027703 859328606 312041062 399896246 365347908 319787081 266488155 933277507 444723554 220330267 35896641 137610357 998305121 763703204 16427344 629418453 557502872 786429524 916387905 542512443 622825918 778690438 593568854 106808441 317928925 437906999 220287634 277568916 545803630 709157184 480366450 416872590 92777841 315986957 83843068 196706776 738453478 830102877 622733539 379394235 314680982 854706881 139755184 709926768 67859324 48256971 604359036 975714422 752882082 986443351 126862252 410127923 980685837 991913289 740767438 460391470 837545185 227913567 66933785 908741582 984475333 763717218 532691965 316565579 706963488 873794622 223807158 94017575 719583587 546486700 159966178 73233291 618519297 139067483 970693973 256444941 707989534 291167660 437962940 575199632 485968947 470170970 532880174 537042528 215689853 552764338 143268583 680336002 784915120 149738685 310646491 948142053 447447097 849693000 419429531 627254215 942493281 821510924 800394740 205443857 425246742 776392412 555198166 928386727 123330194 419584058 393174779 432904765 705950173 450192505 102008518 935772450 737336661 46334431 535740973 216571753 926421387 939690131 678453883 251508444 311703969 617274220 110983438 329054194 38317590 222967141 375536443 212536308 510206654 551302032 867466247 568959760 279395855 242519791 472763146 603178929 728617923 280753310 997770339 176520196 509891873 858542749 8143730 123485929 449113475 807453084 751245276 66573697 145051058 494399937 551960156 744598107 689443932 988313622 903788291 912499130 320896758 915775128 459207983 91295960 995906809 230630148 141273673 632079128 975725052 800893572 688888094 73020790 300529688 873047738 515225 654212852 565711107 697181659 381523535 580164947 215080308 326499636 749247617 372336456 374779766 116758372 746266094 517806597 862013513 968999247 114706707 354122010 294738591 825761691 714867728 427136418 310735409 138834093 767507461 723441831 750152828 876469827 107590666 604354646 296001752 258424479 401732 132136526 67821314 591023832 307612310 728146295 132851624 125905442 344408032 107126252 480570835 622529181 390841738 740865765 214969822 771738459 711905820 777030725 303068735 551772062 83697844 908461777 902332919 688238935 836130160 51859269 374996354 313233499 423239318 577570429 780037007 701923177 115900631 783230321 600909740 42551878 449056743 788147489 579870870 522283462 489559845 827308836 708925127 815176287 424512625 349975586 478823073 271019071 669149461 426896043 487337163 429916516 285130226 897529884 477860254 38121047 683012981 204742736 36245009 874942882 238922918 528468202 470893700 238424830 941737173 88706950 237380193 28686131 155103125 665872725 624481234 459941827 356151593 802655629 539411148 16434484 349124947 123847208 238863377 764478257 86782916 568994678 941410479 970674672 433805404 959801313 980786071 887518317 802171909 881104900 899421184 479274114 267320058 774268467 546152623 196645368 845325218 549820247 527042841 45122665 899836671 627537203 469157928 146296020 666971422 970248719 860961933 529700233 324214177 629865762 407337896 373592713 749181032 413902719 653290930 64385383 534029343 184766606 265257465 382316572 203154916 876545660 275837820 577861617 52475141 881721602 538595417 549706759 599461470 289962354 647339164 903455823 484561367 978462889 589610036 418503770 461944817 169991741 290592572 738892802 240011822 684898290 605485413 11268483 361585767 56518607 732897834 22648149 873093949 692704059 496961921 932790839 683207982 618884921 47180820 860473781 975728312 312886990 511863564 605031787 948227148 851704568 216034845 399122244 265074786 493361812 568128676 855312460 816804762 914456059 318481041 414662630 395599796 450350238 801051432 822504429 152504040 185233855 162982041 244148827 484618916 71002120 873040691 760606909 817641004 638486444 442876584 957293731 335946492 732993941 290422316 107395288 235811906 859287403 971457689 208443427 519238863 133749484 598333906 448495434 23908248 807082686 677875241 381111273 883097049 180001037 585758497 279686925 481475781 452287741 31459453 813707990 701004726 846315875 705890409 739592685 513216270 513630336 289010452 997460561 605229054 48365990 666568221 716493328 934961566 842019616 902439432 802213158 608513353 450384783 726771541 999735221 31496664 980757944 745590142 934785230 390053647 988129317 727447396 86683590 396814101 788554437 982408369 58628869 654705382 863354264 801743056 424179526 530553780 158872003 171594118 84419937 62110598 441975360 417058874 709931674 136711288 373846543 456541740 888456625 80063935 196404358 443049880 993132488 865285200 858775319 853001351 238550091 358064490 771442625 448791691 407473104 338419786 530184560 35486176 872759336 856477054 291903256 810847768 27856107 563360887 62879427 987256032 676919760 312241398 194168420 684606394 42727979 912015245 473947548 750094001 779639830 273193772 784880358 203998433 646173906 133690092 488098267 953054529 670572835 402255473 958154656 184225116 811697661 469481004 77264724 706745594 499656510 719029700 215534939 209931665 609292631 629790594 893809107 617095876 619543780 845982963 862335221 172371549 482497316 751919901 39127401 18010302 966598597 678355578 963285125 936781591 832956950 379798910 4121436 16355293 91344614 365120122 936720411 219214815 861081119 364388379 737465198 440351883 761418692 313806798 399202017 232326194 204488383 66602956 729565241 130143646 607335961 674437113 945343514 849332865 144895529 562462665 596288025 484757940 223564184 536374233 90262134 863876911 706152295 19922552 761362728 186526896 142632955 428951279 870943013 73599611 239389231 753174705 328748407 654923677 702007370 388579843 117118336 96295696 24520533 574151729 891315794 628011831 134824978 971546801 444775079 457362542 972483880 861416100 419149753 845075876 278812197 251023418 898130636 364731540 260836162 114337251 724340227 196270449 496034704 439335764 456289504 785471001 161359328 343206436 805513465 224258042 40271844 419124571 960265367 334388367 150940484 128342760 843402687 523529099 666135506 682941502 336004240 94232560 578329838 265477467 224690378 849468357 700552762 261606876 646582750 229654056 394795514 383735204 210793238 179827251 622633236 402794655 646931722 699843877 957388590 376366709 319734207 211654208 630072305 781801286 659204365 331305576 232470483 726141268 643076365 749824369 133489560 333767425 352493782 643672802 129298463 388548641 853927684 274535408 911650210 899386120 277537275 149095824 123234794 952578948 701122676 973248386 712635252 404294680 918563 626884815 59388699 646718821 948733601 570627327 827287880 921337065 85879415 202363415 191125122 16812964 889874794 708565528 268987678 680338296 747786354 405483893 788021473 275858273 323301489 559589360 914920305 17452823 731884987 455443797 320646915 722902466 492891019 904382084 50471417 352994339 93360527 165128079 990608253 166753519 114349219 300779254 793752195 419304346 474002009 752015174 312002559 307461089 565980698 817964031 945632823 633345832 80975271 283385437 841326107 848924079 881252553 731669822 910332507 277306856 189563070 160101602 727821126 60653787 139031123 221920120 500502851 29950058 362149103 699905686 954535002 965375529 170925657 54620647 410689673 493917469 804349724 803482636 640012245 580433947 762827682 722705816 160609375 394611431 712057417 286000500 753797893 468656648 986897047 986519031 622695987 392634598 384188174 678178215 109121889 927824798 251393052 831325370 206320148 649709406 65949696 756594958 119691751 596722169 624525127 332018605 451445059 256085068 233865437 818836181 538756682 754786255 60083361 845280943 601172214 648965921 167066158 411238979 441612792 432003499 740150091 615237109 132979297 506953039 964618873 834378506 322415638 901029229 866369272 539561127 541495312 344343473 95242194 87847531 840963393 207019146 228556259 353167614 180214211 285100276 918412817 594955337 834953149 822811843 406706206 748655736 970542597 537797302 1015933 373921804 909532563 180551537 331144047 605058919 613985011 22194829 916127035 258727705 992000311 439986887 348462664 346064650 25394457 12524598 952584903 385760737 525787797 484940131 813392946 849932311 270465894 936166900 288491463 587837491 668185614 997902757 604321654 954407359 553194303 496767097 355804343 121078133 211702646 19275287 628380616 471461009 519042730 447678145 580235594 880403791 162669087 296359804 470081758 138754235 607857418 812017294 172865458 926611790 182256280 448122956 178007459 245374115 915469557 628594339 273664152 415070198 722394919 900724932 757874888 568405257 916023919 391406184 63083444 210568451 786508360 472569723 337535290 761990795 3805173 837772928 281686910 499748608 130601470 235580203 925421869 177218643 367505794 562616173 35645026 734128095 833362803 3121780 916220155 663342317 416200767 161585272 735305009 271664996 419912444 829630218 423169391 653028851 914786194 803224905 870959359 732922360 976663214 47906817 958335242 256429178 585126971 763357052 659719437 885329643 994244346 799943410 377572451 745919778 189684757 794332947 909356881 470081125 389881054 525435797 404903899 587769369 467781262 32624097 178750142 786348784 586226982 550729785 655937461 625742787 682163591 500810458 422386211 744424841 564503876 60460003 152342061 204976215 409095818 437132436 343119854 311711953 820900833 632709813 10765505 963462038 553422644 246354407 610866960 94599208 158542720 47026065 688056135 431599401 388791637 879497842 905837880 298477613 835588573 410160342 269245548 943372248 985664434 543351513 147849496 839949614 412317062 852402346 35318610 412211397 330809828 868309605 111768346 755807787 60449641 841470097 216577485 537006460 963973925 219471037 120767184 823188176 842831603 445887207 420893617 303706334 634650695 287605300 900941180 227575008 751278067 65378128 150099659 999932366 507861415 42217417 492737550 747277657 544233906 516922737 952431615 595090785 174921063 209223473 189330739 133114442 652015592 271853540 93757584 918658931 599308082 438534869 120840388 686509719 493117086 969512176 217558033 554034808 611474216 517154472 446717759 209878851 832101607 549149275 369052852 54361264 908077329 584785276 613261167 393761344 809065135 183856471 1849130 84167280 343413068 318887871 590928151 186495348 806381500 299688432 433633368 337401258 495634337 707183652 37586504 417139614 779330727 234786313 20687094 185131231 996453037 336068611 732262749 660692231 73329831 502936758 304319794 27155048 157770351 338799319 529590225 758650979 892677679 543634127 752748499 434021534 543401886 558709797 925877066 579765435 595649349 216752907 990190642 446264905 628760787 966328031 84638220 228610365 328487744 995164615 910167073 221254328 759298004 928262492 782888463 225848030 346083126 620457783 325945668 369731630 137078243 206038823 543793472 516794217 564151478 458104325 912408058 832125246 530844588 790106162 938570015 734348121 275779345 904897234 235911333 620350791 169447628 551061790 725635475 156351469 697883755 99649646 361913960 971206974 631040243 965963820 361152322 679569258 159853156 506927300 124346510 607896834 824179536 887656109 900146315 458844551 431549177 458870410 328650453 988973970 990845496 876404342 421970606 551917840 351481608 204226806 128851257 434062567 329070209 837015245 913653591 978063407 90624670 257322364 791128141 407955087 236356833 699643910 298091744 113148965 328392600 76042205 344320829 804805894 168093399 865599896 391071304 322979001 280934319 420293069 150006320 841696550 852929373 424171030 725395072 554965706 106274927 874035344 789663407 738545782 777874748 658879537 992766260 963470074 732745035 815808714 296012452 312637925 18665228 216886595 89910812 361930146 313644562 675783125 510071761 321441070 402414167 772813519 821685704 866552473 817079321 826718302 30505137 611617524 868719661 385376279 679031407 519980612 829872750 786153028 916764575 230892699 600989585 748089439 796907527 91476357 395083943 461172330 364126783 525280672 467253933 994216751 336973725 735762196 334662497 702248107 19350840 730164708 265015047 509413759 861189203 990993270 529293559 767229280 782103955 254837334 702483735 160763104 168350570 755696860 732198637 840002653 506607221 636467596 533218285 364803040 341556700 62961480 343693574 874513937 461611342 948686875 9574598 651947849 370212976 756405359 934700801 674940356 443953510 295953925 192892920 313012568 610118106 301504421 835524726 380418089 336127693 184940801 679218300 444765412 772249306 776292915 936509704 712191720 565244407 796422205 489546034 416799023 947942786 4717674 755077504 626122096 437670318 441910422 951072098 584052780 572376238 650757053 897769272 596829468 969185312 89629638 3797866 123607474 495145733 842727478 816194910 978481081 311560738 572492632 925636403 932314071 49508329 455572674 590736270 617734777 832784275 504335941 816552277 584170119 47873221 564904885 899990096 93383220 557817764 876935724 767873786 205715962 780098685 286208013 282103676 940873727 690470621 768968884 4992597 799159602 624835039 169521491 938939790 1768506 836525616 748610049 191078694 848165308 595047073 559303479 868714014 134768246 61971234 483484648 960992954 508928247 993709664 939889570 732874665 771949652 75997816 854334370 995399891 698843507 185351495 664205771 873116228 982753453 904714228 916388743 935376219 809589875 634513499 212316688 983132793 845064224 310130888 254033790 606709999 460498512 655001676 629511374 574219517 597867118 73372229 765045248 838203601 538422890 631862851 869651341 51603771 933058276 88195681 75128102 204047915 866458914 640712430 205010759 150814452 119959686 565198236 700646556 335998582 134638153 779493716 675268467 884409355 21968886 581122990 110247163 196530502 757426449 429556190 168900267 22427372 1506691 361779221 627550478 42105583 97201015 357122889 971321301 646753691 605850349 209335657 859029666 770889204 311541387 484294539 133752107 613363294 592763185 782490189 968270540 892127434 160313032 220136411 318575748 46717880 570968828 641426725 779896894 706229012 614242979 956828933 853124052 60149640 302386937 640231458 696227162 558259055 733713762 22168497 500714568 985791877 704986046 160693731 92290751 974141721 465301445 889190953 563788521 664871428 427246730 404566142 54585454 240592504 714357805 70943247 954666457 940195435 897091640 174575265 599556216 334859188 245512182 975177903 427481555 719580013 321418233 295567126 430049580 707798998 594870851 659426586 367989937 5714022 596925232 314149411 383612137 941547699 472116595 930705259 316048182 721524729 581257476 23354345 826537795 138339847 585458361 338578277 676647051 409358961 243198392 426641508 66481531 461067058 998311722 831234408 584192715 41182858 572530863 676602627 929371993 269257548 607675729 490868821 671784389 664566604 411107862 535819998 984999652 8294840 489410847 614907088 519058573 475642803 787223834 29408179 325238274 742824249 283953074 579869565 750685438 799811104 214712582 543230048 429872607 566862982 131956950 456656655 136115522 944113938 378630719 492352539 900015775 468786191 456134953 888281920 909512875 951479817 917712419 890748221 918252473 844461726 531341534 72043997 684463943 621133766 209039203 848596258 826933851 611993381 204602972 662233694 262738720 991061500 628542457 971141550 79844282 86133039 576131007 700389937 197503594 715275295 87833723 324524723 855637281 642710688 651703880 413693782 182482794 4987096 915790230 781446916 816181237 804271043 920891675 740685571 652428849 221519484 166961680 583403100 597196001 368926843 760455789 702576849 283150431 382737804 399331047 573115990 149204658 287256715 69973650 86309136 454875893 239011598 93125161 595903023 420562114 174778525 351093048 901386229 995519612 81368961 766545600 241601103 670283488 581484206 595187884 195105838 879803460 616125609 568482752 68296526 265571926 859427256 6409329 45086266 11326986 44035933 551430279 172420692 243163935 401856754 941837341 464744052 76997277 551660923 657961662 824941483 132721903 681604407 134900376 338257437 547364279 877413900 712224133 462330024 81622041 313845711 157962386 660832922 438311806 115237507 961743184 90735938 446128345 67962166 122572673 732112011 283738533 81108102 779307454 849671183 482107161 671813827 918978140 263411615 659954645 153065341 467091525 140340608 633898387 370022277 126158228 923557487 204297469 61137066 946058924 250318501 654477325 937989731 801565478 859361886 875987506 462666191 309374472 251878153 72650251 793519209 37952576 865082809 159049638 794726250 455509886 875848016 630466774 295414932 530143237 249541766 968772919 343250867 64978620 243597582 677655648 37806083 507285548 911151678 783485235 682629792 161285084 577840227 158540650 708503629 823428319 553923672 223816135 230003890 227911541 788295713 744902092 891863141 550640289 96839046 414481137 315573114 248348716 660656524 76101901 445718639 174595017 157406693 188145600 760944388 960863483 833619348 331493879 226024469 238936411 914856030 665691652 506668499 93909546 492242540 957357215 530997357 294655007 397451318 244070966 63850143 72978297 423225927 417801686 901119860 14413468 870518564 958835209 29866912 202380800 208865466 879983778 928860181 602700346 171417696 622474907 852838655 384538593 738697598 113170725 627281679 634101160 157727573 127187882 893705223 487555096 807758806 605081207 501004626 350116953 306337317 200405692 518751628 891021117 380400983 281043623 448725649 722502835 244641352 905627127 398468965 893876149 849830392 707873636 354504647 27043779 511323303 129760336 395949087 846273743 958890581 297461470 263016234 641353923 282344800 827721142 164091859 45820006 887119959 283833759 738439236 705863769 401799900 601939403 240583153 813965384 87654567 353385537 465825616 33086046 288997181 396234103 268044178 444709567 48781390 838247394 558717371 209265277 925127180 851523906 186759995 472894885 627997961 648382119 487039144 338936882 651273577 935267692 281071144 899491783 468631360 5528697 360674404 658684384 674403141 953146057 129648904 214658260 50378032 171404277 973368257 956950677 962635644 838875573 324430015 763408486 719366488 836295903 622020648 494216499 75173795 598846119 197795679 589036105 979427947 224770791 806075138 292490659 124486340 866801170 883168573 556214052 384874937 157941444 925293044 200710053 521096338 212595670 625262221 358809507 467689112 684713224 413157001 630703713 496037567 363068473 733312287 85570456 335619224 535648743 654014089 13734828 705294495 387678946 599950374 574695985 706644867 250566681 827776529 390504374 634746947 640880839 982821866 869928503 382131569 721511315 387535390 176889645 431951029 241752348 40621457 517003279 291473746 672177520 768157956 238610983 836180801 321863251 762802687 245155169 179304085 83586854 527554795 487635342 602759441 20990606 951601256 652458266 768054231 134964467 747878742 608645100 476224741 754177595 35095030 586864851 453999754 669652294 4103975 418717747 96633483 191604777 290282500 796592246 214742608 362463591 295322445 123841322 926311095 929341882 878423621 176940596 683678859 859640295 141282615 876107467 595033932 344052932 197890434 226768801 455594223 536936600 470389208 131395955 124171423 769662230 184840196 489731120 802560074 763221667 786915810 532110208 24718308 951418456 377937693 298880219 754357819 992015029 836726061 845784984 844680230 881825320 723788259 889243501 107866278 881702350 189324358 941550135 120047180 325136602 873613356 72736346 231185396 539454326 327607644 90022137 210173878 242063655 703551618 699048164 674910068 477265028 617550138 487731328 550778748 964890454 871126977 827737067 707277436 651154037 455356518 629807349 122652752 5745215 505624074 708958770 100299839 342071983 631169126 966848370 299840412 526583598 320009301 788042797 478186283 645875541 256040661 965068496 609541827 95090879 784211318 223760985 947959593 742566518 904407942 425304650 46883547 103646243 495291225 21385446 543368737 321801580 943346175 949749118 616047482 257313968 678387070 227408750 247740881 937048660 917554904 925353232 220364522 696804744 120262542 902207263 26304502 906492429 996881501 41597266 848038483 629475878 387533997 41912347 805120611 73791806 416909225 821416417 735044745 302725748 9909696 79278158 462412693 740950683 434180501 367033382 161782285 850537795 737336911 658491783 42916707 275466971 947408012 140749428 368111442 885602295 860576615 336265104 375315698 194579242 385567126 139889488 360286413 875538976 866810552 645450084 881136210 500073196 707745510 670463133 786820260 569922635 58127382 478212785 453461611 80180964 185407521 155429774 169098063 661763416 174846108 275378604 545605736 103075949 9528074 52012821 755433250 945526572 498358803 219498683 507997920 212818438 993422324 643186957 843692744 12426605 250293743 849528874 810458506 536363902 765322154 362134178 207790656 26892911 387467569 248279473 352457350 545257159 343119184 477796454 193511660 605458995 771990731 276644715 836898187 454251245 308149559 33923601 866870808 7722428 392122063 221974772 358866076 906073566 865538017 180241753 852287707 534908856 881530142 76711770 596770592 395317773 60254485 545822671 221795454 731718575 729639665 483880376 219883746 897718339 530137395 52272106 478539926 349429207 404931714 227450983 64865825 862137072 938006306 613830976 263536257 805168439 932472109 512772409 162347393 222724399 849421823 553092897 784753197 122613254 538095104 787521651 977451252 744975180 265299117 987913157 528574934 38392522 678757220 798757564 784352064 134517689 927050433 227388922 60089457 773992498 648896732 743527546 84273955 895946669 607646290 114406841 621425812 315675802 383771914 104229219 258346096 885200156 234591289 109654678 90809121 52369221 800652676 269472831 610651653 842290630 132054391 415525509 821389870 227751799 302147274 350249632 281658527 244331345 942910924 556428125 613518620 137807880 51883507 93027735 706137385 551989457 270938912 274941796 492384909 521702908 996707247 960047102 909369982 869924036 94801137 109456103 243205172 188386571 746167007 52157458 121618722 221432863 562487392 182614571 913416211 35737374 977771785 286929500 674801495 793794333 224252902 765670907 8825742 665334784 679474528 18064352 636697444 536672189 272413008 715298674 273732498 256816586 108633118 407865927 506040680 171784598 642664409 304237182 55507830 362842173 118537861 899335491 409418924 697956412 644667060 378632884 642607319 230776404 988924894 914276745 341933874 173120989 58221783 636272332 783142501 613368018 227588019 274067104 253565974 968122072 35737225 603912141 851320977 816751576 45551202 25428027 635887851 50891735 946931715 217539679 966913727 322220755 504069508 387293488 954113252 56672172 18410210 277813598 44595640 834369715 249966865 949083298 370921019 246731978 449551022 655455153 514632724 863340002 319565621 311795379 239525641 757805208 272565972 39594031 824747532 794246733 4823641 331460065 586743730 782649272 113888261 299412884 503923529 650651565 314583468 60519034 367327281 330856282 828275695 512157213 906162310 886649957 353469099 397512351 299484569 633297128 862179530 442904892 261253318 395399420 725943578 534333862 726646440 672541988 927419529 584542422 204888250 992407287 828290862 415327903 48164889 424467457 384398945 541572599 509506247 963321848 14725250 464709805 546463313 937605419 829830449 4266974 373793126 977221841 920375055 435825255 397551156 158606910 482424530 159657177 81847506 293101507 482461147 395370198 746379488 587577898 828238398 655458717 171142874 432510015 925392191 919230696 581568940 70769940 891690356 597205540 172497531 257511260 193766411 741359509 602093796 553713020 93509925 395080674 731450178 37332648 723093920 787000208 520234098 949398975 854906061 890225679 506314421 501524273 44369083 607285280 414403609 350184285 793205757 324330893 675820852 486299095 913128333 980407570 282691426 790429020 994258211 149970625 679823874 770756233 555076678 306864146 611267915 718021182 875810350 105057010 906644448 182054603 335895066 290675992 503904454 880308373 571132691 321064390 112875914 856912913 87834895 130257058 363263074 738917397 397597883 529138873 454413866 262618702 695605672 244722829 38574445 150127956 105854178 768550837 708565136 280417643 686134289 592619005 359000267 490236922 723093751 491047765 507671485 41490958 313946305 749290427 587869414 420117003 776465535 564104003 677239269 526826640 846023559 716489641 468386403 366974267 173382716 687788912 538778141 944183353 280056514 843509610 64776390 163260849 298818213 327022665 704589938 645380083 728812171 341031574 457981994 482210041 705838659 470375503 402759923 474142187 957293434 656196583 141824198 540088391 945309726 264007514 344059554 864335816 658487664 927858295 967501397 962755652 395953186 486120548 138752077 783836649 582296414 47257675 888138929 600864508 689746114 606207798 683597040 783742715 12137159 723442718 297667542 929520353 933515271 351187287 7557397 253453928 794916033 441996906 589784022 901850791 710144132 577596699 492600471 618171281 119439743 182646799 70017812 622960988 551129334 130359669 657301937 993648992 16872151 267519700 380406915 80263437 839712737 424395775 975901999 539244616 862049069 547519274 662854624 643631733 343286664 295437163 914746856 641142485 922950040 807359715 773539044 128391036 48593814 461834042 298332756 168723645 106516264 642911352 725385056 624050901 767587902 230347987 977354178 185217852 209274970 101992377 399882799 45549971 782228784 27102693 410242244 275803141 779384635 89884560 244762031 356908773 657300379 873778677 421096538 160120388 606096735 447275758 743092910 659904546 328939425 201900442 274295623 372565124 304075268 396744600 462734539 593828831 693322942 645875890 778250771 658690381 926974473 35100229 167992371 547374234 768330898 456685530 837175100 73456381 598984637 542917994 335613912 197531779 303541868 298394588 769324292 707868531 39121698 765637454 753356323 776496837 41858719 934122896 230690715 711778413 863921559 334234435 421434612 659051514 961798290 219992022 397229805 375030792 823852385 666328212 193889262 23398766 776424034 98002531 888103743 769490920 288646485 655609046 359450268 985337918 25325132 423166891 84608955 71377579 751156969 135859856 24679904 90692470 958336844 13094769 934861605 632446951 708310168 427920245 825201706 665021346 63718088 158919765 319020244 174146416 961767818 570722362 122282722 962704542 161576563 214978277 426863264 343112942 413472003 166778372 885419261 577035939 512632328 948716296 381677391 697098511 454246726 38860273 320019618 637837152 832539158 527142957 157330080 249726949 240167261 348120487 785917967 470718315 2400339 514999303 581827407 377086683 938267343 305944983 450821486 545508754 900517970 408418839 316337125 552255571 287325514 698414527 492804114 322879509 416515780 458415 754414145 562362568 631170246 113160354 394902731 941096061 600246781 182933724 346648581 16874903 358057567 747278353 324299367 927200728 790660692 604576733 608320397 599551944 50380271 16146061 54604363 761720914 617863888 762467254 98097655 913136987 261507471 60086581 31879812 854680717 925246878 172034571 371553016 67694248 645597274 666492245 226309913 155127136 888746800 112760638 106355368 299108315 974665751 23438893 720648154 21775110 19034722 53694536 690316514 976771941 823843401 155374934 561947864 669531512 148374757 711917669 903437619 655942077 437855696 945500416 963648658 547817816 180361615 825611377 51524358 577980208 233025215 76045681 319622491 333745272 670693153 619094385 507024889 419566781 879621958 239392161 455590642 970304434 45623791 601835170 416060392 413276933 252336697 522856736 399675746 189828803 51458892 453297577 964946328 317310346 943287422 509324677 752372621 427638223 392432642 643198179 372439778 482665687 386579431 128203577 981044377 61196021 80584542 646682475 798138546 597493156 899155437 225168348 530344106 320979718 1474654 633560684 705405730 129980168 970622711 121979044 519419811 303091253 659126077 924918309 520894391 493127864 382474396 568599762 710169356 198820359 133702149 481402939 891054930 103513892 304090782 192147482 979675233 492686568 166917666 897846798 345704905 616806617 300068612 335447809 255905771 206625456 878215422 374688092 826587532 676733903 936615011 55803672 990722131 127061050 50069316 34002730 953963291 805418716 933795852 935405065 889304445 702264116 167043109 150983475 585830479 366182924 316946284 740833905 132322065 895637312 764218159 724220652 392585170 174134750 179117671 242635260 234192659 27908254 12709776 425261535 450053924 447942804 903588457 725203841 976643194 204067785 540020274 275304126 263477824 197528842 300535622 992202619 589803384 485135994 390654701 287962951 334312314 46748994 768933724 308072180 234700011 978041778 34415077 800175606 579025322 441349575 718562642 299853643 804708606 744491009 403324184 986589459 555995196 418026132 717770943 818670699 637417882 138090189 165747601 67754679 489081555 432581281 510066540 769080249 156783177 854557671 371219790 7307806 647599078 401220102 725919109 289795752 663411283 312301320 866386388 240906293 568467818 806105157 352044473 522790189 285430009 63241064 12514619 446216959 977150694 692353061 406230469 446764721 300811188 319592615 632944062 798889185 500776845 960378911 451466903 987781379 346948152 63610087 457838029 149631933 166893003 682588782 948753367 155640861 137760783 911098499 345872529 649064606 625179318 987353910 378653758 379707899 993047083 472804621 788675906 289714926 169008008 710952038 850549474 91171673 389608858 378462919 248219631 607898540 661910518 700705817 956936575 646715209 428886389 441850981 86955126 33447865 505690613 365713151 132334837 992753722 528034589 379821372 963508031 664875978 490813410 511059952 399103288 236894486 852734354 685087727 748856270 813915131 163555002 52344167 558855296 414920527 623682540 647409211 570919064 452154297 450326172 129867989 482470716 611448698 188807050 712070610 423941797 911950491 808794967 387788140 749730481 616530263 238919667 426332185 539710473 677598645 413963332 466799771 275220313 206859028 553353031 416614546 294160168 916155341 967310361 343664592 627938616 13677448 782115678 341116619 238177735 60259249 597462440 43371663 449722287 557964946 411315395 628421939 347247671 331503103 465687479 787890455 804993738 291166305 421897968 192550696 851555413 852895873 507597167 560553736 488029737 271054939 383549082 51693604 372076545 295081132 770590753 87378136 835805877 915594736 880195034 570414547 696024997 900074176 971269262 277273606 701796018 770299207 486953973 887815276 805249628 700915556 718464426 541347734 88475455 913298950 737998489 25007053 317915040 280240964 197246462 677148530 680703001 381195990 90401628 394218410 544568611 236775923 801241079 783906263 113317628 287755587 518528502 747294538 294895945 375123721 314587610 769306119 533625886 602313438 599082048 843053248 122283457 405059438 867549214 744262756 917272844 414419817 889032961 495194958 138833343 669757135 194386691 40713363 368429567 791947207 575375957 724957293 386647200 70871784 571288295 907489544 450866068 551054538 106869464 776395306 879602785 68893463 452642237 535786827 694122288 427706727 266505830 16136310 741971735 224622153 4803994 162686377 385388547 265329586 68707791 903779229 115710252 169331658 804266768 552805121 20345754 570226379 719939635 501289930 296372763 431486631 633848011 402773471 483719167 188230684 313012317 52392221 641143014 72561612 738144235 712012582 385639971 915226355 927760384 512342634 712286172 603408485 705626621 210339199 265407664 697954896 970851190 872551217 162273199 78052090 633556625 457805615 223113796 148077607 801758313 911200610 515774309 208659451 130137820 957263155 706597455 633896347 598694703 292900178 677812543 799922449 325148438 225120620 967910942 52737744 7225136 339131788 728391021 945123217 960675039 954368109 844464601 839101672 176411620 831444985 217976591 150143955 644170451 404926699 401732770 697728804 65794122 673499667 483884190 721089750 823479779 157707035 601357349 478981441 107332649 714481789 652033352 973532709 232291671 816368647 914706307 479059775 392084348 263895841 559804855 108185473 905342783 116705593 244566618 866241756 188476184 429504348 926853569 674171493 151531393 411853157 741266844 967865584 613181643 780320144 252931959 111733955 210083653 530504494 548088298 108631703 223686471 532878143 35744668 83458778 315555838 474515966 415606479 318330833 441898202 310688277 683280096 797220050 40289546 702872573 678564561 86430240 315530251 302022034 86141908 872908091 682363446 797714321 765514871 527025896 257551490 36534767 245990301 66819965 838970643 75170577 843082336 244025877 258847400 308666087 178805246 442452614 396595993 237400947 353809899 482679079 629865138 360436228 192967224 359166420 794948903 569343699 487702776 71549319 374023005 711958824 439518085 850506863 459094538 205358650 438043715 682672367 556242741 117195690 847880794 981433897 100032059 356623873 466255454 125068261 409564021 644091677 327677857 285717923 210277029 583225781 411909735 571553242 902477147 954397746 283684272 152475631 857961038 662309191 56092319 538804717 635500555 103465478 949835826 136440850 945024148 630273092 916149116 225292854 312232028 825693181 712765063 873914525 300619357 654556697 836635907 637220982 199029517 240112059 813059858 276302755 479702205 394523771 48491118 502757029 627971399 132466869 996990140 68681607 845373224 882361739 940984746 61908891 995004458 361163427 340459944 811811230 144301596 239655980 181180001 172123553 852957339 467737448 319692458 590103676 783179238 715178925 105219621 872501879 912768331 1063115 161556835 497400788 223053182 800264253 230418128 709471883 615966142 158980505 169764728 152717828 826800580 65115825 49409388 478462968 674130276 904578116 952615672 958106890 317213377 620871216 301091615 176264708 631429905 198076875 342583359 872343239 884666902 650963738 321274603 412144551 481687275 965947990 247187868 955059682 197522504 738547679 197037571 235494886 868178438 590878600 733873120 691893642 224865430 760223297 848056750 49495249 97855976 918710511 901276220 73140844 125381523 456491626 855306140 136672140 344955607 240581818 719394610 522341322 217096185 74590636 849690818 693037908 223450626 425518912 958729232 533436469 814594523 878683879 326435041 912936577 778501705 38495977 137209093 101848993 963225361 843710938 354991060 593895867 252512763 476723081 390165229 671557607 33910526 265097261 904643871 260802426 495913875 258982121 929020944 896388713 882035744 798621412 849830384 838097175 485972808 33761815 516920996 471517047 892117486 635848471 226516025 274680095 188448984 576552698 806296131 157641823 605887885 513383027 565693349 973699132 593102624 26097931 349718862 656267873 73723894 898163517 51482176 405560073 39966882 539354111 135175446 913837092 885365935 703796831 90809536 324164651 232246679 964533454 833095160 680454260 520570254 516908760 103263254 997969380 669663697 465608207 915419451 339135712 979419928 744256276 421797197 651406463 353744173 320359853 748028800 506954537 271110697 234906889 709567123 668076438 845461706 886721594 267022815 515569086 383222260 445145464 742219223 457298713 989504057 60688357 74208453 939589060 303550396 229247254 674804761 56763244 238928466 177476038 732066085 593459725 693850709 266721879 729415926 162224289 305561667 324448260 862793830 98091683 246240300 135898883 107552364 421283861 542065766 917235344 47595677 872939736 253279834 140327842 987719037 291389345 232017188 727573712 770153036 373786515 262343615 363629432 230694980 892767864 379584584 51301827 181954786 829014756 709759931 399936824 779122013 592689142 502632668 160324011 4405483 773468697 622972094 817488209 730950547 822160695 132528179 964737849 550907429 250469236 393953688 190675413 982326812 775723923 808774075 504237814 220164045 764783254 529499534 706507802 59958151 627828149 983883326 211228434 678889742 295892202 647808140 802793177 602350591 483117648 373062018 423064828 767803333 78030723 384465576 239574432 538892900 987734989 989398565 387747580 769407949 868963170 897106611 645282411 185317968 581500325 643271670 11659033 302888967 870960541 901217414 947731545 31501516 776324385 269264009 457783838 638789606 888648305 263390397 36573055 692198948 439072960 890886671 603504490 852649452 148268172 675338828 985688671 930339494 782782783 122804403 819371607 305462357 522149107 482978815 996729934 374022635 42932193 785911281 403828227 893703298 739429866 226397370 754725690 183724207 671724476 933959269 222781843 247524005 946254428 755593648 321274063 97079894 823835404 377893184 591730062 226277995 830956665 972761208 102773038 897830254 397727454 758012251 81519672 724287558 362754175 424828959 390728530 779182659 264913371 924899486 333334570 47012468 720588661 396639283 212194066 447469677 977378763 336508124 93988175 369103923 924099470 622878506 50829352 524176482 586613830 750967124 394108314 341036220 704564755 946551283 389027426 153005998 190187164 849227039 476299559 841986162 742161738 961479986 170723183 76537686 563968044 760764606 433033166 357850372 256360556 330822209 624258172 743835010 524524805 448238717 993806045 125767691 912710520 626406054 546488489 170663683 937286111 672903297 319397219 95757376 90827015 295571619 744347971 38822223 799009988 107800053 560606152 472121324 950628966 912783434 572526035 297989807 384072560 298655200 752139619 101663198 499137328 739585869 243567166 470443645 783106348 387231248 384782254 799168267 193395585 577008454 603481230 836383377 923863310 597645852 613488149 637109592 246423217 77256959 232652664 597587399 691587541 558606926 258330927 739617909 281158987 767071511 995648422 190918714 12309594 96103879 780787847 842186820 521201994 973108420 40621158 783779911 755010330 386591364 667027085 308761472 186344831 729592767 580622425 68482041 403543177 81297281 525087354 469970596 459508421 902636686 629081670 955513491 361257736 954065009 569360127 987613900 748390009 311376303 813495565 585356204 123252626 216849124 816141891 204751695 570400581 132639563 420871631 884675837 859004687 673498730 918083241 545267944 220675554 909479027 118113415 508691651 370414104 899734335 540385075 132838597 878585115 934249526 221506144 886214236 189273540 616633635 455952547 840759741 301381043 910334940 626499897 381354315 60848228 486152732 214392344 408246299 326182013 201524966 752236464 283918594 854370365 481921729 804409449 223938064 749582119 522932083 993422280 391903556 823932726 698855068 831394562 960172458 437080054 513817219 113901779 723595815 159702508 541514102 772094617 501230445 275503512 371881805 867553249 210089220 123726820 461092835 658033032 13836660 75480600 742020136 671313898 338129433 528935493 943387604 403902559 778948855 840021801 866851172 223971226 277676206 463005214 303243764 270678146 678879174 824296177 358378762 321701582 48568726 158636368 203347856 196570350 867017613 811672603 579504811 567980451 346332794 11326485 640864878 24431326 681279293 823062551 996666604 187040532 967147814 674933540 891440903 959719511 831832147 218088973 840651612 337534520 947062773 313270977 999535921 490195306 527537936 492736261 638540532 982464461 448324494 578873993 644574187 660696534 471559237 880360236 131201182 433371977 294251379 492960685 823611581 228420346 13788760 836928744 144758584 794707253 14520397 675965887 967430581 854636161 597078771 547462840 831469775 690214557 398977118 864979923 767359986 404602606 506159562 535168297 828032110 257506682 663178852 386479298 650444616 679578625 995213566 416059023 612161232 769354061 954305174 953836642 353337369 503823462 999280213 820228786 93560008 373790871 843862177 513584311 913947400 672827247 398685863 100806225 301566409 333870535 779193804 357813808 751251240 120646157 994023584 97669317 556802634 459005417 319245887 883262158 26976376 928875686 816680603 205517060 854376377 398177584 760954983 114932942 830400476 3655318 445323509 82879470 416970960 897806706 589617949 435542528 482405997 104349182 521377146 550097857 443921341 410130687 380155215 994421913 223868020 497381258 79361920 805121754 44119999 831179019 556616347 93872152 487898045 597827211 574196599 156496902 932516993 894481887 511936866 854423853 382731353 981815338 609562226 95873366 330897891 78155419 408602849 297923230 996688706 622330390 614547019 847408068 844198870 552075636 856661170 148500415 67483809 30840329 130372532 888273078 793241111 948946631 78586630 784085301 348976343 95729588 329309044 865109921 30862411 715117996 692086980 863572316 584926227 253443102 896799745 28586990 626204879 733162719 106814913 654404753 283557672 432482114 401912545 64666716 316343959 828515661 481531660 759426915 742772170 484364978 632384164 101056425 100280708 891189959 614047020 383984778 129752842 982013614 272168252 41422003 660820058 404141544 593688118 428177950 505905509 934020404 748023110 178007002 606066862 827107827 859732203 494547476 262514802 261301283 941878663 316700517 748511395 415958677 227798014 502781378 723650215 148853523 397754213 145782212 224603326 428782390 204331351 44163506 299275522 814921005 714987959 381369991 714140006 671505179 702917895 750397490 136720085 412905572 842429742 731420268 393019458 780622997 146485120 483501057 993469965 381434217 653349196 938400325 924899653 205379106 433542842 499365967 442533960 131156952 604530823 763359102 298848509 347484914 692709702 390180134 164440974 826956341 907331362 526359996 891061977 247801918 111645742 826346831 451573090 885091981 602354545 135825818 702014623 372551306 421433581 238525986 849742227 134563150 755702227 445973511 532084909 733775368 743846309 942229304 662633204 880893711 176990829 603090622 846368353 904937593 767432766 591395192 230400819 129399928 74805035 805497757 744133221 914317935 699228261 550809939 560166672 723499954 11749196 270280503 791099445 933181882 35361323 853402246 595821283 608655098 483008349 574027967 499069734 703207867 28495912 896112460 367716242 906971711 966652338 222486377 646692088 562288175 91973968 654099317 867352708 921470492 716275497 309506685 186527560 22427550 961485272 849271458 740986697 611682921 686128305 942329406 612499323 936296507 602504213 934195627 387906347 993075449 216658285 539223749 392685622 718480425 398856825 380933595 994540763 829852756 175083715 574228671 231695546 408868019 579617014 575225130 979008091 910402512 774508072 858746474 278134538 474999206 376079894 711400275 877209131 145593601 145223987 386823735 287944920 359266655 499056126 216561152 111154382 134398354 71366725 542792920 490442042 421518713 841632638 237545475 294695873 528320270 347974827 496314306 520942945 440175428 988609317 863790706 803889243 915337264 472647598 31155877 382445522 765992218 753959537 433289551 957973396 149338104 988043481 954304989 386701478 926468983 585062952 920836486 295526245 118088192 921712344 168402374 417481390 625706702 814557602 339192160 467564427 131671813 440847521 428002409 341043773 31207128 379580113 866050125 57383828 65430567 740702411 317216611 808067021 829226380 62019656 733668494 206029933 880518680 12091607 9019655 119069298 647251531 850787082 896836977 740130350 422136921 57620000 335884714 817297510 571368737 552155452 433333476 544945260 365599278 640720140 628993574 399076086 300162454 357477721 416006994 761558394 641523101 327291714 185625787 965217871 733405132 880394463 479052801 573916793 146178886 227238682 776803372 558832746 819552105 309835558 184353018 56133389 896003127 558678668 499146640 122551280 428894171 455051134 331125716 756945405 984127189 18671166 528385736 590706920 334523017 474052904 611004858 859033090 354608193 625390518 560143642 328525701 883539459 926348620 647983586 278646042 272463498 28462121 115819449 787008669 994490392 859727614 599851121 381544929 685632194 894889795 975428759 217664556 805876575 562391566 19784615 653439530 796243435 340284130 483071718 640074167 473419105 289189905 51388744 330043213 439931480 612405096 552788010 754112427 279545259 789992362 768466323 965287427 779067550 360613790 663562804 859344553 837061095 993117211 251608264 390818791 254507621 983305903 760483149 98304379 236439669 74148924 429159245 647238121 927128838 933136132 143753514 793120908 432267431 85454625 252823915 576279171 654419791 338722966 192435470 775903708 832530854 168325450 935090174 756055994 794975005 120202018 182811825 912871914 734651003 576024956 670263990 253155971 185859504 435898176 798050543 398043950 293716122 569891534 908689219 898174818 225818289 281357680 483235219 119676495 101585676 162290152 419587907 923564395 811077237 986219506 138560378 906376907 310405756 533894561 686591861 704134486 169346374 318723637 122546595 50834510 903444242 663555067 815234664 708759009 849068711 866348766 640812878 672411609 777426926 64043982 252390618 61521764 452874510 96828628 318511738 711963010 361179330 714524140 239689192 423067635 985434942 547988820 677055891 682556300 192235357 314789638 590721615 137308621 462699651 181041191 801283777 778222934 84145864 106950185 424448151 49322372 757510548 623662531 384380096 573762050 659015330 388044552 368569569 471642544 476379304 193481950 489118136 528018290 848739847 61763609 872691197 306172899 47238864 290424213 862432125 94795946 108966676 262503059 271383157 337508022 149729280 934187948 352420339 647383008 497251965 954296076 19106340 717830812 64745780 367130900 820471738 96819708 509283871 708015729 208904588 51362285 935565213 424463366 97924329 46181519 273776785 105820019 477265651 655427444 401823547 931842106 535044099 73642870 494172498 359567113 345747460 166842522 621170286 92665443 657004834 446463934 84667519 813855959 813341833 466472886 239426550 668981075 864922105 788217907 410803667 672896098 336047094 697406270 295982889 775133343 675384712 530130108 390607291 849296469 798852218 588129393 23217372 317171094 802494671 295419806 54305558 926854677 562942486 597429576 197500302 572299533 860185434 488644646 430837290 432953924 422501816 978619385 785608694 308295101 173877015 70389316 930475127 170686794 218190065 464182095 292134899 719483700 668721745 887781334 1408306 385188881 52605587 727494897 438216042 451533246 184523627 106182196 839387997 435048362 702805928 387346699 334405597 741592361 309373403 340331934 706733422 373194640 362968046 101827516 658758277 53446039 406979629 620243531 152210310 331210446 532496341 334028652 304565878 639396945 291455837 60775360 836564719 391428200 751007756 783860436 472199060 967252746 984999988 939544416 19450767 667978718 474537913 444831736 797183202 243880770 227837929 891628245 308272672 632664319 848579203 429906023 113279422 210237800 809507143 567858046 500951866 911610699 975028920 249943006 190534419 525168853 390708724 185243016 144204999 856221578 390846650 93457302 834720840 624814623 764469290 617648630 664693649 93117372 159778984 879018711 106707219 448347414 144402812 884420710 921997681 54551541 65298605 434204918 846364263 307998509 93998082 276117563 8672785 935788562 548433842 906852242 684299034 774033901 222114105 602614236 464038620 446134588 247523974 596988687 570542484 576523118 426541527 270641041 284487847 506867505 658084141 658880849 546432195 223182455 53959216 646545628 233703686 492507365 911177425 605965093 363434623 315911835 602038109 532082472 329308187 490130245 956712538 798909026 58645265 145069484 329117909 698933455 654950076 915530583 884363664 420297746 669874109 492900873 272898722 197355343 968835337 786878255 321470463 243654574 890885287 618830323 868622759 269767714 359527489 810828957 509338730 111729650 743197291 291901120 28952622 532386864 32771839 936365076 45698867 412056441 627547538 140678245 533175021 21774283 436654537 115504625 424139117 604229476 588649371 715108694 719527706 841208540 383158613 843468380 983478050 600992161 808422647 250240180 951772598 618357685 53346174 199089866 122044592 992295380 610433664 359775861 860052128 810548785 370844563 363485818 241274399 463455334 972428869 613211855 374338002 604353290 427959531 250068329 428362397 885889655 908688917 166306064 89511515 318901947 360710576 425459824 545715514 479104455 553272790 555577464 369695309 207020966 583236648 309902949 908135694 582965445 267821324 678003220 724023852 847391767 419908551 243711685 859965377 768899948 764593599 872864849 988247843 520228179 804478329 865914386 273349956 160227179 75104250 192866137 647665558 526615457 742177664 518640410 591427571 235593765 309384241 855242899 996363046 746823631 704532493 418917259 19563269 110233567 474351412 13268317 315721795 733011110 494374432 281832632 284964039 906457473 914981934 443257047 198575913 160940919 93245058 170345450 80520605 469465720 973183583 454464043 892622738 83385866 102248921 850512068 203951599 410723891 646211623 80564340 742185492 884176091 860272000 366104936 975289483 471813381 59176163 753474554 588742229 711325173 194969555 688062890 231096661 284074876 549205412 613123393 827328875 380355700 687506392 21791313 693587789 536856464 79173954 906212666 529233695 244206063 763614700 388820533 964828170 255807833 412120626 659094670 883282501 281326388 125596316 566010195 542538316 508324761 902993790 331317003 979460726 480198590 11014801 124313614 587612963 387556527 799930181 724380711 431945767 282335796 407138261 711811051 495027320 69100258 668323502 363208909 823213817 399877925 606956538 160054671 743303245 638955520 235755473 345963201 878761234 313636729 909085145 798824055 453110332 197344002 292839719 121187476 533437990 808713559 765211646 39913025 967658756 390837616 52883472 551271753 273590122 500415901 522518095 717818474 665294313 35458551 327210191 633751074 264959630 426737117 72289139 229173108 585341902 29890735 749563444 388882198 104252386 969766438 785170745 362580931 309123340 564498424 669913163 427623453 404232508 575214529 375779662 234131973 189432346 277180849 639015174 489504151 46092891 422991225 856506669 913908388 614327843 122880024 354682109 622854719 856374952 141055715 346067825 266560704 543507077 16320771 537898220 573771092 753058205 409017613 64215435 740639156 185631010 273247833 942263265 824230254 621635261 549143405 832086641 257897848 508378174 995346067 390587272 657477068 927833695 20213508 249850591 990648424 657422126 207388204 316973983 332787472 287821862 439118613 540684205 755192249 999813579 435276771 180877469 438891257 274557617 628325771 568124046 936188124 668569677 93164134 440846972 788369588 76811013 379388057 45327783 214534777 313155743 82656272 997492717 718540699 359466327 640351892 373410611 481400414 403078107 444726706 551375680 657629991 834017959 179093747 452847287 599549465 874640245 932207703 535869652 221048169 29703985 792449056 575624044 907732500 240408373 667281493 374948213 198932214 725139743 828590705 913565546 700743646 308199426 950815081 704324057 395596305 11073859 12544644 755771114 146430238 238397617 212669943 744945853 442029609 314111730 214371298 85659932 842209366 834790068 623298419 285315407 636819137 546642614 947186567 646960812 869893597 150794422 408390902 916681472 344149148 510464824 115381762 979911214 405636163 688236726 195274709 483119183 478955476 208847038 613943098 712507586 923314045 252809080 579058860 486377580 345229468 405524788 520890735 456444636 530057960 84842309 828207955 187019524 793367788 513312238 442397771 962260811 238006902 59606281 61160464 105961550 805115319 469565264 890427494 649540913 584244439 80391678 181349062 865249452 453750751 424918846 989452888 735434451 768796030 578097614 804673620 620000917 103486369 904063047 797598354 88480253 152761570 205838364 890501777 507763991 416151453 599217639 356920102 974146637 496348444 1200646 873364390 998243354 365546546 125816384 112689189 385172571 734649532 830469331 383551066 70023703 65297825 519353264 631911549 10137180 208973763 224701506 840562332 725805657 479766226 80158582 702852413 769114813 806700395 456544237 301590923 472470112 358998649 922939796 972692142 6861675 66719730 171328918 76121897 536278271 337470456 83375247 237266940 722388045 696215250 21075590 447465468 747939229 499337263 642669866 56922189 266380169 828329731 616218297 322424569 783450423 651874630 35755974 423685837 64830212 494406948 765054962 506916925 841539741 330567877 105120982 353651865 860488851 910791937 359336712 605453066 244586854 153002774 885789545 718208038 417501544 393888528 648784484 147584745 395486161 609579513 282464685 214308468 622066057 539256228 350768063 388542121 758615981 801494684 355311700 219846465 11648620 262763110 667334197 467211735 184210264 164760561 281950922 945875653 580844765 156299109 182855842 406543794 674479443 624594765 612656521 487224982 929047325 978170311 268884440 738785764 536650091 413137906 400325367 233917298 4237683 514678778 370755755 78983480 647913449 85979027 604634338 420473494 955211211 541338669 449735611 767599575 498201062 14254679 204629866 226013066 859715177 208692156 567756459 748602108 678458086 881683992 448431173 632283033 303345842 366018483 880196815 562086913 402402106 375762632 603899946 676607536 458609794 710359686 335789561 146269596 882587453 341155853 674040313 300858509 969605136 135407575 263496904 464076750 193474667 316923302 4847833 297363881 846495799 375077911 494683811 204629474 365008855 404617477 904225647 311601663 929994036 788165606 713459201 744487557 288537473 892724802 29668480 319775686 728190520 978768921 903632946 368694599 551633442 121473623 361984475 345325161 762073494 271248428 486495489 223954937 302604988 416547734 826237098 292214323 65948131 487072787 916387300 811879759 891742946 576580694 859956251 990455915 971976528 302535974 203373618 635261877 576894993 831369227 298145798 827470330 814360669 142475913 861345552 29356927 297255364 928885057 685762710 480576370 893357358 924619127 276620837 890374575 971090524 53364440 176473457 82590803 34498431 962083626 69969687 28300529 153806750 59236387 322586170 876657669 138654604 250539762 426245694 11725228 741634462 775969220 611400576 371760953 770828459 823132866 760186497 238830511 246605638 767704136 818213981 957810766 787419523 292580814 457577901 265779713 967183460 414543860 267639873 722778486 297895346 812227097 560227998 717293901 629835790 81595193 159590189 591386884 285090456 803667972 746215053 200563631 428406671 298310640 88221992 258121834 850121453 776662356 797218272 697264599 519773979 950220960 104077310 662848659 644696164 399583073 346162269 159006376 309016405 309204392 190991555 45969590 319926002 342770960 2416264 458640111 523291978 227215158 87871477 351235893 668392325 335223828 327935368 762006670 791866843 858842024 716369126 894619235 626268539 80791428 312011201 231624052 320570921 437084199 696050267 875356589 24192820 978682707 804820715 895302589 618109987 718916027 713780153 448193073 687263522 214726591 315533487 194795336 902718009 159357746 672989417 764224700 92705271 634076873 792440935 483460281 524291549 85966938 917914828 292994288 541758021 467494554 691624899 235815196 35698547 119102994 980419755 252309441 221466536 354717441 346913426 376327243 813299463 986882326 68383203 79237344 148708068 351415846 318279512 413340512 380543651 989610919 439216323 621494018 14997951 891657214 305696203 792765441 122072154 97674270 191791792 840004395 288015967 339163340 567513762 876634885 837564559 309499270 161190575 852736259 281429468 140458333 993345010 961291730 525326047 485952984 641063105 438359987 712897822 328423970 531853696 835138128 118965130 623555578 464359110 167143305 790067124 522642461 602384148 494378526 854958003 566250245 850836367 864361352 191744398 690205354 796386916 536058553 823607178 996148007 797847151 754007140 805717878 552733135 651301731 953826132 931273003 81935928 120732363 784920308 412066736 651785789 4033756 35963319 960291577 550012197 485901636 416029601 847784487 538800944 168637026 240827822 939283417 927159851 722268098 226626885 976835052 416526921 604867710 611634028 656627618 879019529 931772481 915021767 904654336 26679208 356393385 218787757 931682542 11801673 904641438 29891134 880960646 250334286 727524715 91709537 166313446 316212268 945142920 556484017 121036250 373480898 412971189 567385809 383284401 284093857 402622625 315948631 616069988 932681079 542958533 612189859 486580918 896991274 84057367 615817625 745167379 245546396 163938514 540648394 796854209 346947540 623687390 237171383 679403997 710212753 852151756 45677900 5496120 796820924 663988924 940889513 183031888 554094108 493687496 267864773 815355683 292306358 882914587 737416794 233955411 232525894 990966945 86928691 338691870 470887175 590847716 541865009 745486327 697806375 567775086 444728214 417901691 337212054 684367047 35441634 532027925 981137703 986617284 546561925 713749205 354304787 810025626 793105805 105891524 235058103 797469164 406144302 240815497 570156310 589969553 921943774 609315827 841595938 720835918 986842284 632391352 204184444 722462768 474820857 395604591 109359599 339052627 533312382 80047136 288477696 174491934 638392586 509399787 297921636 945606439 523670405 440227982 481885134 105559339 630489811 900305633 304862513 430015246 31585719 383587260 672286349 700564221 221812923 836140023 529409362 571612254 764349602 977526665 168163141 340761196 941844947 334564727 841757223 858104134 930125249 99338129 385593161 20396782 193412921 725669647 37415913 781168316 933351403 837848949 377988653 819274080 127401243 811537866 689739707 724168316 813588432 669254881 740411684 153399713 968332059 347066166 345304558 7121287 642066277 980171603 539459052 413774980 392567775 484711900 180330558 447958898 402186636 113568275 587563090 614987434 462148247 154860567 916434796 742325798 156002942 621658773 512075157 302007140 650557653 997394783 449105488 70670954 461552183 274003248 810007725 235822475 739677838 500859882 542919792 130886977 298307679 870791374 961950938 171217203 554375310 208274129 926044241 114605130 517761947 803969163 189255396 906192814 778462351 175714103 383933842 200402507 806496951 211612585 288936996 633121326 532665367 332425843 197747823 815609767 643956123 139332666 881220964 809690434 888032605 532394704 188798309 23031777 722003600 319586680 381134977 994417687 760896293 705792211 324227681 400809061 344031980 410038693 580041743 30333601 443746310 735013407 274854445 299963629 151748884 426498518 71341768 528646007 254398503 48207472 280792547 239373610 948070652 316383087 982987955 613649091 874400839 497122170 191803055 239150457 263321677 218056000 394348018 836102739 739617236 378668442 78754130 646691239 20193124 73923560 786004117 752591139 721834364 368221394 855598807 507773830 875980221 833640473 432380446 892511902 143823077 396088818 87650309 323573077 907307449 7265307 365937219 54414112 28004961 400563356 596676989 308429482 261953334 290596488 89958476 383834090 857722791 315415762 44421931 198343537 240990608 490635565 526983341 104811360 140359491 575995929 542602838 397034247 55905752 887522996 484249139 70450648 330210477 428170603 722572821 207813895 494386647 990806415 570692510 782968449 598934896 332841215 950907016 546153315 536759116 696147005 162056881 978242914 675639403 45929716 279879829 32193058 978872543 87551769 583989154 421053792 74864954 627274582 875310600 385363145 408097539 216779985 867666167 533195020 98670643 197590929 851361442 508165308 38403596 994373453 644300403 42371214 428902310 594579220 54825125 346989416 143823665 707029984 329552370 163801986 273129676 531754136 158795913 436860042 11357704 39954013 378170975 415059647 431668688 317530072 476793214 694684430 332756827 693781641 676816568 691183688 485783714 377243759 754026142 459956229 510384849 910482294 570233125 174021372 72965470 888987010 145892190 947102961 241777335 653253178 110227159 620262749 893846484 481061448 171351632 871148244 790502570 963177441 767389312 489265695 505118981 447735100 39271098 65642044 977090214 196666215 923311829 772745318 507825079 556592298 12659497 24396307 926641384 420608917 126875191 233519486 738696341 983662191 447504964 645267053 943396939 246880028 526833728 638511523 758203684 419462068 501866153 935519809 443824570 130995180 693872888 295810890 897110733 133275922 605337263 341867862 572103614 819649488 40059605 601487465 241908793 258216994 266260653 600398448 656239355 156999758 187294210 282152746 63704320 276144499 537224247 828728897 200040303 894317562 738020554 191773151 722735245 294772708 807158469 417307935 962186468 300631588 917472731 312605095 440094770 652858385 415815559 455229011 942435008 757235092 961094059 7080245 705980928 519195380 33109120 423269519 727229315 431944424 155462239 949481118 310195294 608245514 2178885 408728914 421484255 938455547 379759731 231467198 193937578 730664556 549773278 927333027 814250331 39954956 648311952 817183936 783392243 188554020 588958949 814324857 335356112 54508638 206693259 103937866 107892788 9174743 333062577 280335229 373548288 796881518 653944846 501673868 132054188 355875474 400176212 633920939 902072965 996255090 992835956 892160515 928164501 142091048 92121316 636947789 638045225 585734875 903660331 140023413 532976272 802101644 875046195 554316245 574970472 571138921 843751144 346370143 360906448 802031155 588587186 610740169 197078892 423922338 853232714 542745771 855401839 177587531 604819879 321041339 570527251 505826113 984812189 641681968 566633973 181197082 14129907 577664975 650205302 794675716 379194479 437238579 542578504 945812738 182785793 507380667 720646338 80659355 541880953 510208141 407838637 496935696 526737225 758790183 132255005 158235958 327719521 571575372 33800254 725821670 379717532 285627388 837042801 817101609 930149220 38550555 569519865 581153760 979995563 640670616 17913411 56891258 234552874 999547368 678161184 186867115 827502373 853114059 30878685 121014153 541412399 583081710 785903197 162507811 177484315 853237857 24345404 270251058 500280330 132215167 862830755 138192787 424488818 663286330 645909701 991410364 188630029 809613873 822979329 838065360 961770908 867273430 619583796 70669178 161849202 155890132 660716979 587204328 703602165 891276146 659112137 966737011 295336791 669513935 73220285 909641350 417985329 659675482 747449743 926388367 185587337 50176926 869109442 668444127 592626068 94826616 544595942 227801873 427389081 729287464 979941058 438909253 891167074 698323636 485258319 895237173 615962409 669221817 821210625 978245250 994589304 691997726 120831678 470679105 350897767 510555966 589208239 574275737 10082751 911993132 137351980 127238709 216689028 715954577 147457857 355505823 507733163 156837378 583796616 748171211 334938455 771443187 159311174 749631262 248939491 637110602 964048021 490369325 608700656 851465914 533970953 934320247 514005448 650007253 504919059 789868803 397280689 892958329 381981112 445375074 658914127 573588466 215885738 266149236 885132754 273484319 622199778 567811237 828390178 503889552 329967929 418723647 814835234 780530703 840399019 601946550 382574127 945328127 381769874 576498668 7677079 238161658 243184364 758801164 303161567 707190269 634831590 90320790 324053539 159772666 515311775 217709851 930403977 762222429 162280863 55347305 931624126 245489382 185948683 962460191 761939206 599480435 381079490 273887204 786505991 335523685 898499134 40591374 164939205 685987925 513089439 603346044 428434409 653296238 210138249 396946764 696355274 196200940 766878139 807494737 628380257 559399021 471162999 998184752 719200768 326255212 324459352 796603566 93493662 954932753 172890575 236770529 39211796 305758416 68966711 800677870 761824601 722545015 782004400 82615007 13037560 702260874 114764275 857742170 999943367 945789370 55330910 695997029 780346306 46238083 98938703 848986068 535568570 781156111 466517096 415211609 814522990 894736939 2032678 10894599 108842228 960907120 443249637 329557098 265117322 152492596 77816573 192260799 440471262 690288679 713681034 245052149 85357480 268060544 344998385 341289442 771569234 668452705 823804142 568521264 531151239 3441242 941745798 515094847 823356214 141390223 582778257 110389896 456702491 141594231 265753766 382559909 50141097 402494966 692386476 143593865 219418036 104667083 296044136 68881364 624811658 460504308 974306894 891170930 390690970 478882071 981148211 335741296 837454831 621484061 277698458 7099687 162914935 87425243 615179942 95929778 356604816 884009565 856866989 820696552 889367597 341247425 615738408 672061441 219369930 101733277 315630846 915516288 60391288 383408256 807997999 277012422 800421934 426609123 641676165 950839137 594530669 758201909 445755948 583803029 759963985 255825192 422701686 315734275 636071658 516587356 116012239 138077235 711138792 701316184 207578808 335519226 151247862 444627538 89709821 542968175 306905648 150787794 661590424 940181254 944795109 266596473 631577928 35856419 299167416 769191239 173671521 902987190 294040965 210718950 397377609 86556753 308518975 257430951 324878099 819843419 410180920 338181841 400360834 12132041 809894541 610728922 221445970 782320352 63027978 56503331 223536394 428261326 905462502 480276029 136226875 6201271 942419663 306177874 730172336 348458763 871862000 837681383 208522621 959292935 55298348 801459811 314236555 750417612 868242816 371245913 80507149 36929300 252675804 58900909 741471582 101384587 717089594 964641498 418843446 342468281 814875629 859842240 539833751 414329416 304986116 487105364 22004434 348149578 899341612 900523847 14547246 153482470 920926606 135995275 467585263 370657697 104482468 665137086 349345839 581259199 268515420 27485804 328727389 590264044 641867101 481717542 648655368 405022006 12597602 75397924 696185466 314635146 93471086 170430381 110170794 594157966 612722832 372416502 754160644 662127727 416612224 340604185 536423907 577288759 195965399 390083617 20464825 736733047 360994536 91519535 284329875 966508599 965543757 335393136 51712968 491263614 422932597 533672367 790611302 876069304 224459760 331405756 643842656 494470098 590740057 503887002 797566721 119803599 514746315 306432100 501117312 963797041 813112257 32856998 886293695 88569800 448158900 335673925 633871599 654776420 748603421 678206081 118308183 71568881 621036310 842942211 402717784 440480502 328209575 606390680 108400667 713740783 617860618 573901926 52760696 482210887 429010880 203558257 308623361 275756971 998772474 616835347 569272668 282837574 654285085 390569969 191663058 366421754 365081206 442247937 622186045 112900878 350572633 390549907 177235588 636945561 98160314 661013447 116437571 937536251 616635441 662927852 824490534 128746307 7009217 954451228 317373955 547749268 589354999 548833853 314221732 591084036 350510597 708351644 548370974 383850040 291504944 127376243 761346303 717776889 951461062 195988100 515754313 203449497 447406865 9575156 610809568 837767253 404345515 318857805 866228512 966598909 434573185 458977690 518860686 757842385 943192891 357663990 786557831 414730916 428604494 457787341 910767735 789546099 333234890 543482564 538295291 938146326 784019166 329581818 958620667 979630075 984637342 944114745 90115173 469713105 479981836 21693217 705285202 218278385 607289298 717379463 280998204 277533756 332028320 11228372 343458226 394743135 255606027 278607078 292993063 856641503 522535212 904334962 744976035 147562678 773236691 567859969 622020237 357259927 661212011 202732237 102045501 931639102 903127863 858264795 195094596 603871755 621119876 927999455 466582639 935288266 777458852 533361998 986878280 919910411 752053839 129899615 514580792 241364616 108576858 312839245 258356076 153966222 548738973 718651384 409901952 774181537 76859381 851716058 57894107 650358267 39131221 802771910 781801654 244522463 740520490 344367870 173605967 939184142 18991699 897549243 734000535 634025285 920562034 782068554 304366004 614812176 239403999 857209261 118957277 837293572 504210724 739249351 461077653 260630301 744967875 867237606 118327691 332588649 131254648 163167961 862173612 829834574 669578858 203364867 811488733 237351306 95250535 340681857 725695489 500830469 102811536 360530896 325009161 891069107 770181069 948867904 719424299 190343050 236241984 213806461 9577860 993773797 767587349 214131828 223789924 186115349 537338302 933263474 160334749 472814149 727127374 293364001 394350535 924258908 622384317 17587260 391760218 900353338 2833195 746250441 710750034 307963595 141458203 986456513 569900645 560592218 144219642 795896225 819492673 315992603 604111542 769826438 998548621 872043185 295719292 16317891 288892403 347921177 234474255 772997270 53859415 203518686 959689848 428903603 570437468 652173991 511840814 755221540 538106891 641396111 634578844 548381700 814417770 470168936 87730792 552554502 693452193 714333223 960274684 711690340 732617284 928179152 58682261 383230673 405171429 123515393 548594547 289677240 696582636 545739952 739990082 515808767 795146897 831240990 959909348 911114452 493815466 409018079 20911732 960646233 51963006 196068748 11327461 925377698 227572824 833147458 876827113 529608555 103058984 909899538 423728149 260223703 47195546 592634961 168402930 257586377 181569915 817520913 56250154 754456987 606036286 438039291 885606028 367670281 535746552 790667412 688573799 808766676 313974720 664485010 678847754 623354886 569178557 530570233 839504143 335406513 354861787 749462406 449039901 820379113 274703086 998878088 272257472 144889801 135642687 72478494 837799354 101031439 346571907 512209883 780229080 642965602 605685273 710929034 783000369 398774081 477633000 667243056 176842923 71649566 393475913 550448631 202266624 479355398 13460358 75456047 502943027 143238374 284659215 162797366 178324323 355924441 145563295 849943936 31695524 442615083 39961817 38088018 477079405 803162746 617449759 38752602 974382516 192331007 805445171 798659740 334163242 915014951 241510373 545563210 869255653 38006345 747953578 529542964 258388276 267429492 779896365 80674385 871859750 388650916 869770842 196907914 359804791 291291708 752407528 228356921 890180779 807021007 24460954 353208251 231369416 329695478 969628628 443717411 366417483 552162527 496474934 101883264 475292335 867150982 737600375 724770127 156271163 543714081 497972342 315088774 342903055 136759540 825526408 912993698 15891861 848424660 594828026 329300489 845144316 988753640 271483668 862211593 97727133 962546060 64040360 2705269 768746520 513251103 378129234 404915318 185840803 628014850 720205532 813669722 635124481 17836198 561368498 227287908 975584286 156432138 26637182 420076292 863946070 874674322 509553492 38425369 436679866 765261853 925447946 774344607 952553292 731245912 428926791 657267077 84591402 458641543 253987828 209779888 759617325 24881675 290760180 267901249 242823942 678335442 991650663 104546514 664819918 140321050 725202012 378059146 905681530 238205801 407563234 527128428 150892201 694803051 250729157 901849101 455675936 759312175 917053622 501778072 61347659 769705930 360039674 923726121 12313273 446488157 653606948 512843719 356617694 345045076 319645550 849294408 81250587 629202906 953954872 729497851 85487224 575533450 540113651 333720362 974139206 350976662 137689430 642356532 772245134 245449528 663193453 117711614 315532880 348152484 629147376 765458868 487298279 820605542 565722497 254900927 545852854 123490275 546237377 649560225 385876047 49907253 196646101 914491598 27528869 639346330 815650093 377326223 63767140 603763974 548084760 368016637 775055480 478668790 997439992 587632688 316067076 973869189 513086466 855966795 159626497 27159258 353498784 900317271 334478444 631564164 683533244 730309965 36745375 964194949 742369864 419470284 346503574 849904156 380058566 271979571 90953298 954364439 672701836 858028883 129455517 940518979 432272556 996280409 822328144 416867102 485671290 236282284 282802919 641383128 602524274 283036815 416008625 747303877 490154542 840071289 885676381 832165253 600945318 591567665 487969518 329205430 409585854 355753027 859902330 773201095 213379878 943741270 398780699 616508237 276672464 458238476 452412593 972877496 28397529 927366828 746397174 89888386 527810686 888737577 413668235 839423515 126895446 565769685 769220705 101137702 799347198 942353694 230617085 650933552 195936199 529887894 872124288 734652784 225790673 706500494 926769587 377711519 216329903 637414710 70265798 419429182 614654442 147253498 211139213 911327473 685799884 578677555 466290187 991841793 957730503 218633445 509029455 198704168 737469609 607560366 255946256 251352627 448418917 88090277 618842961 882005633 706923173 633665275 73629702 116591696 464568375 348967123 32114131 856753418 812144530 251497753 798447986 350073948 916051361 573040190 704799625 893146390 989323000 404411416 172731531 649150895 971765218 297451437 774450369 211741308 893483825 576630147 546041107 451646266 640196885 245411072 950438162 47191798 68363685 311457733 89479987 97828140 864965365 177233012 37015873 519994704 263850430 398130846 423464171 514581301 80689948 900257768 612155607 725452344 72185237 714043729 99355966 42869115 312801671 551920759 35610375 970705447 346791950 688987878 439462312 317036281 656192725 383330892 223127118 644247967 561665492 850126499 952489174 681902997 210254089 47490782 600795736 863566780 90578 313403173 654338476 738526498 662997295 522571194 176620428 470647990 651935423 946580059 223656039 739636737 544486381 597980720 81527880 756301214 561596534 275727821 52876109 899662041 518726731 589020067 467569555 107344599 711213970 314229193 186301500 667527999 725242059 722358246 978274654 661259317 974724205 976148962 747319246 303552217 615575319 316469910 963273814 109839046 534412411 125926151 663075739 47076565 984552803 218267902 927924443 371117484 533579309 190223418 770182589 423335711 345669093 353449632 159515786 745265317 614387844 406194282 640715683 731419159 904869924 562586663 577307622 540381733 340280959 925391540 522942943 457196366 671791044 167652214 184759801 85835498 525567020 533784452 374500873 750887172 154619831 665901466 751727993 977066453 979715324 369175320 617955853 338551667 869739755 278007961 545262563 157395494 932767907 590138648 420117777 938345218 954589318 426337194 30487359 243932942 610429802 363747030 621711553 46339657 129718436 756353885 549610234 246237724 818140787 136098737 27310929 850328694 342583073 660716278 994779749 78034611 177106556 376000095 790298914 853676293 42900202 446806396 277888212 967490449 655860430 904252212 164873645 892651525 765708415 941855565 438120774 357735732 145655371 381583011 264440982 545413458 784359349 831491374 864347976 295896461 542934070 731342457 612140205 107857147 147957332 744357361 551152224 926534042 966864809 331921079 272639126 47722504 708702004 684683881 408825607 275055596 966610972 186337538 754976850 95944278 402953391 900024949 644691086 621134065 534944964 805656266 464540238 118180820 247902393 783633786 999187947 254820549 604712033 148094409 954258338 924173916 180970250 551865778 476949780 194245346 302837841 892820084 246333344 522080109 379881628 787107637 638257258 529181854 190433429 802138733 913998895 834777279 439798895 664691337 846450184 249637269 314970436 240966194 871587039 933794932 643171034 674860297 969129887 979123137 602986202 828433861 867082443 985897007 745945148 860775428 452531263 264643831 819024722 619092965 961674361 57678436 315593581 62895364 328980394 860660655 907524931 340563057 880306738 961480206 610331870 682882279 712560897 871910229 649025887 755300227 930771737 787751322 149265278 96784393 690899586 275469457 723325889 158896974 33234898 646295057 694102091 483809001 638718791 675553945 421565578 267477353 342483350 914231606 311671338 773087802 584648814 81680972 543824451 554235176 820600097 186452299 141153152 301999727 738243679 357656402 976657348 821940961 767568841 127098429 112201810 211192124 534922347 959525414 375686485 529087367 686175930 714396897 326262624 674793836 217086367 926177975 76881972 678775025 586633209 683258535 135937782 672964200 341338474 977223341 933250277 494478099 458764736 549816054 103527402 238504929 425038800 87904769 804403325 921733427 903517908 821859560 782052644 99923114 882889367 311036980 218535782 471131728 730485718 830206346 771147896 704539264 274781670 56849180 582788333 291586757 284335798 315416935 753706984 996964767 265602 453290314 797233650 88800286 859474945 671854429 922093474 363854045 674711967 445550462 995467809 253703901 805320649 919271088 438382616 420706836 978498126 5941784 916329969 424934543 768202348 134613293 163666875 563295267 571645229 687868369 164870232 244431527 807799299 970389629 826551224 979606134 24358649 570520937 598108153 251589352 721501613 333072662 592726604 454123056 520582703 267224962 761895855 88333779 729981026 738134772 164081726 986539414 740737492 491875992 33061879 387035449 246783591 566514792 375078896 649661098 296963329 82140938 387688103 20469653 566839404 876600927 380108740 937196939 297669954 405690330 252129529 168404497 688490159 675443583 897179032 597147193 415782189 212582966 47267873 952112830 236525533 677331743 513869811 701615438 524696933 637189157 838663812 53210179 257784218 628856074 13147487 454248062 759964344 952417116 674325452 734152587 801235360 127088418 751626312 886262664 698387084 290795259 859096926 4407419 115824108 205329691 459218963 855267659 840555214 356886708 810929671 876114618 439734250 179515110 758820920 177240862 783162427 709847564 42676645 10114309 901939263 707261714 189890946 633744202 912114156 964846969 163995434 36815835 523143655 486084167 827594410 784187304 78974204 996225661 745694053 494950511 196897882 149339066 796901383 251005454 83294749 381491767 517161639 8761386 765372970 524479149 221737027 139455534 940257900 886791587 442303334 552152446 50546271 816969328 963012043 159958648 356184166 670463705 488784445 65319340 811471792 832145192 526228111 876719799 406849481 277155068 144112498 81916738 391023541 608390636 858934395 308996640 934308436 908613202 833622865 188413766 969607435 30931707 605780344 459299364 635478718 951255216 3700855 387137695 875282212 170427235 756821367 947237599 992920924 931690288 149844377 186202089 262095089 814295631 921209937 993645922 383436483 513324453 967413319 995934770 223262011 646835385 844059704 881028514 643567968 523058021 422196947 617716993 182206971 127746134 822873934 425489797 950736774 741079973 595129997 415033123 426423512 522116405 905540274 751763656 100685898 962056817 945522694 512419763 835573816 327848572 816170301 855328118 423929970 799500520 432879946 842063790 359108047 284708127 26897836 244058112 195141637 821538985 569288217 254273501 992893007 285800602 304090337 999945101 988234336 436681069 914647958 758556992 960636461 777913650 873873872 407488361 335011449 550063508 81608758 86944990 391483908 874765064 222163062 443574594 467745101 382122841 139165746 303447746 510157930 789148258 870850651 369341563 515377810 372251855 528141894 459513626 804493292 91430573 669744764 786336920 433649865 531317360 216123594 93515343 433166760 79476446 493236031 324253569 37878270 508204903 54419419 981743227 952035088 228027037 420254584 732001877 288068547 830205849 356338863 18593869 880697734 141629064 451742998 245237355 649264397 655045010 109347979 687729335 873527172 616618375 744304148 409560544 433740421 106106711 923498451 43150361 557172740 655744316 430571916 722191029 824174557 602793550 284847265 275545269 214473041 750104638 999265156 923825972 318694593 708767323 956383527 373199079 430418208 102149775 207912833 368233323 839935726 762548456 929403534 267361044 826474452 647562567 868937086 337026671 365390702 480339672 122439580 585601979 356258843 292972848 763673370 417796633 854939301 543598902 429264285 915373704 94597422 576257569 676495539 359334190 335633047 351702434 959776488 172534772 481858270 636306274 704940083 772852583 444681430 503092188 773119189 794281674 512046800 135852817 524918450 395032700 841203553 3007141 797609061 368843761 905664175 835734576 686531209 219221120 612380679 733526205 9743982 439336107 81938283 96430035 775435844 430429883 612068697 670261837 790180472 483541804 556701211 424295905 402519160 322121335 285314346 159715532 316699623 557068569 555530891 100220437 212641234 602313892 174859687 160344761 189750058 919547677 187230686 345845921 958130838 364272849 716815143 894739355 880380661 98941341 84001781 499059702 743172404 829174005 594757949 380086042 565728395 389877276 586090281 635198544 810308339 12631075 822598272 766097234 464354548 225875663 960752307 944773624 147332134 675153930 28822624 809950746 290173776 109364262 963963273 500769357 314563298 429139187 843563487 389571443 86122075 236666355 327404858 684748370 633356846 672053436 558740695 408707154 925456185 658101493 796723507 129372709 927329416 899163193 409121809 926532839 903453902 866419938 957877363 348402497 735159601 963552699 777999961 61381394 257861744 138306763 660632690 710289259 152227895 971012607 471353136 873878966 788130933 381897227 396571184 222931658 79421123 986308946 337325794 84649017 937615029 365991037 880749609 686743114 154806545 840822785 365872787 45187989 338687721 801354738 808393207 52026770 667491309 6111376 927658595 733348382 807555664 454243215 685747705 804001543 293729317 211646431 394819933 989225193 464958295 268637955 954108053 669980671 327446500 529394904 216445255 931263373 56880284 833352421 260886358 607335475 972102980 700015318 782092854 183170067 213062500 577005274 898187350 89935886 62471688 882799756 515325254 222587518 99152591 882442099 185281543 920030772 38072588 602500916 677520180 662922037 945633036 799979766 420058710 540559404 820561975 961532077 728921460 931114261 162289187 638315153 790473271 46032798 208502175 760767693 901347593 470695850 742562341 50139319 805723286 576154726 801580646 166609736 449401551 989996971 869277301 747004957 898866719 192077085 123433750 203555516 15512761 256679134 786380188 611664316 149151607 123135465 47804097 937870103 794053585 665501868 850099656 258716563 589107677 124917100 421089416 979018364 817730591 366612051 497104107 825682615 245997778 345645158 968623012 811520024 924291354 248523691 319123315 326579396 120361511 206988433 544905593 493484427 266784688 202399702 958481668 265194106 411847821 660555856 812362539 444369503 966661960 72027685 456704202 828117798 930593673 788069861 141202487 327668101 208837436 708535133 833812706 441984380 616048587 925446383 854799986 208104023 34419841 520998533 70986005 266899720 39517553 489484088 309707378 45051490 310872476 546918146 266327236 515701071 133619323 866604068 938800162 142773803 26830567 211942791 570893987 950212442 383929664 526257541 758841477 39481144 198985976 307263100 938555058 387318316 962416634 932259268 873035224 441806602 708506456 543346464 367686212 483566020 742414725 180040346 767331389 9248208 205856916 574299426 350379579 666312103 410089044 236179505 969071071 949672341 481352575 506690837 149973212 886426690 651456620 191886085 535892463 557894819 99105905 569294958 349738827 399533346 329031711 15899330 503740232 469577413 171255096 799172660 359454537 128368886 285771522 242483877 470154419 916890292 944881907 236668470 676146968 965964072 451787199 273466968 126478991 785743925 912873808 222819016 52984041 699728446 385323712 944830202 921438845 812104639 61717040 50407250 762917009 693164799 130406665 126870503 919002859 112112571 975737577 587037938 902951978 227446626 415739408 118688484 905165892 873804885 826242541 274191480 74804115 279217892 247317206 21385855 240233807 810130134 567297254 243652150 385523372 148785239 48472236 635570267 948637486 708763554 41116469 375893994 147325206 978332001 26713189 738236625 354732197 911908186 522306118 786717879 75355495 668878311 605063447 573787479 780569722 95360644 371093453 260412910 809905857 682460460 195253545 668779878 782271684 254125992 233702345 715796025 63297632 372978720 584636848 278776880 452860093 934940358 276805678 664798010 728776544 748118009 385632375 745736191 756229134 551190740 970606689 729844597 307449230 551633069 272816067 796274313 716379444 419231995 107197567 854521927 889364881 836564634 899122530 432613908 807329137 689614204 768737565 332575073 317671571 781656301 772588958 52135175 405582973 764600541 963949003 275648228 365088980 637387037 736622260 760392829 774768652 875341413 223842609 9612426 107675497 419147213 111036355 6012753 701628313 2542454 137710888 298801579 737419613 275606267 930836309 203832898 912016431 57504350 56938053 943254262 410420416 101102291 561169522 134077127 878522392 85614148 64055335 640157449 516595744 289842191 598717118 447147540 313266602 135812882 536598417 751956758 789248056 908598339 785517851 496814275 403054448 45832873 896967307 900238877 234352528 213979226 235164622 579607446 243533192 116911917 162147659 366694970 188441546 764616995 457089077 876457779 11785805 878566937 211885926 388619826 67808968 292817936 288072233 720165818 225642993 992121268 651182346 249866780 2292096 538363228 196952923 571266584 384136645 541706698 469011697 231120407 82640070 634829999 168229330 18754516 609081191 941944149 989853799 518925323 474057454 612989748 766598460 928944571 144024128 948645565 456243304 777733946 886390064 400122376 228704810 156006297 373016283 616375323 36817449 67733160 142335280 276465041 378854635 7672075 797411064 838806171 976823444 460147030 610166626 579710891 303820595 243216921 769664141 991889211 688001396 856528406 100825613 604711248 3919689 843344979 64912003 402676015 301965356 200342757 587678 207834115 664471301 820447363 603405820 17961701 165320858 58051091 546669107 571284025 218789896 466034842 959392916 286562758 468948786 51374062 172013961 817967714 1061215 852852405 563280954 379766808 873321811 118701923 396009608 270467642 513272920 307874279 664609391 785869038 978509198 369437707 830114950 549983966 89312496 686669954 111028931 695385071 526355907 368579908 482310003 103147893 87128661 498502977 883191087 952568313 334152817 935967156 441778621 509482726 626961681 136381028 424743094 642120361 989749013 558559920 568342331 586636273 926766339 905128671 935086086 843065389 449993826 981975820 151019265 218004180 974705167 45512724 9296932 321208878 82794651 414363642 236110847 298743112 299652560 524961005 209952422 743880078 435933538 516417040 42887360 880675233 878651854 746401084 360117961 104953102 777290677 608696972 399623759 272697815 668580460 618727211 249770584 294194609 813798832 597963137 796115171 665111665 73588840 463779813 39681345 169323130 75307523 312456082 789404458 978569909 814577274 976969679 377881120 600815731 922243493 916399332 260479463 242542608 430679736 226631213 158565690 335441516 521764770 157902681 548018287 41144859 808387201 562813590 475148580 724376994 170444496 835604215 871245967 929096881 594042311 131363981 986516453 587467592 544801835 946188783 812127864 236769098 964429548 176683459 881236936 951683530 209225718 991077654 871508865 699491022 875050453 489791360 329883724 90515368 960949362 261875412 154407985 591387236 517468336 793916831 300609438 908844686 574704990 915707664 828634316 107839823 431706919 310091930 909189144 187328833 397719565 893845694 821102252 837882242 504733068 549184840 514705483 386029446 925682938 788005103 932610805 983748438 519853238 473261134 492842300 852145278 492057167 124467441 479884907 846734581 168087204 471920787 95037552 443502323 814460253 436455378 711481343 914694296 432572982 905033646 438410952 626996267 253838366 186329941 678160624 443015203 440674235 840464612 475578335 972388340 721708813 848235658 349121907 967200334 387914210 455013097 952080934 229007345 50758317 181249847 896932863 696772476 919413529 944036235 641087199 397324900 799391484 647057144 706457676 47404272 70342660 413525866 443904803 851583237 305200214 321904368 983553897 944533483 620233674 875454906 410744823 45125039 541966508 765895497 676392628 122927862 675453104 282004954 131851110 227426375 180299370 123090934 353138225 713869940 101697906 631430695 963170666 37318573 615211439 550288327 205459250 294251822 490911601 637641572 859778675 966295527 502341241 460685449 795416261 454208998 474934781 464113959 564022888 183968422 192897904 601538972 762578684 42417101 151655723 840854611 416129101 902609143 392361343 227559448 601865368 370494410 272059847 211244023 672554558 933149943 112105672 273467570 486765032 905239712 853884925 366270197 805334782 357158085 262912464 537102386 516817354 527584739 835411106 896382240 612855312 953965178 133159862 646212431 795610372 467159448 625800244 486860169 470790821 342062653 638588602 640903958 707975743 397840427 713930736 786599509 769338611 810997695 703288271 189679564 208084443 906190120 830172922 473754925 528346236 24552434 946271444 406369087 417029130 322751020 219927273 193301215 244869435 396010935 465713307 906891762 604858179 204673544 925955004 613397577 707703321 670809172 354497616 286990899 292708664 106355718 147703218 724435712 804385289 437119659 856696522 650413977 733251840 817469432 79031408 137628787 354624867 728697192 636455315 533851383 631014182 653253507 113627610 243500400 23394913 43104393 64614349 367407899 956084349 167596692 973481796 476395330 22733019 88636125 379820276 715490500 994067519 535983515 848442351 157467620 67446818 411039376 705528075 372372340 117905651 425338596 281085044 105196752 471852633 589558058 482860887 855085945 426509122 778100761 650156385 525028109 806967413 358549373 111584788 538698659 89876833 598056479 639489847 330545249 847788112 3983893 916107609 202813746 156136139 47150222 324291286 491307700 83996352 368557546 679462474 157922871 842475783 233389466 816399716 143616326 533882192 873977883 825147161 111318477 455635300 17876613 479553188 16847917 286339217 680678466 806481335 538976466 826721107 312019549 184502717 254846639 33426627 880845637 232501322 370660640 120096269 875318790 191740938 549928647 810501497 466172175 312043328 292177014 731791958 310168000 64097146 826770458 160742839 972173935 242397308 935180277 11035237 233267987 849290352 958835270 268347310 514064005 962496998 903667712 160984915 894228841 66702641 452213618 986670831 882010393 994810714 581592797 844494383 673828019 733586425 728968562 526894414 154127483 129260684 582972224 377606212 119246525 927507695 884684507 714828536 274968719 376459107 104078244 115034607 212976710 860839626 844489441 802850391 6605552 979493207 96321166 643931040 404060831 181222131 887743863 301709566 383384020 720476303 694026901 134430346 840025547 247002523 173277933 675165418 697892581 195212597 252390619 380826791 657052811 124440745 823589072 895255396 566441939 853295672 341463341 912594211 550309937 850177268 932935016 731215607 224870558 858417902 210322030 430172873 505642268 380509686 432359239 34806221 732595075 89121261 346086142 169225427 543409753 708204178 813134819 236128808 697685673 835143535 760016735 779868644 720501295 98892431 176439608 311081398 960224923 689703180 890572792 777522191 682407416 841949129 529065523 197606838 609751197 269626168 204232352 990824038 731487072 487252698 370838747 7193185 222114052 103454789 961607181 574394677 41992583 193749761 15448727 192309989 546072692 263748309 93956448 543054446 40616825 340135478 552484666 622939265 892052285 976466748 518131452 603017437 784664060 788888364 470478628 575031163 334987245 556457751 393320639 291631365 106993491 160076544 686145247 164109134 921643208 465877406 455278675 985045396 115315223 82437109 362333761 128955889 365784851 209721261 661132011 246028717 297017292 804944851 732547228 659331324 14293610 700767837 203287928 94706085 24440266 535100101 796642767 857107543 992140442 572078341 627246034 608705872 4165362 30501722 902603808 538320436 135714260 218740768 468360063 828464607 690272467 663669844 184616068 244321321 145334974 8250708 483511903 579455280 170840258 383679404 445846214 770616889 793284964 544411548 422408786 12997310 338977704 979808604 13229345 730688198 680860252 620385406 397184788 998697910 423368782 179199926 360618483 286902646 442648839 839426373 696825638 329906013 403086924 199837364 864813165 157257504 806317040 377551578 715984116 947803189 874920361 380801325 952665896 935323828 496829109 197676382 977108169 501843085 889975336 210771436 89412496 250814033 801313045 467666288 785401463 608319263 824205255 963305901 988137899 110375444 864644348 140371783 117483196 873696491 552193157 484152195 38720558 627176880 856459710 956552286 194883330 959346033 547429937 578626427 249202757 110419085 683709804 45024440 139706445 331512132 139111363 882915250 870935574 794560658 406932606 21433725 940976551 391541303 882578264 690633193 750853852 915762446 256254251 334165056 550683566 120397624 903622857 340011867 640436203 435808670 352293160 105172461 40152527 798089228 410286464 274910308 916646353 840638702 624658678 734622095 630660731 382876120 405210797 155081813 30826998 878384342 243080558 417791763 40420657 216924466 173607442 905769686 13933914 289413724 705849614 730002717 844092374 863143014 264852883 851388616 645831845 751470177 797344283 528798245 594328777 434804553 590672051 725734925 64767411 260480177 833021208 487381874 351967161 769209158 414095737 173378935 354298748 915936153 733883880 581180947 513230026 529272326 988782655 229311817 428607780 857764401 888401246 709694765 775019224 473244353 512204787 751859492 873539683 833748635 915093971 30027778 524669713 426117679 12433698 586250670 802124157 135682216 997927348 896882509 765773494 406504548 544862197 144900460 161741867 200506410 631697499 157728559 326149218 500216190 213869104 204027677 83077739 122632272 705531872 529066567 471386224 835741948 583995715 321170167 734608427 827782498 948651397 360891371 937221217 334474863 303150495 442938850 890573632 71256254 104521703 955122098 957823458 463244464 983389660 952384126 439840950 894974900 889055443 565179425 689933285 66804809 427915467 908937796 531101024 235950259 657555905 287922655 266321052 724752128 232055199 738301999 45877013 8171800 863548154 132805431 137719144 332690728 310834295 784259926 24120315 680857354 669631037 4614219 171376350 917917527 330262173 537611667 859459068 888289105 998001254 240348563 213048330 118632285 571778763 275913149 964470093 346227221 816020340 100777808 400566074 795835226 578722268 187663562 23316478 339562066 349575753 972657766 7626803 493441083 786828474 957504817 71774491 505162752 149126099 104916514 829252304 861586276 637531443 571351984 873052153 349390752 302862660 76747024 229314202 11629047 299346043 950967107 701528707 14916985 975192936 105677238 412638081 848772234 126783000 303947106 110819622 422800695 271309526 509671751 804040852 519038280 167052781 28482644 297499517 447544947 146941820 99912516 213899433 472328729 229480043 78055942 542729764 111895693 149535325 729411161 473743220 285878652 891502003 865408519 205178885 27306977 557615803 378242225 998868186 467848041 688586864 196322516 867741853 354754363 497407471 90675755 470599426 946047886 931934419 388709473 986282587 143058973 524922765 938789928 641472180 425547359 903206152 330314937 299863853 653233917 980208605 707604926 528187764 6520477 558841616 614910197 127079110 98997899 761849256 169284764 628867153 769044010 346652977 34338951 830440505 658268892 344980944 257721 784131105 495299843 117509068 576380052 269708680 769033621 982405450 182902232 550184234 816365764 132152996 267418669 378022205 672230794 315487635 181850649 112730101 258678534 593720388 466460503 169928616 665058913 516689439 554772455 197922792 790591868 568170083 582935674 56113130 211124110 514208986 509155015 167481150 812450008 804710105 71511238 91906851 884979076 494620720 183317531 300341544 119526213 395641247 722054113 84388255 134272609 968076037 484884399 582751581 827971836 703755377 38355607 485779881 428867550 219425478 974754302 73943512 375699838 754415156 531064162 356325662 134482305 339621790 481185385 193693600 335061210 597124662 27466904 956283067 679732406 341263778 99617449 285837468 433887379 524383471 377365854 170863933 896387774 676433970 790471625 2008860 572708942 373883377 426943040 931909483 756517091 305782634 963071008 785702330 644907227 955339485 894902272 969838884 896186240 269306582 530605280 348329876 328736569 784365874 627320016 823868438 975833007 465039422 846787892 846698780 584115328 566366770 451184151 233344687 293135051 59800752 683394325 785216513 725135113 933359773 117977967 873895119 505369281 129993970 732809627 520882975 803631504 341472713 253960163 742380441 815207946 644873081 139404683 511117433 991970774 271370342 872755165 276258891 841281955 772107449 823910944 495942571 47049246 723193610 348432407 786884171 707597823 224300965 606457119 390832319 668331366 534538465 951193135 204729039 423277307 392027461 285557306 408003069 541674384 952119783 580973400 161029817 882835548 849716396 451499909 69518362 499933621 709632410 922314311 196183858 226771066 252890113 766445451 89697253 797493442 569834439 208221055 987661917 712726127 762426555 342484678 957655986 209678490 719023801 823382511 222205329 937964778 362527275 254475717 108573496 160975303 19993379 255891021 135753882 931266357 653027534 877302612 184113703 882553151 478526947 897259223 648289973 25790352 689780961 366380904 730138071 700844287 500742136 617066676 89030674 388108252 51849810 393915367 443263046 622448374 62412979 785164106 50924432 285466139 75990242 180048532 216198926 126465323 606203348 147454698 541362860 699040880 629867282 17979388 834482902 117511650 242376639 500108003 349904741 425891523 848642066 461431603 300996572 378796247 317533380 815271371 696417181 240201995 445334609 54830545 85354531 703828828 55982093 603691919 77876579 234796274 779930001 258137954 636747518 374558109 598115537 83187809 637295694 986213815 76180942 529446609 895291764 774439460 758404446 61749293 163683874 639600113 367121647 245724111 399785739 759303504 182333033 484868141 854989458 760388393 968372127 231141387 450176023 472214107 79853966 707351049 455217692 309589744 129038368 172931606 647706626 96778861 103925434 259595727 995240733 433224978 853142163 594613722 777332303 971792801 813167301 408044809 652542942 694135336 924966675 514527213 169820082 14611635 204602016 699941757 569651679 894625617 439312538 948772709 978807462 786371772 865288482 650595874 702030067 264510222 214364855 376470501 384034194 307206579 908590718 655612073 995343626 317798888 3202328 287274783 730111965 505369130 645329145 408246776 587876413 744361379 842695077 683586110 742652181 686462467 750112707 80114344 198909572 352110252 743880071 758795143 604787246 413648394 15749954 245043231 559037624 833258048 579772025 243643500 205133018 74802073 356004412 616221629 720737491 50323408 834885601 119820876 921046211 461343801 207268116 149313340 767918426 98352380 178451105 385051204 143751877 655049053 179438818 704739629 396425046 234636370 167453307 477029916 796748446 720213532 162283039 813870171 294864735 727719170 580316617 643447661 552047680 14961967 886669638 393508059 25635542 581459418 257691061 47981608 33057189 974358519 300341702 137621139 234416261 447480597 103343900 32815222 972355951 194160795 22915617 586013769 380608479 313194087 977833651 715345674 647884459 260696558 230275536 327022243 822953109 889559680 849598517 49931143 265486058 454115239 415565310 217472068 463760316 729164343 595624209 984972636 147306129 575269503 375263433 633988125 389556783 32993669 67205614 659557674 636115047 517077650 441010511 944635160 882590534 874772868 210354388 207120314 424577477 900625928 189868581 956662538 183640491 481835160 763644438 33179747 654481160 353487709 471726857 994125588 705855116 283682205 595760002 34280036 577582788 856409143 443390729 272340411 740206055 430098749 471271896 359359419 125398967 655531141 836797807 726365512 505061159 20255469 411339767 684762071 749776709 737177453 334483830 103815571 57350846 223897688 692876048 118744483 989954557 93615580 641179405 750721524 816528191 878098090 88774903 56375201 836579593 968182384 857809991 75711017 479746023 858809825 993132575 330540159 452270823 293748938 537202221 258461212 261238677 445246957 418246857 982272318 146512421 608888716 159686590 800803023 955704375 495211875 128854962 22672107 378439200 842601045 694699639 583239397 273467076 771125665 932898567 122432532 332822476 584666581 292354669 150092217 719597369 457852674 313955280 725187137 627760175 739136471 13985101 837301620 642602951 88087024 469787678 638255911 680304950 589094377 434817202 705380191 465449281 887065487 636671853 598223491 464236916 930345355 408316934 855141776 276681030 329905850 791381454 443842729 285982140 635692634 889921341 979204635 383612347 830143773 135003281 360179744 268160679 100178950 913084595 626848037 785476132 514429603 113764244 231937252 385600584 699041089 643736760 863284640 653211752 94178431 759731348 197863555 38965558 289437355 492861557 394212041 640018811 906873627 153513768 597083223 529575475 815105435 684071615 869324175 994538305 167307668 894701007 780648984 640299873 632933040 216378064 644536260 943005623 599127478 93046759 295878030 89619063 424922575 649678771 818968987 803613789 536977771 750050012 694333005 779884552 920863129 500130261 436835841 377678463 994652825 239452611 48287477 912487088 759779113 422856184 189155139 916436985 174379171 769023175 246004465 759641103 550258622 154045132 888242110 123736615 67843905 562612037 992741003 425564075 334566011 741893118 380086280 752041597 346966542 191946861 282487271 2618647 140286381 909775372 44132471 668615990 279257419 697456463 806762906 147493013 977141609 21028190 831860217 694095674 3035732 633708862 249277231 57245740 284850305 479798706 683280464 483343766 426993226 314558642 205390905 248739886 499008511 16054306 283702113 586808549 776262731 677017253 700415616 749017167 288340319 336367661 672411585 720701373 949492002 39946967 882950041 245716694 207121059 291701806 772128001 450175935 166759880 153166615 189621634 352469753 960683925 217573617 641736383 208953841 738006793 80310014 117315987 9071950 547264214 655066184 353041489 941364484 928944679 536474307 242898562 642997180 249485556 966165632 478061436 84619144 860600610 414653903 387513641 532736579 997680857 807407549 111942349 458648033 857647208 211842584 120390770 192447221 329018597 208902146 820269501 876756547 156763846 119736968 560942 113246377 321671164 663138080 444419367 213904613 233130014 145830979 641442553 908518132 683508062 520721331 640190801 775631701 912865362 380961398 159014065 37337238 500163011 239107282 319249356 765708771 604778276 147862402 3933675 876183211 984619187 213850936 724666465 271597187 480300993 194054409 762172873 699160094 867820533 773488484 240540696 443136560 626103619 859923012 267050979 505002767 933149482 22375857 365412209 346491742 223271964 131007708 258656684 665596230 409484759 792870787 931033138 291758166 916211224 538272897 498651688 447185340 22999772 139761047 798864969 810097197 687302307 932407656 694682506 268124805 331849436 197347097 584957891 459158837 318586305 397668231 952727358 254477960 552484757 198819522 793822109 121640881 576168972 41658817 137382230 561142637 946075268 272316116 396412838 155157366 6608987 436747053 637624827 556324476 698203892 286678464 196897553 227540990 501450563 652411482 966066589 147609596 428772327 599087634 79013916 15701814 142110951 988135557 449295679 296828682 720026651 783885051 847704217 434234722 404911000 260306266 436266579 772289949 290937867 772527060 668172455 868783124 140981710 490512766 128610635 389836011 4074213 11289592 483242991 521426451 504542778 799451828 446954154 42694336 652812915 145112522 209943030 729954035 630494157 310325341 408399061 397674679 946277554 299233027 873031680 603396350 1683199 735200273 710406356 693582238 560575555 182066362 756025529 769708433 242720292 518829288 509444004 529620375 872828750 907095268 620173330 136008585 484612701 787000879 151401041 337159972 703893026 324615735 181353712 78085613 674539937 782177068 221160357 539221276 571363899 605935612 831004301 669250788 276143228 801058328 24314768 412726848 390950500 148984440 332292390 164273319 245763421 476309545 695826426 816206531 611930626 384837618 451300121 284895030 414140931 935425114 267882785 811550021 722502067 389194825 18086468 794996556 844616455 213367357 497982384 563050882 44804153 224893762 192931949 353562361 174842953 951268052 604222850 629488276 546381481 561159900 534708777 455298182 403151063 688154347 171489290 946388372 691382473 360152308 644876436 418026192 469854100 272816648 685310615 833382831 260726207 473380443 500722338 61338996 819852722 896307121 437695491 987071422 808869180 799684557 448524861 235756121 115710341 141683363 506574782 741825795 808291473 482602075 252893828 680073107 698829080 871452240 96327228 817177577 954884588 899419999 452313289 76008942 607141793 82431350 518598847 405971429 267415872 452409080 268746340 373457105 323542350 145585051 717364547 880942664 715898168 219238717 956958868 316846166 577011909 196251491 542168041 430574697 670690408 867676022 91454040 870894047 148384479 583214534 522637103 881187605 75230038 771697682 976983816 678961895 942609764 814763367 280244798 507454133 905304178 68436808 717879752 514915249 429987290 200299032 839476900 457790838 691923915 162341091 898563380 880518515 385712169 702138164 690077555 672664437 392488178 583542530 264726566 12217530 872890265 232045472 157667609 632399326 426720023 621877172 632943339 687730946 432839583 979600116 986146239 275046601 163868252 939104406 609469739 837157348 611951486 104554343 799854728 368196387 160293401 114942565 373214856 57169256 192929098 793061684 404577743 33849093 765273192 51782842 534046874 469448076 590582850 866628924 458317018 372966674 625686375 947367264 205779951 685444670 893800006 961868637 928031475 419900608 883946499 26990076 83537363 249394813 217593685 970349206 853391809 65631279 44161863 699215809 734556795 881336310 559933094 791113543 921249335 49885489 207840903 893801635 796630434 928572177 963217621 798980752 928785197 810802950 354126004 140628317 19134781 984071722 380985473 429296841 216699129 342264216 270769047 529330366 64715881 953410552 337763201 11076123 795968613 897846194 858370629 855931042 2096108 316384015 953630805 947462336 40830334 505072511 850866561 947232174 673660725 951786292 825491833 721005953 42434887 457837762 307308535 119877307 13623361 403533589 87422355 246833177 514353038 940683860 602480530 785157735 345211800 301313047 860737062 472520723 411534116 124716090 683150251 729317813 516498827 887955754 502876395 838530716 841688379 527449297 989957659 478633615 8894546 920270623 799734079 424513181 874200619 483733743 716877724 486514920 253704531 460151279 609354305 580580944 887920421 628821557 23124083 615842989 16553665 20996723 448233602 826709961 645297525 216673584 840697182 591608319 686762851 496711926 263096693 684546663 97692818 241884929 406505542 11598259 799411939 201355578 707621824 734750871 992550166 161746587 252077829 315350460 144448624 424774113 70975166 334046526 113642595 871845564 40446801 166419473 819096407 792868794 272427679 643003187 303920973 167983794 904196898 698377694 943420465 516869 902383147 570853535 134182763 979298586 278931764 773978190 949842621 710624051 470763104 637592741 49993026 912608956 602517006 593731774 204149297 398717047 846508737 627143938 182951352 79644303 669352732 152748657 171671214 149380517 800879019 334631729 829758793 349050665 46757092 96769627 291624945 194993851 319566591 90034356 890587578 455434830 420325207 264801050 44952543 825336388 642605378 909090344 885925067 238797145 936290878 738669344 825671208 406207141 206239338 337141630 766648385 942157703 259947882 30912626 482223738 246565687 483363118 998555253 396166196 649886835 942842708 632990091 173387917 327238101 469967931 767101647 139498536 289435857 885172888 596103833 769407103 264173586 999839840 856522567 182747994 897194348 428666511 721048393 898930650 381390149 391315930 650446836 442778397 65477188 587115374 724514703 686534774 434112041 707184561 526301648 906926539 494894525 305883039 689282607 143594784 488983162 46557308 329236335 129162004 898141714 982097148 145909169 219451132 156249069 437899581 558880074 626402883 932065793 406404911 991217078 49717128 944485747 240674880 418052966 885768880 26882595 799689030 715711696 926273382 561506980 772293585 208150413 538137809 721891721 711860752 447378513 493435195 779505353 772783814 967334837 316146218 392618729 497304750 925901074 596204740 386721655 63366397 190108700 797026635 251457268 384815255 36940516 200380578 100683726 904136786 919033776 953827708 603847518 821752609 928643721 863975914 479550335 895664621 292556795 500948541 210759009 903572470 368022973 213984898 165171631 334022356 924007657 236811529 543264041 71411340 677019442 918361300 348298799 874082077 560171996 906206615 144204319 204639440 771496659 531562640 754580417 885355763 170076258 44322040 711727751 153863393 507759559 197805205 137501153 655109443 203321668 332504909 88966484 531076116 304230938 356261665 918750589 51548772 226071095 13221126 385305813 399138324 248721223 452130393 625261459 478384178 29200776 841419453 310511023 570303616 93352709 352161189 322339407 640325863 641439144 848755394 774146264 855493063 540208255 239425406 387897626 70640181 918644961 694286719 730342656 631255115 89176510 957838677 263713995 932267697 300505849 466804303 152350247 24134106 648000263 596171101 269247916 467464072 74240986 105676084 170797761 486096669 703623250 241291832 745124312 163568816 776342403 980453801 311737352 43116019 884495955 410757415 201336344 127280406 34764760 685939210 945205581 989204396 559892085 790867022 148383800 209848937 66556979 882959427 210163537 655904251 675027612 986582564 811800421 833683475 714341459 913954898 352846329 233489343 204665804 549640508 890253301 253631798 388756162 604592295 315647564 780558957 504558934 364215097 899378796 373310448 624510092 227586830 535925960 578924952 591738642 81448073 927628867 139365264 195318313 102707519 473276144 609667367 36842946 118434572 975633429 79492583 995658920 600140376 118380686 207001202 610934181 307889104 129818492 364716798 184944615 511164723 829471333 641041352 223983091 780275400 906736801 144905838 718025120 414436249 89096032 344112498 943749129 949650627 463652564 840858049 242250665 204968095 286194491 167557482 941149784 577931844 351820716 884111164 598796309 337149809 866049340 731017932 913100361 640118190 782417513 461854159 883724542 814190752 560075647 311828471 612298712 219046851 737802516 579606457 148023746 721758152 824651579 821120540 208953141 276407582 87916107 200808623 550811488 664385222 893059543 390360191 460803653 831212899 290125257 908372152 377941598 811195540 179875100 417139891 186388885 46428755 119090586 118050629 383113089 103753859 26396841 983950896 963901773 659601811 64523232 672695402 591215626 714872695 477229825 988897177 231206940 924386658 38952950 386028876 131922915 579390059 553392660 41212056 98708497 125942192 259994849 713521347 3609122 24554827 291790036 205925292 403439019 84811594 669989739 674416249 143656816 557197151 355878669 85575056 308866190 765980775 781762791 758325189 227156432 922312329 909930322 248333439 544224605 769355651 712526922 629328293 850240516 182690052 539200618 591393967 893275529 753908065 636341167 119414441 677225122 440745403 575244485 177341266 502327453 632724668 688063049 905868328 397774896 917424599 143194094 44389548 480897748 888321107 62886263 180807020 704415391 410598607 845527241 190149408 348749299 539360075 953016597 233773337 88152870 372350111 45356818 668337838 580296907 987382779 939308633 474727218 54138403 340394959 490723658 659416044 313632083 33026176 800952877 167449829 177420405 991349866 681509352 663550190 774474454 473046180 200573688 1096343 42768724 754800819 913156586 940663328 906496409 574364462 786581295 197862572 126926186 536316093 402508690 830186541 207932222 993953972 254356320 185765971 407473299 344885757 733398656 653966196 588242767 298100117 475661108 855364355 690737359 465019786 54201673 351771579 849642760 660264293 338166118 3607406 352002753 587771622 35672186 567145519 205103259 89801738 219889957 110156943 896838196 545998306 647564845 270070552 700569235 219697338 656044047 745727757 194828137 633312554 589689048 644453290 577460788 410940568 950118543 595987519 618192528 853454578 985915107 974145831 515733180 65810476 339139353 678309677 194665624 763004929 650943855 762246504 106757882 138498360 530105307 762011870 869461353 224137085 543996521 261282386 425623885 776013392 124753440 895677512 648314860 670517619 750220990 622285902 523942330 68115688 266577983 950656032 887469669 171855827 356244126 485269178 634367281 541661052 734625114 727535740 299227214 509056512 920190633 832557207 478347661 909347713 646513709 911990614 386475118 821518460 281348251 983850558 16817885 447162287 470271608 565397976 350165115 885327394 425707778 605816061 391349837 289394033 878829360 712975284 686968014 954144771 928784135 286154312 970583214 127326538 855331174 807085851 228803821 731290078 587723387 84690561 626607686 170682974 422990799 394051551 6785223 807757357 884010114 454921264 746638899 215897561 556586702 902677137 752000736 683434089 866157420 527637165 99981987 311266538 52791205 5063122 804929249 635331252 813035214 590417981 55322328 224379255 617468986 288880184 475913904 772799976 426025468 61787990 216490237 277653047 718297158 398841012 903566189 995166084 876714798 119589787 572677282 170917825 19952120 869705393 274342147 301962767 27300415 691030194 518315014 855810408 846274972 922700663 995235878 713315856 521691647 793225485 175599294 754019622 205233709 412437099 305788604 267716062 188241374 69505625 466303328 699519510 837173053 770143979 562874224 86408287 844741147 483364782 814599483 30731713 786804776 770228258 19332359 366052970 374802652 983377867 74622750 909049011 865987898 482483832 267952984 605862714 887622787 135299415 489545474 10429552 241781772 339411856 857027208 791574464 359088976 427295594 816660171 157265066 679080916 999314425 989295379 346922697 159501797 469507993 74339282 938893736 44313220 45670751 201938408 992248322 443538911 24383893 333938511 464259995 935210089 342000397 389626981 88784045 983608054 667386365 202519990 904725871 39881904 251965480 54950126 971548805 447405275 164343640 394408170 255998563 720339683 184505170 636042133 984870181 457349017 612937264 771035623 516349634 863739994 666832205 839548251 726808918 632543245 500687423 116614150 778385706 947370852 116526382 393024121 216907263 201372726 463578109 470628321 442205718 735505957 878249093 440588958 279796158 3611987 616118005 833940972 664778403 923765365 546950452 429982151 138486600 613266497 211997615 951575002 192249181 346330641 317283063 943723694 438991380 868235415 673764942 578486335 676733047 459986911 857560183 222897983 740451218 152757961 635890954 303964312 869425536 482103321 491246682 173409885 433928908 992987183 229454501 697840097 496985437 104042862 951018915 966718371 368790739 691125255 557217604 607303753 791044063 720726805 807912680 876280635 403179347 610607964 810312662 284811559 810451294 914551668 846502239 532490462 405925451 472191129 490675414 534619577 308524523 560776858 224669184 763175613 620019466 75041230 928690886 371935514 953645507 729211210 1153446 920219152 368618812 594365918 484021805 311790086 125806981 922137595 615407667 781418527 907755494 515021491 307340208 378838957 242798057 88547954 707075695 112928957 260451267 796994171 315401097 562418471 773665104 616303401 45777031 309178838 887057439 705268505 552741691 261195298 494636206 517710232 598027900 200096618 169401024 280469539 35794066 59442254 172286911 999967155 485005550 115792816 568827205 978536620 754256704 958899107 685780445 158810388 149880803 794718353 60956168 96438933 838264180 582001377 461696527 799558119 183120188 581136848 508143791 24038238 703618 409775110 249561551 337720739 867342465 456626322 962671790 859991456 833543630 194507937 944664031 676462038 365646761 366392651 560963390 88986329 431420751 286783903 412124564 726811987 299969501 808990772 731507824 744248136 354148195 745136025 767527962 975381076 847444314 241200608 127649711 362226492 297363534 180725167 419469126 548187731 71537546 921336602 598205722 529324474 272189950 77978485 170126664 795404871 413595337 927022385 14026805 456549765 247554393 237298788 951215542 195604189 797691189 210956045 965143029 573084832 421430018 94479513 419134633 265829374 787760679 33395676 864108541 939356529 171372343 257450491 226457565 459265046 336717375 397118954 396955691 782973317 151941657 783074857 266910188 990768566 627084266 484070441 789934476 232625829 290556866 576283589 14324905 103468592 984325209 142668684 476576147 217958924 141757507 151644038 286863216 780837044 973023960 833672820 503039730 386720201 935204766 691245438 235167791 290356889 482845949 852257594 116252336 32773498 441471972 570922747 282035346 241077374 589527846 85411663 408934324 442628830 4144259 268062377 96798843 178362962 486187090 317897960 708202669 48211786 891279711 711000176 950645269 512080273 931114679 446044173 277517970 788130348 960504877 104174898 26832774 357410847 413994499 376289234 977888317 495973664 855921859 70670682 384030206 10905584 87038526 375128800 784771429 798028898 921252413 407431200 516387896 247417681 769477062 273708442 60946966 653417590 809653783 741952707 707935459 411241420 559402021 893457528 40565079 927172201 795930136 320150763 789806227 831039194 118841402 725516000 678538911 964297590 292569469 570266489 420453889 410295838 527197578 414500815 533973463 995972326 246236307 474497947 659980558 27981422 70970294 908258224 829257641 383265139 424314937 442865103 197492271 217113463 421084290 548836817 392558465 302955308 178878183 96078110 934532568 389040193 932879897 923238198 578355419 332547859 996047491 961667128 807156545 537962257 28377005 73397212 48507913 151653080 307417852 605024272 552503335 335936384 493327421 384341499 925180992 964641713 669340809 887501277 459260404 959286923 166415812 480385776 119084313 601454321 458314267 173753426 715873937 537630423 606039609 677824702 763563637 69369436 107515667 449335493 409491115 510133624 712308564 299856336 624801675 287163389 597312156 806371506 169885116 839208431 492012022 200693549 143313386 158181657 787446701 781520535 295084031 591212563 772427663 143826851 613452818 223331144 322206803 873397508 819490607 625929881 211825167 719398124 47552056 126743381 102173375 44731411 655494700 410285336 449212721 790013355 377260047 830647858 695908019 919926064 557049325 475832267 773366268 776888766 903819739 878074001 391961871 254313985 857982853 434250580 216843668 921256144 217142995 339041130 388662669 800377682 290534746 498713191 412205567 700463366 782120812 613707430 686595786 786323623 172282737 260509439 455114978 853188886 837799272 269318901 255558999 313320016 839106249 269118462 813728809 975735233 723371696 166853727 238772023 498057980 112080885 240792035 69822038 299825002 824590612 900657319 384861065 617483637 733723604 680436739 19149118 79790512 162016000 697406522 407969776 819602718 904537932 231444161 716097982 654101217 768474249 737739150 695120324 174616807 76096855 56264572 784443110 196090274 674818038 455374807 646933506 624899529 721333964 15084946 738075049 950273712 77875186 790151697 510515519 10308820 791513361 974203308 850387884 301065897 782973437 247553299 452461218 789166718 230404340 458459071 26499789 447161859 580101338 199968065 554097648 282342273 482596740 50866203 426134581 312192380 128536671 212919721 374997316 758566212 193487335 56909630 476925129 506869321 125908666 446136592 819226099 534173824 685190607 812917080 76998901 745813786 505259240 940689681 585333729 26331718 214341730 69004374 601728378 955844276 685561263 589564816 573487728 344271959 892224100 435546279 320622250 830079277 312778953 819246864 974648235 337212993 458346001 60482057 16248176 602902135 636187789 752249348 715665784 568286512 913283844 594102684 723941433 38340191 272447309 294527481 350691331 569229702 217627338 951942119 789260608 292054939 485799334 254240167 498458489 892713097 920862107 784021703 457288775 664165538 331743988 971319060 941135476 259673385 687767332 582955350 286303323 673745026 410325886 580388136 828128406 124126304 355932371 490934776 347159922 353935900 216492448 513162162 830329293 162470282 797886061 439228699 430775485 999637270 35653825 35929852 32471874 486812549 627220903 875613039 433801078 320553603 64034470 777581840 485813759 198956745 823932752 706731765 928714878 522821190 348383871 626057843 9373457 825817057 411986916 860504642 803669841 387324374 773422209 685789767 348338019 603372762 210358006 655424787 308024895 14841235 937038670 441162888 232342527 663623033 180058490 914664943 180131749 858045586 160309638 626034660 877913300 247860790 419811023 724945339 503506747 419545834 667592231 977261465 146299022 291641531 716847378 234732265 697930748 994262885 843626777 995486582 777367931 955574704 664287593 500868567 91643229 119085599 5882680 858159926 4145071 78023059 580570639 171470692 5378597 426215143 311546089 991608541 678785914 113457148 321366804 406288272 845376971 33521628 708573131 966958048 874520388 211567989 651397339 555474505 586168295 708073938 834138100 721686013 810492665 430116709 262136747 945968021 594354069 279037550 351654716 436044053 23953879 617491473 237815058 971292285 297108176 741973406 276452072 260035742 745749407 592951959 790454042 256113352 50387905 381159435 4806930 725016251 812298035 147402084 388597815 847822304 760909149 517623644 798500424 226076613 532654364 359789518 522530992 73409657 906542520 370144594 118885462 710612775 509488413 709510241 717695805 917311693 657779600 388775934 586867623 286649522 516237874 442928538 703549782 119648810 353925442 833621365 16906717 368681138 565491014 484679397 86137123 296715720 955210571 203189954 854591341 526677796 632845174 963889212 715586580 540015123 388622728 867949944 218125341 432679228 756673962 148198827 172780432 842849652 629088163 389540960 671283587 35352591 236712225 332948707 932548564 859312485 205608405 178087146 241284796 593270479 386443277 771406479 874146260 904549961 579270220 143953595 197982688 548597957 929645116 947691065 264940122 251958353 80037077 118140479 564140220 989713646 306814628 362791257 932633780 45234206 898017175 664826392 187357495 552940699 225936624 567554807 267538978 291718280 280199888 636383984 194677282 259258288 846310670 310525848 733902119 983675955 251959554 222423110 931474491 520042563 126497757 189227141 221046559 683720344 766588825 298948379 662943520 808460519 414875355 299617868 960743739 640830802 392794782 445621859 768129087 842891670 904952662 738845566 635463225 932642958 80215397 786972182 71936362 794640412 939416630 967295524 968019562 87692486 636132050 18865888 584538244 516157374 590004530 263396553 915127787 224786141 550213288 936538719 87170401 985219545 813927880 452429969 184869179 492347187 19353743 238079039 745420241 793157392 597935646 625747790 286697 508406041 40466999 830080991 323026803 282985873 964771444 701208373 943939946 594984125 719395794 938695719 978417025 8508635 965453952 199132723 655797053 166990949 199067112 325315458 215840456 864295865 138248167 415721240 693104072 825951987 863617893 453000491 86613669 866913452 986403382 661782876 62349227 401699108 700153731 64046613 95161889 616247523 410549007 581475862 693426996 167250762 109721325 486425064 499079918 174992531 156013078 795569647 964554026 549166451 391463521 743488134 918973987 703057742 256125199 862229344 392465066 302808378 850107380 750843170 735700898 628123617 773063307 488710925 765460391 251511287 804178595 913563834 975207942 968382093 158396106 422186233 168189117 693291494 199449330 795950917 870358158 368654321 559419337 245990926 44438555 635207462 840382366 259332123 584852526 656580096 977199285 687252980 150946194 538553572 928718385 503435342 775543252 213726533 173970946 155612186 420131579 807729223 472945065 319965893 151820293 409083908 36706883 961055235 598016353 683821375 553471227 777638062 564086344 502855476 785657330 793554348 986457010 541359378 163048919 939293584 452083853 667595905 837407770 934467274 615800526 270474071 454193265 694777360 587877126 816432671 324982024 747650161 880425557 980517681 39438612 314466218 145375743 171509704 77181178 814940072 320662897 524772201 374731862 814053715 839504578 7205884 939568234 94089169 640626507 549506657 475852690 285436540 885058937 679915262 285869972 421040354 159510472 701513288 51063401 518862337 676299280 645482313 193870759 39371644 183517807 944047992 668345245 215473100 592407451 420986452 702303049 716592427 333031652 547716624 603434447 396035787 585557602 498936240 259969881 238892278 952407030 49907455 860869675 701310111 508742537 993989113 528935507 644318857 529368471 403242360 76461013 463811714 954642051 310203078 299265024 347139646 279250476 371059920 989883564 201701901 92337136 190850284 383974191 986989993 463366012 542024741 808082829 315996620 570462875 863992532 677086354 465939903 20496561 778927004 953348051 459762124 657631703 289872652 196575858 855020599 284114077 569948497 966965955 494607979 354729636 386291987 221185374 933485792 99184861 225226762 326585729 83914965 158003217 584888606 792552511 115769250 945675294 321609706 458826652 938595738 952275689 298944263 926475306 618630374 243611419 430213409 731584454 245797804 362917773 122948786 457803037 846428613 35945570 976171766 379670559 522836433 609269631 663513191 826710861 261800381 573043218 616789922 38978392 680740 408298325 178896237 488211345 660572337 423437299 362743955 325499783 616117215 969050066 983877784 89237589 53979294 388298780 616732964 904539669 621581 92057743 883262896 476445827 54239031 61062021 595520266 276048985 213637577 238678423 490406392 110420813 174714161 835441952 43643555 201032821 112384117 975558402 157825882 885227924 635576782 402214751 218074956 894290329 115141980 306575003 176045851 335315158 943240250 662981209 962585910 583153761 61744752 879821812 345120371 724949342 513819022 422935622 232008147 179809459 62741628 800955454 582603361 163656992 388062951 496093740 101546984 46191928 539608100 714083402 333352459 256357961 254288763 314238977 432630409 671119522 821218142 89894667 772566833 385085800 950708537 127965088 701471893 717477810 649827390 47999416 147474212 813696989 578985339 121626033 163496135 360815045 199588137 827456001 593031554 675328844 720961679 586473122 853572754 224971843 191391161 989177296 493303122 644556950 448453679 885207919 904772145 515836877 491349174 860694187 282678772 132001301 702110587 632485779 287828674 744623081 715556311 126009779 885353421 668811901 12485757 740582198 634502113 792470063 331918047 504711384 398069110 317779692 45182986 285832895 113924249 822145262 358279808 941682969 454103712 968854848 389115174 259689939 818629873 53878038 100339700 147062045 430569433 150836227 731250356 48751820 92410611 885301435 335332446 918117681 907679159 985904878 809698063 59935698 802256399 573110286 631666512 96353698 703601662 853485440 972338929 358873990 523775610 144656141 80344483 80509386 330367009 757549145 202208847 890899497 583252234 318482130 325581041 855670310 75394332 554849700 860805616 208902358 428087105 77180074 630533136 550096517 489910978 678644931 252172991 347134321 861458642 711077600 153205076 813820152 44509760 429499568 669322334 287128679 612206898 141214194 932173101 249180144 297603302 159571204 208442696 264661512 602113130 697567845 100313255 621885696 528082002 764671580 323295580 249370888 140323952 930327095 813263189 845843213 335618508 455069172 613656499 250408333 500615957 984937437 777843826 502929914 498869105 155515594 515245511 201931940 208621076 235073783 990905164 650248126 207078769 920790475 389851950 970524362 947286064 387234382 988601806 55034047 195248288 473456726 961605763 613507473 266776371 73370381 56347826 960438587 291343877 773885921 581283655 915176143 908582836 206265371 34362365 374158014 382076008 207397049 414718889 282189880 740760309 759023713 919347348 22087784 633318802 884322139 344348847 520616472 123658542 948943163 794119991 547015203 718427691 919195813 719350251 984141099 317499492 666606425 165532072 631542037 708779270 332575699 616142238 305271525 261595345 67181740 616813706 806325013 163905297 813038913 973162699 998371889 704604074 229149298 35145788 522951190 662866418 462810324 290287064 366986367 706155398 792845115 750679315 610168808 682544174 405491377 275379448 191400938 220995495 744713419 262464507 472207546 40335825 617854153 203289130 348700080 10905084 449301896 419365705 65244376 227233940 285490831 249763868 946431422 353173327 21713203 226146611 418231669 115533944 904881104 104588135 814125612 162729125 157056038 646993891 530268882 688346726 218468501 513318133 928172451 533470464 163761871 383302247 347585134 802292030 29183394 281213381 200697188 314922396 817618074 40357135 683232572 516870166 552316071 724451622 894344881 23988482 124077920 704619688 433514505 558872592 917841575 916327703 477064517 500498976 354014572 198899442 785787173 775989703 172172634 827950661 621075892 171544560 270482997 393428529 803280541 660848428 62102639 160198530 164261670 710564928 984891275 462822498 742806066 705546693 402025390 755218425 793337067 226665725 609008204 642711375 485062995 330875341 378213794 758489673 512987153 389837699 309972964 564885201 874184322 984240325 326595961 950121195 441460487 967460910 815889246 14016194 653815560 630606790 884121498 145243159 147717016 59572238 38538974 293352779 583041632 661652423 261698346 93889400 171688032 333245261 646476083 892880727 944977877 154144991 517621580 703851892 273329034 26392703 215057007 431167229 888926098 286167409 117569574 343131261 823723524 791601518 675497701 34295076 324121371 76501790 398600013 513864861 423261982 133466121 557298235 667025187 424280950 736182793 809607178 91403029 504947818 227795649 30526164 163418541 973014255 11369439 996281225 568306461 806576958 743886261 419922680 769660505 849215285 66345282 56559331 518239840 768310951 437666863 558317525 300793877 36928944 375757092 93749920 559787982 5426705 760516512 449420152 846496269 733391812 273911967 423733004 969802945 27959058 296461920 551314009 57134457 105893528 441851030 152550421 505713783 516875702 102411981 427441070 829314314 831151332 608207081 743180532 25308760 107907534 261284764 35816986 736220538 822033970 24694360 415740307 913028753 939342624 790865086 600974458 332140230 834507494 582359610 858425165 144863371 252543860 864770058 982639465 239133129 126762897 23399947 542247823 275681240 58905434 262559227 21762724 881398282 296218147 176622207 833335942 401970971 760456631 757839382 373355389 901687007 213919533 376394188 256991975 743967106 234042023 639724017 448614498 300007456 830844044 884581926 329923078 428499356 937338211 815927874 236318694 158370440 71061848 734970886 558711612 649350998 545692524 996406450 285914264 14099414 48917179 720175266 757357478 394416349 990182781 642309724 696880434 997526861 861407661 27637060 186198055 242429233 366606070 600121795 163800921 851023431 296352148 937809149 922928284 654530368 317424295 985456388 876451661 966341711 190312928 182842123 525900433 917492778 996181078 140400283 401226972 216264079 938864813 738703758 164909670 943109304 331322310 429425061 5652227 28920967 308748308 587311343 528291888 968192563 777317379 212351574 72105837 623664193 216036717 274430044 651181858 284851560 797628756 800162999 274792865 978388102 263502667 581002269 763791202 527152876 130102586 538479929 627236291 366856197 718960903 748068955 979628368 96240613 854279689 993784152 796755096 160102383 496562691 702966569 502256776 674991727 763704465 897048962 689837658 167190274 849486875 445395167 627004726 470832909 330473012 481280734 537161029 106463761 821495435 858295268 795574928 405628361 226547682 296606168 160849933 508783545 919188329 202566118 981605861 148862366 173566352 677086352 840491064 647462543 746082607 527317546 947551091 953281050 474445566 709785190 125687882 771304921 544754245 171398977 967777629 21721095 461299044 909018314 461805490 421909883 86641167 696869201 430610061 277377259 42774896 743239765 233598493 740208182 355212529 565509924 21175598 208769231 849317853 699041676 436024209 257810448 738318315 83503090 934086255 861836777 152635707 825767047 716036799 383140995 914532316 367571670 312163241 677053883 647074960 477613314 167565125 606316746 783833367 574878441 587721705 963965365 75787648 594093852 386354731 873212016 541203506 738797106 348729002 837077631 799669643 764992031 603430761 517158289 352154369 288795186 498413052 249486170 393858572 181703143 241230716 36028689 144096430 368792549 426304591 571810515 883909874 277273111 813136130 39337356 612971923 180585693 46151798 824785708 565212819 762002698 580887386 694057334 962889335 567845323 438176112 477534200 869488503 621904579 424111950 624848768 252394582 548876439 914690179 204820573 740104073 4259583 452340562 209365289 100698288 423170727 775425888 581831790 845161078 514821472 992419223 531829442 80932963 170116978 222677011 307140698 586602826 678754815 327545253 769336674 130438912 974034823 991534785 428339376 469779550 955645255 663649900 671273075 490397089 511519337 373143100 846083681 36248134 874434695 335138728 681240858 595137016 948707012 420631390 609909564 160093547 142366681 761029814 987872547 699958926 58923789 81893445 870687032 191149209 578004040 586960676 256648425 456011889 826885281 209915324 536101901 367358614 983025083 738601867 51149091 775180526 416746677 581813933 179575357 784751883 724420410 638987575 564124846 467538361 966884564 247141699 482437768 895579855 375507451 540117595 72000651 890544215 467184266 351688561 764239336 236200995 904520552 350856387 923578569 107823617 871842266 704820899 774243477 852906709 198955736 364204070 973224045 192907953 608945596 136584865 871505559 943429274 209641528 956124303 482246313 149980578 815593208 595972825 665783625 465758286 205333471 320031130 356720466 311751457 536129422 553504011 314227038 759579376 384961346 253692475 236394724 763854105 555355523 480962252 913888598 650057037 189374390 156268993 457603822 897951139 62605258 282630038 584680578 288773559 937084842 393301740 466588701 460546634 300506062 223950081 728997311 191076962 646076515 683763798 894593097 681638305 119908878 185693625 594870288 19740027 463009119 688846883 528003643 469402554 376861790 814579202 323016982 361227883 485653254 878449993 60034349 254128907 60938936 481956563 243723607 60322968 637953038 442973047 10335290 850387116 905490278 685335613 152668787 25862998 944554846 925330233 256930977 358444246 877252600 895481674 731786577 857362909 188860000 853069913 734380506 874940586 415784969 55246419 493809634 475450391 535393511 949068021 891411034 544192716 528314170 939287946 257006453 891549279 9251593 191650163 157940673 516609972 111642332 287980181 817084483 77445840 1520389 790953270 788164270 83971487 45862281 644997679 418780575 819787663 982061084 988884089 708056314 545404548 625784253 964387555 114232169 86258517 394427767 870888665 184137479 651724381 67405942 777114866 269615275 479550132 945271710 493574608 447518595 829623223 520781715 351017154 248375328 153525206 670664082 691662725 745699139 211537616 736738761 462092029 775600917 673296340 935365529 355393318 316012128 381797694 386000938 54680986 273402549 679383520 251338246 17815372 801258711 49688700 41945531 971493890 837695168 809512901 127710549 207683234 360208360 212763379 827875304 979232073 583677272 275841377 924763685 55951078 46889816 456096406 819403809 40783508 706102300 585299617 783543176 720591569 670704076 713179333 652208466 39182932 383916161 80597214 760701649 257991120 396336804 93736606 162767269 766929288 854794515 902306435 184665521 660346854 324852923 894362706 905515476 718851319 857403979 526153852 86459429 272601190 336288263 966088087 572762808 978862199 620916029 833985608 706049745 89485493 898104538 531857551 313988014 445282980 879337443 596146929 420031945 906107582 18056015 587794091 924123832 400079523 573675864 523845902 868474095 577649220 934718481 394864379 344811600 175058662 977006587 892592351 431681108 680904681 374424229 364752036 156676370 462322303 905359220 254311928 71909457 46229172 311569049 511328292 562348774 241377040 227619110 368400204 95205853 730895134 94707223 80249267 40325737 159325131 410478006 866624058 729572375 674819149 904296190 860374908 43966559 98778482 483542635 176902408 523001475 103312085 663284058 521694536 773833610 333346329 451604882 356240585 169841105 488151439 395540484 172170163 696587116 252978466 936322085 940987055 561216497 738464254 243468471 267337216 146278438 181212566 352220396 167474724 383901914 790951200 344358542 905603424 484997618 750519909 51287167 228994100 723384313 581140763 631471346 163113340 22080716 952402241 355518621 707336754 647279049 921579531 246518885 939999785 618077537 646475229 464886687 612474854 221323569 952931875 312395193 506994980 629371657 267250317 490753892 243048086 603587710 313907932 63851968 625668302 797832970 138231120 285622083 409480357 348422760 277940860 163784657 687570149 368545746 895803703 552733906 860629833 927669072 426684567 451420244 660243741 65684608 665763410 45470468 576124835 141307955 878122093 850736605 101904023 301763231 326429069 686739194 298607475 253561190 568167240 568972762 667573838 531605651 468336250 983212360 479522028 63436811 212672878 5137866 407681782 497582580 623768096 604901059 850131088 988750499 976442060 223431517 945330519 495362363 218627644 763029503 955976051 610860477 991044644 558273207 123156112 172184252 609402119 884947279 396914561 341589872 375260210 452914176 251611166 661591241 955285157 586018664 408985538 278553086 44212703 294727698 893560156 509233529 444035360 840618433 521674275 988156534 68908668 650253835 497448297 143967433 615242780 520377755 578650640 404200956 188079736 634633400 426476929 90925703 306895147 17705270 607395612 184526156 142322928 947650678 800747579 456438908 689354917 384914013 145240910 304567411 956112335 623251066 435035134 718230872 174205389 440729617 756610842 22934406 793120448 249308375 727914369 167080919 812401768 775691279 73936542 724589373 451562727 707253382 631462371 255131820 30666831 707624608 833449205 769072397 307557830 615561390 27858952 243487971 159823374 439800813 118922639 673721750 928890216 603169960 132389417 339968493 127045538 113614354 907021250 854256429 886393366 690341104 407347626 103605388 6395174 579800697 924282949 421075502 159946347 565594924 191269122 462164870 938952838 631713036 128146318 775894402 606224730 471379524 4349814 828214726 384684371 725727611 953859793 428847558 613669757 773697189 487519368 371477272 44049915 174530488 701152755 557851594 737345122 322026873 417748802 453386673 466503965 641701793 832924525 187359155 837547921 287854663 92400780 28235246 713589809 204770972 989469188 959750612 477454878 964472029 390932991 429956266 220107444 364712445 337192264 379588285 60813399 625180333 342326294 539114311 158494844 338589830 667544735 553111071 337929943 819593416 550887911 91431180 62878992 910121835 802929730 863325159 312339111 26347665 518529258 866599695 428803227 887386134 436011901 932967654 802374254 839202535 637990954 316517925 173032428 499234465 869275491 14600044 697997244 931011224 669544408 256547359 324896777 440681788 769578494 439954782 423887288 244090134 864661383 860515653 89220782 633868254 83725892 352805930 112128682 583663672 920647746 218321518 933200640 400352683 306730836 712146346 337193995 623316576 217860912 368391731 166067533 402401857 177510912 121710812 38178358 658404510 541460917 52062234 973291819 622493508 648705181 239526420 630000803 320749353 817649459 407174491 319651600 919728939 751595937 29048753 579888582 301744658 23754132 946962289 565684167 113962610 265879371 160472284 400809197 247898657 984044759 713673172 479129978 933003858 204602976 983120981 385343662 291866222 383136452 877311171 732547876 965134864 204705240 120237243 620530680 259687837 953768706 456407626 313954386 244757086 233296358 210880112 596800487 445050298 37604285 928686443 268603883 663318310 35061215 182555400 988242861 777551743 533544548 864271280 51618744 168979450 77822469 924409424 448923678 153808471 805599348 491392474 674956118 487350380 627392966 336879472 546285748 209902357 122375053 305331719 31115999 978169334 347513998 118917413 326091278 501349809 787961138 322598345 597139693 554393624 688254807 342286335 930829924 650695891 116547203 833610398 904889705 125431240 474405726 232972842 905190300 153100234 804451902 430763132 502711545 405812261 148438347 787004117 888292874 567361637 517399651 617704111 67795255 996625808 196712234 860208112 931628780 719552525 116444321 913232388 695640081 887441799 137273318 144785597 453208619 283729967 361090456 206464266 278816000 890250893 779843491 529406254 832840620 651611037 382225669 306293516 165529822 427927164 360268483 131393621 777942079 226304536 521190367 706324404 714009624 19037622 879442744 234406978 351865412 595259396 670692603 212137301 214994999 105046015 564844575 305773218 910013552 355563784 960228400 128688250 487021300 46576222 92321529 359171675 466929431 190698356 811836926 559411211 615004492 704654133 626309445 616931896 407832700 588407042 291324480 345196248 24593418 800954413 855533288 172146795 814288262 281365349 864449993 683073868 542492382 627516586 597675551 685424886 185209173 593903794 33152460 107422906 216267395 773139011 901508197 433990747 938378436 632818912 935199632 813959877 735215957 65869389 411476127 659296460 674614094 82314358 171614139 913482546 821350727 476645417 150537106 157191367 661810500 60236526 164037751 573418137 679464916 622533894 709288571 88017416 779745938 229337128 223991929 842710351 266380129 332359556 979405953 809611944 876073313 368902817 592587822 881551345 502680808 165015844 135909813 252926260 113972856 380711555 183249528 235803136 242810624 290400067 109899919 660825853 970281697 764562277 513849027 251654087 379692381 161292819 829568935 806349333 827201857 664945885 844245957 649062132 49983178 621613224 486012081 144034143 857909045 736325922 96820782 934354921 315300724 837885279 128125587 212891499 636435279 438925264 347865212 504189157 583879927 985729245 942659326 602933767 850668674 699016596 419989251 744254126 462486118 507422575 438309056 219376069 565329800 870144504 310481711 352190493 86925655 24296876 223098495 176428545 85551662 528351336 498868494 633739268 294304796 938713047 522782425 576291464 856806993 519640728 379050127 225765187 315123311 268906335 73596611 291817086 488843717 763138373 414266039 935262865 568065192 249412065 200375362 475449838 618229679 352056398 615731390 276112628 164793700 121000927 793457547 586466602 661050474 548081163 953680939 676970608 38831082 458746859 658533638 34984141 986540851 404530582 741447086 933595254 746492846 610332114 297568670 235735775 964523550 601329823 840730449 275098105 874802291 986103978 569395506 915112046 47538360 474506865 645570825 491148570 970050798 112699803 571977045 287516139 225089257 195782009 254157579 246716642 33292383 691631353 614832202 672379437 362347163 803313435 93084997 531868745 737066295 425188233 293970656 572352214 888273189 597448626 751565258 682727429 662092210 520722292 554337399 642177398 180448891 460507760 467882286 360858429 602979088 881056669 807912572 326976643 450346138 270258715 409200240 674176257 619938941 912709026 24769856 899018668 867972264 132133502 357647890 435130857 689593250 946095778 836259522 706698318 873095584 983333823 586676597 169393486 60992679 472343419 598676141 805090653 536018154 123670351 249570395 23770043 349518550 287163031 292556097 575455609 579180624 778954568 601157169 127177157 750267685 406417694 626928428 288672407 443567823 824056916 29797892 90033479 740611284 570591965 92254339 776732892 302162925 486617180 518582010 316332157 512204205 986398287 567290185 153683486 643349201 753079853 936683750 541038286 342928067 391883776 656701071 789167417 891846447 951269039 510755266 220359325 704016631 797064653 185238811 871538567 899162272 351801246 370107565 249003060 177827650 737626447 774034433 769742741 990880929 772482567 643172654 698615476 642367982 886993168 210840432 399577328 365073903 970795830 34402079 218939878 387486602 384183902 360504027 703846485 418911475 370668381 817744821 765688491 231761717 301431622 346083816 3353747 122636577 118995983 643272496 786925405 436958365 342295903 492588022 85725264 412076726 546154676 446625763 887918641 896717813 684696598 372502137 260493540 404849582 108866451 446658006 803749729 503566392 280645558 119571577 361926039 266186192 743105067 889045875 461320855 293123860 337502116 679501883 918225547 330954614 885560296 496695796 325139150 157235428 62179749 229369343 282507813 343337833 488088539 566919782 602064969 886816498 780082145 350739175 369495795 923597444 257892269 484325092 554110450 282482040 693083412 527751863 125148907 548688337 988174413 608777950 463738430 178548461 383026192 502626704 566851052 916962830 410538267 409187483 932495363 860990139 787978831 855751728 487338386 925277416 889089200 804566555 196142354 274347112 490829526 734547201 290183350 368316484 815097341 200080649 315127163 860742064 251683418 836266220 660381903 599983769 372617133 217640813 937226054 444653055 57041897 761542541 106570132 243627988 490042438 816610709 266376546 724512288 426357528 824515000 633164625 290981750 109827767 418162841 98161676 977225649 617011421 809182599 729058794 659959513 878013413 689142415 374817757 588561075 165165164 235550009 321027129 916151484 120854948 941443210 346067672 656825581 563881356 44448890 266074547 253923711 533269926 844958495 725050283 599649308 107836274 557253940 805153165 928466242 32385741 731096489 644695256 384005131 331901984 608546986 731379483 762685704 867900296 112250321 20791086 871978570 7400381 518339922 254252853 477841270 329446039 62597353 986653551 416788117 978403146 692416850 842170320 199631742 302926368 446814911 508283420 73499494 826320816 11066616 961035757 324888767 710891076 95431369 627582401 582932934 218065730 649129244 837280684 537975523 612027408 976685298 166604331 977043054 620258109 84986698 15563619 12320862 955127208 514821674 94615287 918199873 443965230 448684640 975275502 733473471 660111139 483325098 203004423 801536444 150341029 824811385 865139274 351418227 300346439 974247589 407904939 968614937 747914376 777622875 357971571 589381628 954609680 247649731 413914515 100510667 263920333 512349298 284983374 793852944 141755978 395762100 751342030 543295028 425620208 247057943 882056154 584351492 656099189 17899411 486503678 567069504 431906596 310888679 539293335 861254109 39923618 233902179 938476633 835298297 29082762 668151872 702497774 450238440 948673262 518024632 973556402 366617820 183343873 610542414 42864547 348234485 529968130 164800502 491340344 688288433 585487373 840684698 289451608 356018301 46709728 535893150 614079194 194966974 972176233 276817704 801708338 848047964 306830462 127946908 905441980 541300013 241579177 181194987 712258492 765504699 646571022 942596059 921179775 650685944 948926635 849792194 994501409 758032274 247827730 893508913 814914784 950174370 448151006 836610600 970858610 691520906 93630620 35918210 49564373 398437158 195691762 733196878 367537925 913404004 331530302 680667932 631045181 824297323 566291830 813322631 448393270 785106083 924720428 296752882 720107205 381090586 530034195 240187909 244159500 182138639 319608865 800976396 982267108 791720948 537263533 451471869 808161657 753783423 895628273 840580532 202416745 603880792 61299375 135946856 480927376 477509481 214078017 976818584 275102625 281111789 82388386 157090131 458951397 556551916 580351990 745927152 449616656 537032524 446356452 989465675 859441791 652819869 597245840 818771561 570864838 522572632 710719018 788195052 121834482 843824060 387056911 395401095 342650955 364497309 452838032 814494718 636041398 759346836 632312523 530027646 90639774 286036483 850982850 661293147 573819827 913312025 260277813 297030 802340465 632733076 884826174 172643329 584944878 340686199 100757713 185656907 687148461 34010715 23139590 992042353 845228294 469350753 17361509 563503318 636753584 661115289 53496055 796761420 476690440 162137488 118692125 695990570 764389462 322281070 741702141 788495196 186375338 645219744 287370187 512861728 59233431 840030576 144985970 61468482 758723116 232840181 58922342 486228825 686086777 588874830 876382804 357372758 129428129 253115020 857327027 927589774 768911968 995341245 937947234 21401872 453540168 169806685 137087516 92600988 675164237 730852280 117972125 650492266 632668194 402563818 122712138 145395569 862529803 216286681 672976105 598475268 396998780 604906358 21341594 134247706 669128252 25312517 336057357 783829437 208016142 457802541 130355154 606469859 137189212 373294211 665309770 309494413 685164436 645231257 864412474 781066677 735206932 523386848 588314711 302430582 705655107 569729645 288871170 52706772 400365694 187045828 448694695 176553505 486904759 174392950 568502027 347109985 8602149 415479642 121049537 560766692 185811931 784673647 840685857 756662934 271402079 486538566 554600901 195501588 514185001 693866538 397552304 663940183 736903610 335007541 615287846 661854136 642815207 80147951 238689812 119854039 490839045 813573987 457734382 23643217 477503590 293065498 229845267 411143045 997746985 829903991 914916032 7817843 450624537 76031950 424581957 257317330 894380761 939044574 460038588 941654218 872663413 995341700 868011242 230896660 256657009 67999050 387498816 884000222 141911701 676701320 695533184 923368454 832884680 930281308 970836354 384844611 338210980 18242017 985650854 750186662 526185145 136635943 403535729 902317028 38663027 279288867 958271668 865348459 602193380 467090744 130992902 725602785 352706482 69605216 885839978 788009283 487757822 336968975 920001767 964327864 731818533 424815434 105474743 619144120 891845790 321628220 967420530 979203414 207190084 548254801 222962045 142466398 408270463 740388739 324751935 215108442 525821369 280983551 355112259 911195502 798822796 96268374 157237547 897767454 405963971 996205968 460202719 27616149 193346479 638292252 443331211 470921120 380856120 398447908 456507677 106433281 555645587 40555331 357955624 559437962 43020817 392312885 147411802 927250474 219547278 465000831 22749310 866682797 926323750 44588926 590449846 717917265 331307256 666462672 345067771 158470487 341814454 398557933 566582767 889436497 203391593 694707819 202524195 470755166 575972998 802448242 116356720 772591844 587957470 722743796 688159841 622992606 272623590 452652443 605688309 331839980 732485335 803650131 298517553 929606577 439402696 693795043 209546811 244834454 59990244 850591087 370537152 923325295 812659544 532276309 653243670 639619017 366644260 392514785 632516505 314464180 803448522 421395155 763017756 417644393 726939641 532426740 232070749 904511624 9303717 499422955 42984217 766708610 56694205 316964210 642590688 234069123 86373997 88921619 728812287 624065131 618257237 95417403 505638197 126211278 751104433 312484084 8934046 410442306 923551773 266147174 120974889 708572612 702501570 800521918 659368252 675922137 15469600 457701022 870938587 585766958 791981585 35990493 574827466 358363933 957271308 158566532 15097204 674953116 908744553 500177259 131288183 197139122 898608810 89954298 187788952 641672908 542626476 880909243 993525588 281418856 390306888 577733753 415698970 402839108 430202891 187602040 514980063 510940239 5122838 649530763 458156040 152415193 921905097 937893250 840206741 506115976 747384263 270924666 418594565 707377314 197671339 918027376 703403854 266438680 297835010 95111191 376139905 552326393 680326472 376649097 501066637 978485489 136902070 159473121 25007883 932247985 546607687 458744597 713140650 424673866 821220128 1185414 446064053 143968632 462689445 481966643 530149695 875628173 349284788 383585910 747110843 691509492 72406652 451263113 417190414 559692162 989841977 592930945 594547735 449205729 200240848 180056759 499694621 740977906 435032819 560102766 116202154 573014526 90153999 378534922 216251706 49414076 140956501 145054076 411993390 43227052 385567159 763919962 874312164 748983918 801482397 551417871 591442762 715585578 291166596 716126097 144591286 255177962 425893705 870445607 597048644 402231923 533332007 288538056 646372314 672604080 278194472 767500104 989910210 531113866 895607375 282492543 900336547 386719829 719548649 522586997 975748169 143398633 141474610 650651902 788901158 805101423 490494484 330342670 275194965 972092595 47617998 363664584 423884236 840717327 336625984 634761040 657086981 86310882 616712428 848708067 963479274 717768437 786208469 495070970 698443353 591127341 945975329 403236317 360742767 594150320 558808120 264074854 821456792 226778652 491102331 969574075 74691849 361035714 679035633 627370003 239420481 14116710 153817896 27864438 837028595 939563127 288545667 936735349 300003813 56525549 187149749 767366078 947368063 74092738 240586223 304739812 205975125 197158908 642981283 201143544 650617547 135231521 795535295 331928174 905218470 63820117 757218241 390797851 133160532 863760190 103555525 862708409 999203045 154230157 560355762 808191897 715405094 388051090 667692817 941448626 183165880 2695049 8663222 408907799 346492965 322528932 495877412 326002367 887017449 858247384 188888634 277105063 987080707 813476191 897319617 417314063 880417051 901268967 714659891 208617110 112226941 111087231 839513483 645188682 520827738 347526299 870170361 869833565 251203833 185177503 177585952 515720117 229176843 594438332 543556180 601071613 794562365 955182718 901863234 77395206 977940462 137066349 141237452 882855297 428035142 472654785 434261089 770718559 694616099 179347450 263588773 257736652 583469673 20414035 46237621 398884007 101527740 198785780 797238705 743409112 224296338 687382213 186064021 709761983 426246300 132698643 873206468 433851028 873868001 431440085 459158216 543329720 208135923 426762659 146553703 112103707 135444352 76868745 566966306 721280338 54961904 566596510 669684540 263100621 413354307 425129354 222167020 3069427 368423026 694209398 603105415 638591158 25510900 902118314 746831815 666796626 57759538 29301950 558755281 729644919 15944661 26815398 17337868 291614089 245887746 116945064 962867930 934803516 153542011 995997020 324690274 735797203 403295675 861318276 88759867 849941544 145160457 619651528 57104118 507007961 706745128 94724320 530865542 427585956 682384015 740978065 50356621 394944610 522063113 413753186 91373984 562389414 240259444 989258116 568764006 737322050 366064906 496622241 349283821 3113570 601665336 54538332 243411048 774881241 615067999 423428372 55314835 841247748 809542061 14192719 895234790 919092361 568890928 609870630 236026558 858172593 754822795 540021590 353472409 564977833 143892613 896293270 755193397 561360702 383104694 208502779 360416071 338727552 849945384 453282822 360682238 384424595 544890855 756888507 466661139 437236301 127285167 467351531 271329747 771200820 306706261 705031564 677664600 29375642 920879473 608461588 931805262 680444606 16303578 224917068 753328548 438906346 832933988 916085191 965387764 83967012 287619700 96980240 578359472 119444603 400923592 46464774 583002390 40003939 900260174 868440807 104904964 666014205 274734850 335319261 898984910 852873750 732652391 481841753 230427360 695727875 250682709 612618628 285173408 572823416 531824614 273608816 856728351 450211481 943542320 653681257 120622989 635448799 119714696 712259043 992803175 218640905 305851278 219314524 601189919 164065470 20463856 885553018 166775099 457901578 962232288 250720697 810504484 453727280 217217716 584721524 993314597 824432500 880172165 927820290 219854014 932325926 337408536 996409384 427824777 895549873 751546906 145924456 703047649 399695376 130696553 717544863 345649706 865764605 595322760 439174896 142335637 313300237 674371746 41769749 389802682 606773514 446122061 973741720 48464187 940538319 198305852 320788866 382173301 477126538 855232989 310588777 509275442 956773598 244644150 511307104 133013181 579358393 330186781 858144155 331921575 790255112 182269332 354372778 115643116 471497616 167941825 557916381 295545894 794494936 977741554 109942150 253353885 502572402 776648449 386029267 594042729 205632825 652979180 381337244 223587564 944549269 827151694 316485360 414899103 516997299 788967923 53909069 435275592 864048074 774449705 315421022 498345204 205964964 110344732 93487605 715774014 134982051 228800235 884530392 217812948 296904725 338465534 582847696 390522356 631381110 666824914 726369889 945465056 719381015 51602605 369968473 223449323 479417424 197687599 63461704 621852751 974358531 660004669 35182558 109124605 636899366 336216661 920336253 636832705 101658440 567476334 628484456 354411210 363193861 129495639 167354373 878808516 554437923 259560783 414142580 859278382 821476434 628923911 976312422 890134296 624263115 703290725 407255306 104012361 633223086 575107283 809627995 258479490 548005247 285682858 793846540 708419542 878666223 189576739 664864253 966287693 282680844 55710909 863392209 343033029 407483648 545232133 984586092 688608927 395722710 218776895 843651602 842319600 59855146 836954812 974277276 102022491 652181956 958641306 841126045 581633310 512902518 856364693 957581009 149204340 539370180 825962969 999051182 308965371 215474891 232427550 536802351 706251926 530845003 562293041 7918389 361618670 211877889 516572401 827268086 921664641 741857429 739711058 258337211 99297489 714086880 545915253 614782758 261805 401544705 363772651 632812488 899353831 322620979 590714497 403474365 578564630 805646688 799942934 752953324 922435958 432004455 829187926 773159096 438058928 622982396 364918924 761925123 32629468 971323460 687869172 792904304 783993676 803564715 36963137 518789265 727111946 37257825 53235441 38006294 191871098 952234754 396938428 124357619 115355303 106249515 608555169 868981820 408054718 486877805 396905031 515854016 176303099 326856956 825640103 195404929 233703450 926805409 202880149 472762825 325876014 767978309 601162843 328626839 347555463 77773977 610532766 594334611 818109391 537475988 718471805 492129549 554538864 919949683 857913456 239421810 815978224 88353463 135090608 383296603 269751028 678741141 894638587 476761788 225800792 13100378 609760166 760351404 238800358 670823196 925109821 875765866 753943692 293234189 314159756 991432439 125380445 637836508 390732120 802690134 874934176 124186914 351688994 923623260 758899450 219141502 439763366 306843246 520686159 749567302 78946883 997088167 245776592 405418107 546215860 278852251 234600454 861619980 317370656 316586880 226197518 454014362 486716841 666391126 974601369 248982056 745247933 733061584 82220477 634346318 884589436 312789940 59008037 215494612 681088981 494379057 450562453 285422405 327350533 912743844 904025576 677572743 704105326 836751655 491477672 807345819 736603292 103817862 671211457 99640020 29984165 15055126 5159201 574269042 46665846 712863867 4636436 463509101 337828008 92079075 305675441 66043489 640638835 492180736 399384903 986763603 919447945 663378686 328131304 915931661 818063321 421344345 561834836 642499746 671730574 356031935 884766779 222453766 994056493 896116537 492545026 410645493 90063642 568010385 58063584 769045330 310301113 754092084 267191885 32794153 608550518 797536991 228131564 4819736 758090208 386248880 404298042 918352045 966782019 949134024 183215640 233823625 74689217 751898519 802191307 42082422 857767149 548376993 816293662 354787188 13103399 722750944 343466549 911616431 210437317 947379314 67132738 510885290 705275575 155055088 813952014 317872898 780692336 569756905 855121293 982312626 61070810 603000213 562337073 783898932 942876894 98632542 816235063 112700304 604174077 490453575 340749222 130528146 708966819 21622720 873959938 651667030 25135357 813973504 354180487 35751195 833447185 24398474 292675327 107790316 72035675 296788020 488911419 543121804 679664004 447715017 731029080 293104382 135378727 541383556 735373360 387444501 612861160 320701674 449883438 643733279 918674601 943876051 260382161 596944208 265936430 652971847 677866412 395839937 458967683 316293956 697709778 512395860 124340784 30526780 745636794 383369568 561259619 603938927 491488564 312118897 423302109 119707797 829255056 152836832 55850227 380185374 740240352 796988226 927967324 270339582 187570353 763352723 958410626 335283147 999183242 665565705 40198149 3397629 502819483 46198800 951515977 102711620 800776424 384040015 791216501 945441658 715831521 356486140 579968825 167900280 472130202 743694363 800891823 174051828 722710807 365488307 211100267 300665873 326910823 601555016 519706138 582965413 435591232 597916994 800097640 892265755 574232052 949608630 252197784 752254858 284540717 716863183 143223234 144805127 844570610 751117328 126434958 633886278 388585865 268806798 891316536 53968567 701622699 187923835 39778170 137861780 478414044 520033581 749502686 981601269 712119193 477368809 569990200 760636280 400110574 598462422 37467524 275340473 390605782 740188378 960419255 454395155 513465241 78877649 951538366 412569264 925999331 841540917 231238668 619819421 725538132 203622286 759891466 971816320 901405320 102374392 588521503 734814727 744482096 497983244 228873746 744322685 848354091 400692313 291580362 593044140 544287388 318862728 460481825 943463962 568708555 669821524 824561215 45043699 807714002 227378276 553048369 787212059 946320661 123565651 946110156 569929412 287947669 817515004 56125254 405571874 423637600 188967065 648136987 856162575 184999023 32601912 174343831 684157976 841563245 650208798 45998661 81570080 236453686 955032537 354448083 866066818 874078155 432387569 743312522 458846759 518123313 319833691 203120197 630485203 517653901 257526602 773365533 776169656 622097049 843761454 702180827 391261647 273134769 156123030 596119303 670456655 788927443 466583620 865200433 507152571 925437674 676036332 349845733 198367949 672707204 199872315 629862548 130622686 746971002 128445949 350008725 564200649 908800984 341479717 990665520 70433445 529980507 281365898 151506419 965013874 263434333 406272639 9665043 939420437 22228129 451089343 364912074 809514146 477466310 665668461 232777615 822083953 995664213 905761403 610050670 601743658 731592264 354752378 916306554 551239668 138859204 197261029 847754090 42186245 778434880 507992628 918943413 152578432 721155445 20264467 491675666 236894089 579307553 941877646 841403760 340117596 201232474 27849979 638281192 59303645 179617526 55852569 648656445 429920001 665788752 75986307 867924971 682570101 87877640 350738270 708891290 362736966 432743062 65347663 290514656 777787796 710648530 505377381 640912642 550618423 346586881 685076382 568804447 665850568 700198015 804140499 389273414 417142134 604304619 934390186 2515360 704005459 860854970 775144518 857381201 518414961 619606714 141739040 419386817 696404376 796531211 352207964 466338223 574620825 263028633 633335643 388748395 324593515 672944281 645798724 939405398 175352970 619694331 656607891 292658219 959507676 636100712 30783117 737729236 693958693 324262143 264370413 349855312 747355405 658553471 357150056 761845095 956327711 899460445 728886282 58770100 767589184 71878109 721503006 273996992 41834981 551475111 713064406 792607623 698283216 978720246 950718609 708155819 952849009 558337154 694556267 30454998 136958967 928066763 2690772 227897194 199434894 52832015 703543043 602854237 285270853 199330687 768871478 355334558 227990481 14664041 857338549 231008835 845101646 77563620 895372188 982652609 927954313 959027751 504741486 431114737 760114230 469452775 144561347 730241564 840813730 207666339 595433740 54546015 903429993 548047955 862348444 750674561 979496556 956437188 460517162 230349691 514947153 393708260 955502845 558342922 726860160 884657305 559115920 776508113 991697054 905827915 314496381 307201829 834860226 936437408 558386221 340267251 795218456 33994501 872890331 655744973 382555551 945648891 254837059 709220049 24442777 594619074 343148464 205530478 300901225 647703866 167256330 482455263 904931781 760418602 537713149 373620118 934200640 416917202 339624325 743314342 322782711 703509307 389413129 501609383 710477103 371875598 331478665 159666278 461151517 484756779 223359185 875983239 395692958 679508175 285160134 155776419 561064101 93622963 276979282 40590136 393142441 228505913 623416109 137115355 693764431 879701494 89312264 142338575 690186788 799601887 798398306 891527335 898810351 433701382 907550748 848084251 33768364 238384993 653080176 555519777 672603211 227008671 973854230 402447383 38706720 320200977 977516038 598858154 27602829 517150284 439394441 379830883 433163817 66628290 411607855 459575237 943017469 822814282 388510563 349140503 726490253 234448302 364643171 925709221 249661799 707948916 494454364 16083299 591222430 637262944 207817220 906482361 545879410 828887727 366086812 863501230 655903145 621953684 384355452 2492009 897884542 842896096 508580471 453471193 335198163 264451366 374629189 644270267 623494850 800230562 603803174 106931205 29560518 117378785 442454402 952956986 509909883 837755184 207388306 564682325 115752822 428129703 360026879 87574205 282368876 666379116 771621895 605026296 625221000 390797205 681773624 759246909 232144888 439489327 463507412 963056335 435531758 175666014 313282252 804741020 236704518 988395457 283431415 915682479 490501257 314141890 364570095 569538685 203424340 270883607 927859009 103690932 73774242 685432931 59598364 473484504 775007557 723376020 321052935 715531 3145227 160670515 117197568 241483112 511299767 842157136 350086607 566501747 664842470 335670747 516342644 757519181 487795195 306563020 930156660 966045481 836268449 883584629 933431974 524847391 932637720 371528497 122058905 371097302 510328131 701447159 727164694 735329085 516804979 874903817 124027062 82198712 9411862 47116661 204928304 715610606 314480987 829657024 835429176 657769268 29485321 638213199 500134742 678871320 882191198 143910774 185573709 733130711 875388263 843223327 292171625 97615327 692758935 692426369 749627184 332795404 643761247 424471463 736967041 512948332 55424868 211313886 970256515 623188021 925354431 517883144 267915931 804797029 616162348 326732706 72842975 511764079 985202198 3664903 149194265 346052188 112924920 953191473 327216436 339571439 222554269 860771389 450687323 715066140 106178243 638860971 487281392 479654355 585904378 604175452 185739140 312293382 853774477 179937726 685437910 438364825 139774924 522514181 558002312 910374931 732359498 666596742 129199318 618416779 91821035 864615889 634998563 162724500 840081232 128174531 844273297 798436536 964706755 111904124 593058833 292109773 50696043 895859241 374936433 496092925 17363595 944480113 273649056 189769723 221850854 249598705 192645407 108099795 166089612 491170915 20091674 513228132 664462242 887584862 246028904 962867313 38206265 113258500 376919637 302988377 28420372 266863659 669422246 286381929 756401116 609753728 53871372 136824471 621438890 731440655 57011175 616872348 689669716 324102843 509915124 693480294 97251983 859933429 884789521 574950543 266982767 217986585 47024049 123471580 363070378 154843905 438985476 209730947 897173127 439816713 992636660 869300236 817006478 579840280 245310736 725284238 100059661 105079146 74993541 587522254 385796925 508118929 12132312 410385401 337679179 393399788 686660947 360205928 727787556 345045819 557854421 59310665 87304087 355063520 346494210 892865166 349272494 316221755 756241619 539648976 11202443 627680660 109535041 791917253 962909920 718743283 381819486 263583481 850400404 926280127 690650368 163880474 990852965 139426619 192820651 369672083 824075431 154705919 362915518 75466382 923617021 325295932 875197314 400884755 910760250 312752249 176629666 377657138 832129420 897027229 235123902 343992369 211135836 299164344 7897818 233166388 270132994 134122223 323096006 636724856 206728346 739489773 831181761 744179590 157895831 627517186 403723630 973985334 524720634 809077068 572824222 561358381 485476980 833819841 519161557 207422940 873142275 966257875 773300663 607112255 983239607 416415179 919755901 857272599 177685306 63872778 51114299 434816708 317439480 357412480 794973047 180796638 436799024 140267624 382648756 450046959 233261261 269684138 73096192 616991462 265367756 478163034 477002737 242400460 688001674 857497918 159687032 561363703 313435473 171819345 816391896 772487006 452010013 449173529 25545891 777873666 416964208 666179185 496385881 432222001 41499089 379910650 744073992 227719485 554053369 159920943 301018023 7591249 22807029 343191381 283668653 266755854 284333686 470758522 163336440 452802570 62382051 459136314 776028820 377377815 284667368 849213099 64761128 507939821 35475429 421972326 434336764 714428448 8474242 956771670 46075338 498280818 12915405 117806659 642330190 100905767 204915023 311987887 408683219 881532660 619312199 507070658 219100140 444013062 847185077 900119722 407565773 808548310 40100473 356682437 783549564 186012657 720526837 675101028 574141884 158148432 353422717 286400157 950313356 984399505 651602642 836269485 591681443 123704311 14665150 693781955 331468708 969891987 664200972 161954909 188571704 431502121 657079150 417056934 879642751 934556264 639250973 995145404 358763830 203907521 638533082 506093892 278740689 132154200 719390541 926160000 91757571 808991506 234378027 146141456 936310695 255529463 663749439 113985634 571900019 548569629 19658150 972909226 695248352 215489780 620804310 785659183 264658209 805131348 648470891 333653547 839947811 586820959 514635694 81054494 760937846 176451559 276134751 417939292 322732159 77454382 731554928 362007621 168752207 581141856 420845597 633972369 566446620 781548342 217833581 909783798 111049501 644865948 696515864 929146005 621940508 466731482 933897283 310037598 1877818 443708394 890361895 187624458 177503578 352273075 453915479 707366054 919110856 596211570 167674423 952016753 975989981 915635689 311351581 123315945 541952936 257334842 185151784 61915180 149214596 156448639 684528691 763761290 405332061 591923610 340305595 519731248 126781667 597335864 489976092 230896677 509528815 871610145 410034313 781030496 401672612 548971012 891605276 771878134 733602791 289048289 111696758 49950577 893877718 193296741 882069165 232901666 407250621 907496630 216484103 270493280 375887896 627896665 734506687 390241063 343604751 850482087 874756758 693466473 189536898 697951544 321472788 157554599 572881365 39295349 480149932 792178843 838789326 755485311 133574632 937002971 545451600 557557327 120627277 495698787 340855700 263851352 56029582 329179074 727522540 335526842 467006906 978287151 512356922 381396441 630057164 817003086 502173361 320341688 163022981 668586802 677678551 406794594 116070277 859236802 412191487 931742985 680433161 833081275 594090390 540049650 172165404 351783136 748867811 945136621 771956156 118376958 340762904 597847219 51011257 194739748 674077564 894321841 20417283 789473710 466919545 749610439 935003795 849345309 101526572 936551619 684022028 376928621 623235971 740625251 963948289 42579512 236011026 967923383 238487134 308570222 72613525 883480081 739633196 763373585 792007614 774237410 2492630 207073856 561751593 971805012 727176709 129854255 38210290 584999114 490300188 88532991 887362937 273582713 15691521 909146330 368899394 162908777 704223401 326075965 201846061 15549616 98755000 911534419 859601410 368001889 190893384 470566005 999211754 645297767 155699576 811102045 246486895 546591055 638809249 638126714 682987527 828723086 993637889 145748782 91575279 66570145 978831609 870750459 938444695 785135347 166032938 344202529 735978585 222188541 416473945 316687435 983727814 879468875 922623067 733271572 329046841 738367190 617977796 12753774 247296651 998366166 598273097 714554630 571058112 747842908 682250531 462621199 827654382 283353204 594096899 405963769 235462971 975829645 578476604 871425655 426265788 617617771 111886534 104940435 988992901 705357881 744147124 846379733 546678308 663575268 458523194 377892291 102159269 77903014 714796890 855052434 782597008 173426117 789222235 944623856 654237110 407971355 231457589 276254798 259587850 173889224 129929711 174811135 120823988 271735843 105163902 795365490 125705878 570983351 159006650 201788554 362098708 460434186 8271276 914099641 849623181 772025743 167565433 337801230 516918314 159762606 263832233 439319510 603841205 859654234 938205303 663061764 154281587 755497008 204823656 423157480 50746989 759454330 512034643 377741521 748603275 464873595 746321754 995194216 812938541 121034979 587672018 99800550 294461071 276343400 379487530 14329823 773331568 823997078 546187792 356010117 994918266 20839663 929322786 934065121 347810319 646061821 388633100 76028261 645588199 389479995 688028173 90902404 997488994 491893780 500641319 807209268 595506186 840367711 414587659 771155023 129616225 242010549 762188946 406101568 721256198 9392817 72423779 815645570 322951270 625176632 437465987 959713439 741214220 817537435 456258491 49540495 5855605 985588841 970458010 693017458 174657778 806193206 129110722 663721698 231578177 445415066 33244442 646549167 703889126 318745835 504764432 226106401 173598141 899470220 239849363 261490771 262013852 69849995 506779699 823763873 378263238 889919819 426200604 576521972 496978819 190832419 68148864 16747395 763959971 441615039 667889052 811178038 321639675 517377653 555653379 532652655 578267288 394334381 565741832 276676923 186926437 496007601 226806182 77762107 734634564 167057843 188267371 771154575 633422930 474614594 760617088 663523074 712671674 134084405 968551979 152367148 860716133 672412449 497603443 872274153 492141975 623173435 244437078 709010312 794185819 604175024 580843929 999465575 81741953 8112468 56518585 874177674 808468046 680409379 254078688 609729604 458741907 683114545 410751406 297921760 315399559 380426206 990689528 351550727 791909069 910189361 984785397 690119231 131739348 29378966 190742531 274845865 915727917 232323029 586689298 622362309 489804827 874230989 278283560 310918252 484427287 131416478 237343875 10691775 418203298 904769795 498061240 854289518 563200139 581617591 925538549 576998773 760960827 936527990 817846237 661299769 523590046 244541786 609743587 896431062 667758674 52995762 11172616 26887872 705395862 871216480 561435788 565998719 973495161 838961052 510765462 999361485 197863545 883494148 15076768 124416216 158112571 81535701 146658450 843780285 212252444 894828930 941980576 515780213 24384804 255375119 194446930 448446376 402055449 988340890 263707298 515670199 503307529 902051385 694053968 878834421 996550799 43697996 254944624 324847142 458605054 232530880 373816423 81717105 155952942 599549929 148268272 229613513 940660669 205812510 572171433 202947527 389149375 812412525 835154818 63953606 382877819 97351944 706204203 316644247 363225027 939367794 196335860 466856166 192731574 993466993 438980070 206947151 327395023 192367936 737905034 352713173 650158954 713937786 924495018 888506615 498971763 333601796 776136299 862947392 201737051 654860458 218002717 111273146 762170139 715463566 307034317 446262079 645486697 125071309 678062371 896191605 173167121 436569224 884272798 694331734 55863085 517008541 561675137 461723604 97432610 75935072 1540607 31185070 513979843 880315637 983440852 377802758 100566940 948978939 927836083 181195714 774082962 382138092 199888441 990789017 984861032 337896957 680527241 312564730 132311625 461085328 97809429 696855080 737000060 631727878 249198071 299957490 368614387 738145851 198622127 596094228 873135382 740057646 170150171 604532084 66467407 953221220 50119138 173469133 794595558 479647516 224108082 706029627 550862660 344610583 301597250 940841669 268938417 57489524 87776659 632262891 642586612 311052897 417091666 794593078 36279461 797782015 108687147 583463054 320448449 573869398 404400611 65326564 372908211 802101311 998446320 847713693 613602746 301698958 468898964 386283488 549406762 565747440 132592246 678046552 121896647 630458294 422700009 269257807 714584086 808654224 676785192 862044607 662219630 175831546 565133878 207505017 248736246 555460421 56979856 569231137 393592373 156254860 105292607 711299428 381177787 577191228 899039768 787524270 907719478 45808329 616885726 79769986 135064373 169944414 180702048 115098463 819378373 927725300 236566189 758542959 522059091 667364724 289813142 793194336 92755148 906027126 993748175 59448956 974140401 312073856 274444517 793167340 552294215 533189811 72535422 381685835 944131527 122074328 213881313 943534771 722371312 648692899 346919952 913370126 731693102 175111984 299481525 603020599 684531152 779658483 600308107 266059682 288833541 548119590 294828668 207196956 806763654 647996569 162038750 910390597 764280953 759369361 657443231 964813841 421430039 744184108 714953440 35386058 242320927 144487859 606315781 302269411 734873703 973665747 664674386 652105329 778535461 438913279 515301652 581021395 265436796 939186270 146704249 318386903 385061696 565992000 368630856 570555507 480256879 844127113 641816347 201116436 727488356 755872096 727869977 572212347 518872415 872502023 723761273 933828579 759574200 761828965 346633015 455951487 784533825 582341639 428246486 337878477 734977300 121199508 572920261 960852497 545431394 539309803 611754177 947973469 440438800 893708122 459012680 374793932 643660607 753888540 804883708 930887718 430515408 399732718 699773976 758356644 399425293 304581475 978341168 422009385 656965642 625745835 180359863 19332570 623400849 284922744 234455988 353195922 428189628 916553313 600079879 555745461 713172564 534241325 346749060 867772360 662654945 611613018 463312356 369619794 289472729 48500641 460407636 848130316 553675879 79684064 855128572 235388755 627424797 417127187 45736034 966728256 998196097 554623532 926829588 529742059 185426423 937362952 129695627 991095099 575997805 44969618 679829904 511465250 122937830 173486254 22356307 609715755 128429943 463222692 183693093 268999328 603122457 428587789 955038639 215836275 429966399 195476427 473347467 126302271 624234267 437419245 766557315 561304534 348193399 833946937 365616549 193135975 838857165 200477903 443793627 681912840 631139018 755614675 509594856 729566077 842066544 234707448 634943233 86027364 125976765 303565822 730372529 494597357 178571818 544066765 702821455 839731771 704965385 90180678 12560883 448416066 953589348 153033458 232671172 743648668 196740530 4447050 537194349 340603588 498556736 651679742 527578777 817020443 393941412 692116887 26154992 63842016 317549323 437363033 526681714 403272822 816072298 285798730 695288022 719932602 25206596 857093367 512250051 690188597 439941927 714563420 36626347 712721442 165129835 934733824 77543163 219563088 797457246 120014881 648713303 87880291 521558757 772537089 596475053 449416192 242605806 861839500 855181809 81756994 157130700 833588220 15745314 779290459 394236698 95184499 513552847 444979150 796259615 843475159 276262423 3703170 914280642 565010467 661213519 908521245 998070104 949797138 690443296 946940588 363488380 287522631 230295912 414049505 10109981 728493927 19137435 498597830 868408143 398176561 560652923 115238909 808512406 51794315 892631712 97771645 992979759 100909587 976269641 79787792 564497588 895397233 205430089 609600992 665409668 852593645 551414804 730529244 1745764 675960737 384868118 152438540 631752816 732145487 211728744 872665102 726682740 754355440 201206728 326264069 637009142 464343475 822258375 785992227 752505847 525414161 214392727 355787541 176475940 868345654 39527097 520558429 216548412 199620466 726002279 37407307 12731103 920289301 637903350 220666908 207124449 373346401 666308182 911648344 704586162 547780933 189410066 89962253 671719177 608200928 98470178 685428091 438038251 786933878 524431954 982117089 452592380 551724889 319805330 936549268 986795183 390002005 248057440 439623903 202174202 529863487 669743720 527964462 473308616 457999233 94717099 150380456 250133731 176614558 210178516 828817765 245496047 794184878 100618841 662204221 345833518 508578989 996325807 332267890 188209926 806308879 182097129 115822701 171412537 142298546 598295049 528428230 910779270 136561912 445637622 459069433 364680401 121588747 522467379 719142754 984162193 965513165 144511300 777322789 970868921 894471771 582144302 763416070 628851134 195107098 675595136 455917697 874000945 75980757 291272521 159033861 31921416 646399156 181733046 375212529 55584401 204894834 774675181 165964719 309010194 886703439 601780969 749043240 136710245 747560929 283850049 310955688 750927467 621323044 146985079 258914879 279274071 910775283 798228591 817909847 663619532 614003420 898304113 948370100 243943228 882253685 629686548 425181690 443060117 656896689 432530917 416585915 676175142 840257439 269806146 474090303 299306598 223120213 254551357 676541176 318104073 991941915 627526846 73552173 995588572 788091897 61485374 842494838 383351939 874807168 996965182 642894104 237127126 282091934 678609065 260410693 539464771 607527988 970252846 675835841 729931580 441934481 901716998 643785652 262994174 384472686 484364531 523310431 653080849 69431396 439804096 812238771 933429410 313658230 328872092 325704668 352820435 296954419 967777511 268664401 254974334 367939517 144459770 756509922 66744377 451207247 648449519 285195608 274380882 705819567 256210167 671459940 967402582 144755086 869515812 587204306 836177056 999560030 186691094 689400832 764510343 624296407 874202817 278389981 573443471 982362459 738240812 93160712 176792561 331085047 581833814 504476069 451448149 702615242 479143178 306494327 797922741 75759260 525094214 65877417 353666229 31629480 335037852 105847933 973755910 69159517 377635965 140431407 74199711 61683138 248004483 30335313 557552831 550692318 665187300 688859664 541290969 925463278 723146696 666787392 3101619 911015483 78914170 476156008 729603135 758328753 502142731 789845198 134967471 453985476 247608813 995423480 746149333 82499319 706034498 714731970 686562771 124173394 93596813 599038765 704304585 702671673 642485850 12648023 63383031 132184496 399438105 587584544 670674185 111656900 397575390 931078021 760761611 661619122 163226522 803697467 617805086 830825130 247977170 343545476 642433561 304866327 730884792 867506521 589631045 338102764 776786834 518876603 872570702 972123511 606791401 228232707 577028635 304779484 437703836 365085990 488016603 273475243 693027643 33881215 711680031 437095496 68879660 958808154 725645011 690164068 835486893 372463013 781598799 423230082 664582490 31452200 333285781 582043250 599312950 602191638 598966227 957541357 473136901 15676998 808090134 375954150 532214905 298904729 572068271 364664311 716186076 787797858 989698518 545668945 910487624 165077358 182646264 707795555 985076559 58621536 184394388 210409789 505645449 322261948 91843024 497719778 557115930 35297325 725025295 728824888 630958222 865309728 1777002 705728268 698378833 759789260 785186637 7567278 69743789 862658394 314820204 242220248 85402892 392369049 575944254 454326669 727189066 295010679 422819644 831198993 529464155 114413900 240422433 169904579 669524078 32499147 786607875 842739871 533787465 742241602 235005651 482048425 736307076 71695844 86729975 122220671 557943533 832950817 314072926 509451823 327286366 147535519 908062924 266150112 207416414 234721812 651628651 916676952 590506136 4203150 860972645 639915409 424526261 474605067 139698342 678796064 492458267 155314693 316432250 901953847 780834109 438319245 575408786 583032704 20009810 373457049 115271157 866593319 624821486 789651038 486523756 696317469 413029203 637224173 450104603 866502623 892801953 951059303 363004377 785648508 604768256 885786166 594627492 524833461 538356735 829480562 527581151 830087886 601889252 700450419 203072685 990650053 184604475 323710034 643512333 513568139 893226302 799691590 18502548 584490207 525958873 293140953 62221517 802148138 323072661 376220958 736270494 919900830 365539078 911715786 491111039 942354445 518185828 975336087 838163257 694815021 611468689 79713768 902289319 751969416 655511898 910908138 280838755 176999688 869664262 888434827 646997639 663302542 195364806 184126863 853876032 49299255 27133656 717890933 528649602 326489497 916504132 574030829 401103797 110481434 204839508 945724417 253896972 72556865 882175489 981530853 592639689 241833641 810323313 139663241 97218775 219200110 165228587 897651874 224723516 951341814 561970074 376527876 68313524 349918796 232379577 951039894 262683384 881613850 440960913 669561493 290145379 894011317 160739495 394317613 869173218 891925138 950226615 279726764 836379147 183656363 726082754 685830709 81845738 232160551 425323691 159091340 881233442 532883365 985410098 742888567 585088451 400254150 231645376 818961552 616454965 189702687 47345676 900871996 289528602 542260621 391345143 207276142 778524373 99133503 586214555 699568120 818634162 640253653 118667220 536921746 451420134 507791949 998338983 441775999 834168873 791708022 860876104 45479062 647211186 627104872 574184040 885769148 310303859 12333389 441117770 1816788 93380635 853654136 686617858 537589870 393082472 219354114 321998765 60914631 248328842 295667327 697012308 638627010 649885268 800191534 186100385 471944288 647860856 184640760 996229748 373200140 625604737 494083355 182705776 752477950 641882874 367303699 254246567 354191596 424002881 235430776 480691300 283212562 474972346 4120285 855060162 480211894 377386012 276325979 439496973 567866098 188236690 238558060 823464232 944519717 840447755 702418634 822417473 406797389 35568183 838871824 158528534 971986696 870314306 235354255 419375026 296101930 298181120 188934029 248685873 635738431 630497581 693446862 603311356 583115457 698109107 236167694 706206432 710912637 761361192 633762071 73373793 219652273 23411646 889357986 508648722 818158209 67692300 347667996 726366411 274809129 630718917 116621252 314587835 897647821 25047214 169955959 417222354 728670987 739937381 969416632 800891961 659074817 800591680 216600304 141724554 292993637 712724492 87677677 821711690 525213514 545670935 364790710 916786338 569353281 775044523 234230863 133709447 365411699 851964983 481708678 780266929 809382772 69335421 774434537 907308919 821224324 887309074 110200698 235863105 18527235 993112951 639465988 862305377 39197155 373199109 614451937 447308155 765865075 986581792 576644375 730099198 44925116 939244578 913317481 860020671 138761543 711507524 643185853 693382596 459888651 549132905 611551614 339446308 388432722 441175611 733273534 898614444 396761317 743827548 332509064 553438947 702920003 655592080 187417054 203477076 203436561 758934005 309542023 814038112 896423296 323124485 653444269 494018647 437831960 844301544 315418941 557493723 836854392 536479918 394001600 943318283 161145922 851059492 165649779 144601927 593352098 118351815 528928300 288901072 777206788 705914876 968596249 252003463 879805609 497642628 748951897 88188316 746865717 851542156 930728259 837022079 584367606 634131804 603394012 319350105 11809025 105784889 41740410 486193025 774092715 178768672 660045138 427329861 875440424 784133928 163498258 722787970 424672829 328725318 247828245 170224907 365237779 853283054 108236318 161626351 836882408 756637591 714892538 309338523 784422095 638141028 180765878 903240143 149533520 570132793 385564096 620067117 452343059 42882108 969191154 694459794 934107033 317033803 610441481 819974230 813302859 123889598 600750260 107286717 707465402 147304407 915208645 771438197 431015863 830077559 59405735 445200782 82780470 651701019 257958870 571519126 795305066 233076561 955836552 539374118 835349234 981176843 819279632 607874988 133913500 150992737 436844874 723221252 267591004 216574287 206335286 824878452 715672361 542841880 620024550 750872305 694840907 438291706 875165936 52239195 648703336 919888512 410544947 171991057 74385561 734381964 155499975 829574351 864942272 297629679 243217887 30258219 588876368 993016251 174657093 960544854 760096993 622708153 464093869 278112189 722877455 128582873 788678095 617349160 722981528 566058259 1921713 735732281 151635682 718590164 36386123 130573409 499439231 199023407 974237113 485265718 431374586 359982749 818281639 891296431 447886932 95824408 512162490 562881456 251616858 395834042 832840365 865783294 488521650 284687109 372353795 793599300 931964503 441813023 24249782 602894219 334539792 109584874 951574316 536391859 415556712 18367590 996216881 558646091 474958476 918997005 418820826 684975506 907058583 61181881 809866417 949840786 842974577 380804679 225750118 720702937 470309861 25545677 605265193 647439165 954217460 429966796 217446043 121883109 53801129 776898534 11416600 711458738 923492957 972574398 833586468 474905614 712826897 105756332 443908908 217982815 361671256 471338693 695467159 754021773 623233647 191371743 386213693 758993765 407615208 998408547 120576960 465417732 805214116 359341982 195250984 961483744 188991848 994416910 391887035 288097224 835228795 611347893 430574378 176062770 157530606 536880631 224332716 789389182 788445268 640963117 448140414 263924216 650357295 142254402 850847851 795796199 362473378 835819361 117841169 178174276 464199646 273221089 498535523 638656292 511432044 792032035 187514064 553145180 720311550 530466645 476943927 376962965 449313180 914639632 535354872 713586431 549216018 646346546 143244221 272607095 267088537 544204306 301960656 42732099 981757763 878308006 430357848 166630354 158987745 956269243 386936002 193492869 859755612 297504165 857864223 514744884 802790126 333265264 861357237 751342335 544107023 805279391 888457460 74172028 16280398 32974299 478230444 159983277 501495002 388230836 139553723 241278983 626851339 389365582 753850213 101086462 396421233 416265430 224284848 229564524 188024046 982094539 838726626 873641284 274333113 850148420 77290935 56807058 552999072 61996603 962361710 426209770 880089632 827674042 884245028 235855264 789709956 322235185 44892662 144183853 524709837 371141800 492755165 375357261 896077246 567549517 756558266 658049451 206368513 468742014 487496474 8808014 385426693 846929044 909253748 63123968 921192505 271293592 378139822 268903164 722120986 148208354 281997933 338212208 975974045 389686243 951214741 204173499 112662858 150572613 528510669 370073573 62124576 941640744 536714120 313112409 148388607 504170906 302265824 194592080 127826661 595223401 723892989 220335982 737016055 875485220 409957600 186749973 328831498 489916864 183201373 589734521 356023512 625289733 554074962 596555171 289516062 973370613 783387795 283179397 275191430 547480598 942532118 108242966 198126774 449499902 607315759 280411781 490639971 384501478 746215555 240968211 792154602 11191763 159412977 927920156 385791490 860216530 639660145 447804215 215215880 240317094 787573210 528546620 894315051 611261246 151150654 353096541 809541620 278715420 928178984 131031837 212575625 427447753 722994140 401252274 939694790 120589390 667154285 553948529 614238672 255868257 634181724 784909342 693673082 158495316 777873388 74546359 939701694 656896403 418026255 337700602 454658080 898021968 243380650 488453399 287258597 750223894 483969922 435120686 103782746 369170622 195312228 690615343 978697655 696452336 166823589 673846335 26239333 709056159 375392131 287768472 493099987 497756632 640177037 644021081 608857903 790306134 546162706 458920366 333542141 424258287 917195212 695643958 706387148 963338355 35181686 247751151 240496461 906564222 225498887 697582856 553981208 36115520 281099835 675814699 645211045 572133132 81700761 735407844 350629375 68735029 256127961 282993083 410324775 356420986 54333143 772090799 457469795 140781054 549067725 57165546 267220546 725528019 858611771 778982301 106319942 115067469 542759292 311836152 552447448 254477437 594882594 132663770 592478757 574032864 666266918 253107197 860625843 292213187 736713986 162091153 727623837 805873989 476211968 139343310 221575231 946502141 223559506 348947238 282649905 525394065 625050409 859259846 303126383 333389702 828026419 410246374 385823184 909982200 292912602 132406228 737817366 390295668 501638722 678274014 330911992 487975623 970559700 244722774 523029224 505578918 674639836 235373742 762952003 861445608 405542562 619508058 996698107 566967849 292477402 167742567 378332140 767269113 725214647 167256617 825937566 545165002 769887739 807579965 756092073 72012664 15784984 501756589 330787533 629918482 990599654 95469517 872765820 344894904 391192276 137566849 491781039 941319857 423885322 159620286 149906772 48169031 93040026 715721795 327874565 931670464 332507056 306531787 575960506 392424915 119721964 838174958 674659727 898364831 827275567 44131425 342529747 888362862 310751998 748442337 870769242 397615235 565353942 570099507 810781691 468584007 990693311 131602126 293032839 992206847 601156387 40843637 811535246 617811852 881876982 827543725 787429787 257227313 263710725 312481717 454212069 773847341 768240555 539364912 207024966 659786993 927164298 702126482 666217391 806298814 608637607 766623786 544260017 453962597 739450004 730846640 984668980 476273784 391715737 60046380 73129372 42655949 262827748 934127652 629022303 779653914 666576283 331067136 779231356 564923504 629191028 130675903 833710344 635149841 286589809 532379936 938773120 428058890 60468836 994729303 838730958 16092763 782644091 312334045 886100280 209538784 126847147 831134633 889251805 145196371 157161296 281638251 571902738 899198350 161998871 239273423 655840907 936958470 737952498 896466093 961901472 327752767 60756224 81630612 157050945 588352057 752418765 827357085 784316444 626913255 250749690 256184153 872204629 356412877 74355828 985163498 435094031 47651409 248465432 112879208 670685223 47292315 342525296 577026294 738081272 944053312 443092631 369651426 850285303 829944066 640546238 778041599 75842289 541058513 209016333 724136498 669510019 97199500 60340788 462949506 78399789 138766017 10753415 378976662 927119806 266061278 120318967 513990525 639404095 447227542 657676689 825489177 769076844 71509412 324602654 833624845 356846861 641324613 210074053 946229532 114942130 594626296 101468521 614229466 325195474 693924755 71612183 896863317 413098651 553816317 792755789 711175857 804255062 86649821 665856023 550923401 193963908 542882777 541372943 177672702 220623196 294661431 889640438 932940777 502778211 114516855 3596814 961998437 696002289 384438371 919089015 610687408 955929445 348883577 579102380 19358497 133283109 77916004 17469877 16498834 758521875 497167672 882704750 74475146 359555973 266852766 150081027 774200438 378541806 232427069 954332441 146803137 168843249 502235725 796242448 960495747 890412006 523181335 820814672 125884574 734032596 32033470 127281668 225969454 598845288 410849688 306186559 898914405 548265102 637677126 1053379 207696232 804459628 636941469 97660665 380778932 556295104 620711699 662273838 197117524 744797816 183004415 462103139 620408906 382722809 481387903 641416782 401119753 621555339 41418693 378782749 59930455 672363615 466639666 107200069 609081079 540421134 341535572 617512872 574131882 316818272 68500054 16479394 479031618 755991825 935036409 82863245 650558401 619549361 792205347 618332305 569096199 62367561 602735159 717595774 499234197 348037733 680954877 294493869 985694346 109634031 437322087 752689950 103001554 62457897 724494166 316009062 704596265 975616319 410252050 229586141 589138563 982778447 48661818 541539397 943576699 859067744 544440720 560653748 356517216 385302280 99559516 355301866 514704482 83816841 347683614 41445361 994893323 316026374 506056931 386644204 357716985 598206840 363834095 341804514 87407361 420704246 859941078 542905428 453719948 402751624 599767953 971982358 818267835 219595344 176720405 888343847 478488458 810260797 402835503 866319407 169450476 852842987 837453986 132436840 624116621 728246899 599503731 145062545 8660353 5672451 961021675 314027504 742061661 379519208 120147246 306450857 34432056 200307202 108994612 319527281 62670739 684698554 146338191 771813785 330218481 563985273 385140077 511896404 925353250 492564537 707817554 935983098 874654319 147168244 76063582 859331588 918723618 264243901 444090956 475656784 52284632 617478278 771894109 695210142 33591691 61870093 564901872 271979044 124965136 869483262 936716742 781237755 827902271 636667425 6746977 820377828 351874798 382772395 624468719 591053293 366050480 869828627 873745076 327726476 867958655 579502385 672643662 19978610 792833327 588873135 824231345 420145761 402450932 901172548 922676426 909397964 986167729 916198453 490980541 352733947 297920414 950179399 154433211 815261720 218814710 110513969 797716555 243527542 936124464 247449749 274635823 622536242 525567843 459486982 262845206 61083529 186832121 7662982 238050302 738486916 512125985 100790238 859698774 798759113 612197129 623407974 940479374 663517058 785940014 614819157 221896631 391436252 533382764 227468017 56597221 736648476 180372016 292772121 493801518 338154391 115493345 147278327 578487421 916313355 438896727 55728326 716302619 775232516 355007947 373902127 378298726 567175301 724822862 679915579 909429920 273030844 768842519 328636637 442204374 979528494 485643615 532922032 567186871 673086780 741564082 22790656 256723354 6599801 295576557 693678567 23013763 306643979 500661176 276476904 942440356 986164811 857856803 801758557 986660796 422800026 755198187 686604468 75541227 578384799 464164489 899211242 8888224 48807983 869813275 593007148 633038128 807284727 543990269 164520006 364886278 821277100 803898762 249729885 12225506 55321828 743169141 799629940 919463745 429602708 858726340 881745455 952320663 494874905 242827984 227386278 587263695 877763044 97025504 864328514 170563168 179783843 169912421 121421479 535575723 256848261 516659433 498985954 856856751 802016892 673099333 560899724 981811487 55549154 151998973 767455131 107807887 416783579 162116862 620136568 405437270 607070447 115890896 332155329 25113057 269122601 527780005 578962179 247396400 724684426 987451022 957846211 388849324 173805210 390029163 423804710 901637277 307198538 919548019 129280875 590690246 774472840 778419332 57978854 509568278 316874174 112961780 22897087 478284197 220682639 618796916 794458527 88177510 173455718 465263264 996606881 301072139 146038693 740400382 688951696 703575137 154087960 608904654 406166006 506960117 230117901 779766926 872371134 302129762 296995328 512462349 25202169 110662780 918440573 29981289 963357598 458778477 347738468 5013005 692642373 477264484 459759580 748637722 416260330 353631056 972012397 95363065 938085754 610057996 861318345 20727275 755960112 274519286 657238617 176685663 353953154 131756092 568419571 389048012 889968011 771713407 382533328 880115603 701543392 752986247 238146108 181868262 991794407 260540963 93452958 189494827 913976134 228429917 624965080 468974106 741177984 677958355 411680177 328751332 552358126 923743572 789149846 459243782 465271206 530134206 383024515 767341119 370779253 572003049 349195018 570132472 953049439 200405047 569044931 322577073 804441419 759223863 546347352 233211475 899813742 666946383 901670511 935857272 258523718 877858291 912699671 901345362 6570070 596635586 803750107 941261335 915000527 675685746 687927225 309986513 759162632 265578157 55615340 322800498 112106396 663939447 650972183 782089827 368234629 14386663 738369200 991735711 843319591 276660035 183638136 487092980 565759380 56853885 511097225 904370819 914861498 298390852 894524810 250011071 705109734 209344609 362904069 273903397 554113993 232615368 269751011 777792579 483702390 584496762 647198859 177659948 195530370 2220459 35681239 981538973 211892009 802617261 404590913 972423705 189400813 195902903 342322165 114778864 430256968 45090591 907674019 843007945 247629746 640863972 808382073 64121115 596534722 262022793 3011767 405833117 154801901 333674207 612338014 778069161 411562313 900623076 982796196 737042197 888742669 339759189 489967399 185615272 588055055 934457009 518487120 505346143 321910504 60391516 478894497 669328072 320173384 68679957 248670158 950935358 198012986 830761592 335791582 92746139 786016563 722435026 744303142 633417720 738538419 336372886 874381773 214838 368330590 611096075 473835707 576398225 547134839 825803634 746330958 87661288 774174518 114451834 609754515 730228597 143042085 488459329 551227835 615046732 421197265 271086280 866087690 480361347 586361701 121058175 829738260 265274114 353479119 517581141 678835972 54706374 68377318 889270962 508086293 208997287 894713014 795280421 146722803 946176515 358249914 54467731 614342646 938582067 76554780 348867554 720998459 741960215 766112714 426238128 228398729 334589120 108647487 846408199 179609117 379995624 91203213 764307962 388039844 195168507 184865961 756271936 66005874 284218986 980737244 945987520 790820711 269978523 595367485 614944041 25560754 250014266 92265381 356901928 473417282 447378039 592642609 128260369 896212987 112397143 996358855 447393410 713515825 812887787 483449644 612166223 544685904 802896868 841956579 713660311 413083590 751885414 257946041 411355761 878039999 654656295 313858778 403316846 622646113 583820722 924806347 70225772 551198440 627299073 284294952 362126572 987153876 675964794 797622011 161664984 494187998 14770416 494628218 150836496 108420068 423053981 262261280 412397817 543396226 101797252 798519879 614043795 550504643 778613384 802876290 489089220 476814033 111947723 557959641 9187393 498996355 555244757 119554875 898753714 421911319 301515795 92232328 937756293 368807783 293165960 980084964 814928401 925477959 128573228 892856303 767865278 584427214 389433594 847722900 424978265 562156753 805272987 344745904 166574058 209201541 963739876 889853365 317640621 958614438 833928943 642935669 519740646 574554340 602861518 62555506 500428740 430623193 299565648 802833259 486254430 129082539 295616710 689168105 40922623 881837630 981685674 433589134 300435019 823417007 234802113 650747097 708351533 517992587 11755114 522543759 647055215 219483014 62380083 134844656 577130337 853363722 353133868 806776410 957414019 571825746 965482154 492558733 168597100 986406984 749153203 729811472 106968591 249649167 366927570 767106316 748306591 36422927 594392250 214022356 901232161 5368793 988214093 806404291 455827652 646069643 394113134 329343602 491512591 349161892 508917178 824952345 600139617 560961621 761530990 768440986 721351254 209806025 312146658 250643935 792221456 770503181 317368044 500076332 449890491 686634179 333344606 819316746 430411120 620320894 715331861 83831212 440326263 271385541 5169666 310054439 390716715 842476389 493858800 210637211 818293867 727567631 496719343 159637791 518825348 962484113 528242139 322054467 747135150 225126084 336736728 669259029 448213236 438899572 636705126 561243623 240113525 650983171 281302087 228410041 607602695 382555853 817982716 456327641 683449961 699824989 444826141 842220641 21511737 399502174 185554226 208912336 400031490 570592402 429124150 220792807 640211596 259259041 793523728 55844675 206381719 715313701 530325432 431362787 653873689 502128322 256451863 694068680 728087584 667387329 779814280 996044061 875376697 681953472 504739652 396431921 423816859 273856403 891000025 522741600 660993644 111737879 423236049 764452876 23519395 988325890 294598411 964551661 910729829 862262701 930827289 931699467 618530881 174069308 487656234 375596001 263493321 635130614 181099389 353856027 670855461 966074538 818504847 670797754 364453541 791885055 573303785 285892603 202010058 987751202 602704615 5962452 968006449 490195254 535836776 536632303 825733865 733678875 387978817 523812331 773824964 291851139 199861819 374912421 78522717 683609618 400587559 443015316 434535569 374852370 300840542 859225343 281712335 440274876 167880569 408574785 391975079 208652382 573056476 901244327 865441922 200580326 890889671 721664548 57883676 948623394 152954942 246772835 46327794 225444358 257731179 909514745 88796266 379394210 306886015 165568556 360086116 306762930 838948777 272054013 763329171 882719362 495892178 108678004 221213358 349231826 64480909 136832260 206222006 85686809 400197614 877859658 23831672 151472183 931383341 283604751 53818033 388573371 919475956 441889250 780907603 873741625 886000942 728852184 343869509 49755815 696794865 33775972 958421680 903233795 433863647 124799223 250110329 200286071 75456260 410445073 285527726 547166800 925447088 80359713 164293067 404872875 134714020 529554800 62790188 746402792 480932078 952929503 611135292 539367623 495671566 285085049 876970002 658173210 23934237 656768661 706950320 692729851 369524267 173025016 303066941 158224618 663258033 698157222 815706692 515907746 475928407 871350576 427330855 909950834 116547629 956941629 590056067 900083443 260710890 954192031 280168147 369854098 439452052 160682889 78355269 401609973 838402666 707426869 909023090 560795989 899423924 95346507 282867538 858990763 938919952 843914520 872887647 399242167 407855537 694889543 129185310 362535695 962785454 357334308 107187912 694504620 88763998 45378914 734824851 898700479 160598203 850909566 930836435 485977621 366437234 817685628 203844626 362146969 432370894 190986029 190010297 775321755 524693649 468881108 352064371 48064062 881260656 298861505 537641292 788369767 248568677 667933351 156168919 445289864 160044062 794937681 243801404 425552903 526604329 124356409 304149663 959593387 35968275 772672943 400252685 961826846 207476697 18971279 664432595 891319404 64295050 743728603 843256503 130685452 540944166 272383773 626051657 132970180 637634121 510148566 404383854 367080475 463690178 784966663 104478857 997525633 594657680 142164977 7310309 693897563 779094423 314123338 771157065 609891664 444903262 230262923 268188557 308378052 780920464 514897876 615288534 596013720 218679820 726534034 129615639 906005535 813028271 92110808 539773341 274654751 73409377 886491033 344784511 956374454 206508989 215772319 266796632 999475915 902361434 471086237 165908514 614303643 724786575 286223614 702659730 120356199 209339946 616653673 786094183 341935900 25920717 25471249 156229705 628185030 224207217 619871963 638222221 348406568 458452143 922183147 217159927 319468665 749292644 977116199 442237179 305222294 167959312 731779825 591578111 288954438 789056700 862969748 735972375 846448415 598721499 556920514 712604641 364093300 945033906 879677805 516352580 138432356 533310990 567461024 643098349 329152596 595924975 535651747 528838187 357885557 318194346 849145099 259676548 850389576 911551412 694518227 682767084 808188105 879569233 672109665 356322488 522947663 90467179 378856375 57891528 382984476 60490169 855784271 817800771 251987955 823859694 322567574 197130447 93258245 958886774 583880271 123368511 761308306 303445433 70712774 295500762 453634576 722530410 673113150 503047172 988160827 793285351 105247870 165525862 373242732 320589575 655908579 508646147 527065335 647834255 797334133 501737459 37897114 127768981 450536373 412290177 422351010 129127189 598725111 508973408 120971280 503323703 307739819 673505226 38058569 890284883 354562525 985104175 286371397 122803949 458251569 70575463 830746445 742822015 53201166 551292431 287387180 126877944 820119364 529836943 633530701 845247137 468785676 338282735 256551851 649451378 193807488 971531859 65005503 61504665 968312110 974524133 715105563 521227374 796191514 909274935 976678287 954238314 992430099 325722463 746151126 650694837 531811737 963240425 705346966 489443269 878942779 630115868 878562958 186239876 115345402 225704341 559431312 342287882 398767835 633041458 387630393 982578469 412023827 134929329 542225489 931299037 293467565 679660041 95185198 79239868 733472612 328982227 494918383 847514328 589969411 773253558 221093974 938208981 13396193 26571105 819273354 162426251 985918963 375992099 928684133 512986057 159236601 678670070 239067804 573458183 721479824 838820085 319803404 720153832 939528214 128554120 799864526 146179390 195475202 884108230 914552651 608405697 804441741 96672332 17315286 337503345 840016818 797692340 923629827 291061283 673962851 215692654 623078876 629442199 13163679 988637335 360176666 479123523 335451827 614650232 701380546 813291813 580898175 159402642 735354877 643565668 969936853 795250707 978996476 628230544 332481514 467190178 170076804 89982474 994435295 145493021 749663927 36216530 867790980 46327755 622711434 934401628 78044506 883603225 234827170 862730957 672087090 420693033 248947415 804395380 737416337 405422011 3348271 407443990 299237815 643693504 699613727 440750084 877365466 173445435 539616990 809594394 344956151 173429331 70646693 367299710 27456645 376243194 982057811 20350520 335009165 737742851 822022023 31217467 336311188 985717563 205912554 834846012 304546398 509854016 178837702 971866893 184150375 413864041 713013024 967467962 677507826 48429370 189540511 309201258 810411313 378437908 165662594 148540855 539109255 394784699 797099674 798688560 553506582 14263875 418924727 22407518 875480018 566473626 657769813 93931057 193686337 396719589 993614589 84427108 201005944 80011006 103319738 701842551 320161380 56435487 361242347 431932402 55187391 748751702 808631455 38208997 102048422 15094727 27040379 908612275 171280317 408605326 302072846 789755454 653103152 51451526 63555580 753612094 377970269 530836460 215371981 148239799 161152350 835679596 906281717 67594344 402176640 707603412 830801280 897424746 97728099 655364401 464856544 230792146 429974437 214865264 501001828 709638746 357759884 410489646 604773492 536121060 716654613 291753802 91722197 248841787 35637593 4667487 387844611 739675182 458065896 97305249 132223609 72193838 946185302 880382789 169472692 631108149 986428570 859867694 660139628 400019367 715270909 537805349 10137484 937526365 186963681 127429237 702081105 927747617 784325661 597045524 813072214 68117095 200237491 109156331 847032796 874086029 812483981 69795111 271202449 415733276 16110203 357614668 444630069 114828720 633469410 874899983 270870757 570705164 306083489 871100138 262240604 773822401 197387189 354340885 152784780 209661156 351308322 145056260 816844237 79234304 509248026 712706574 794286651 859228298 847544236 41964781 784119079 241778001 275448660 490702367 945034213 306526565 363422560 186904455 971749870 343393465 264989693 987922876 850920860 176529876 223585582 731604626 267190321 208804625 87466242 546423861 51430322 940309547 220162584 5156660 466885892 110583711 580199671 205340211 528559258 503999961 652444068 811099032 143278038 504906161 830225263 823297972 717247922 219559065 840628280 792675937 709400103 308928084 533878961 936040895 63963308 958331548 538290424 630904374 990752486 766132982 85686344 778368506 449846772 553145855 567256515 934452333 52628838 516298870 16497484 224207732 28882823 300183317 678940034 280653956 314271439 683010945 201585101 781206384 452348585 870767970 936545858 86965952 334459426 545257237 150315636 257739700 700046973 271311339 443579230 697431474 470277858 780143219 804587234 559490958 494788003 642836865 619720153 251643470 815963982 440404979 222846354 362653738 699356977 299380146 895708204 341682909 31670483 583002823 545515641 662089700 600637413 15719385 578195965 16604331 406743337 785362413 815107569 974036859 788143204 971176253 83122813 734639808 214689483 490604955 443987776 809927997 933624735 698792514 792291617 837880819 615970121 24500758 89302452 219929626 667113521 460471259 194293160 907012224 879482937 844766066 253496495 612781411 770993739 943029994 444678570 866777038 886157612 618827581 966640415 391586841 565822552 429924956 162872340 33622564 965669983 226845708 436714933 378703620 530721855 292991301 924700818 850273926 674047709 911241373 359444276 809522761 394222581 224399495 528108395 642032375 120478288 986849333 181466751 716259333 495300391 235069993 525341968 614279319 306946844 749415097 707919152 502873717 641178993 569486241 559933961 657311785 631820803 239698961 272998033 452345487 396960765 97088788 596524480 510038232 183444464 876521017 556160980 640896378 975007303 33372228 945773901 722422323 332393042 685643276 926381868 496409288 19834161 593746352 568567914 633394263 213247233 305600591 810981140 876870993 217622005 929828617 697760396 781407214 842108755 676477114 532375041 528354614 390149592 641218718 627136720 79619605 674973363 932372598 262643156 160048682 349352532 355836388 156714277 692281475 75257516 475588452 687462899 273580122 73249394 631438013 518462799 124219653 763005641 883494624 889074547 36179376 773350914 508570932 688114696 569923842 391462548 123901774 580639072 39728705 2292880 249440349 614242456 141355707 437480864 533067396 859850587 278080264 894580717 447586849 404749764 55402586 19481913 540207856 478742901 946600629 410635472 78327780 861292039 238890329 763984617 157967477 167122030 590635189 490409417 356570184 695581590 259601407 226891873 214778084 90609838 76735799 714560386 664596361 81937095 359083811 604144068 454595900 115651342 798901203 639597230 374602359 316041038 463025818 229068177 424575995 824010160 230062778 829228054 308138330 576719656 624075544 571495129 927359554 517137162 490703156 728507340 572776637 382699933 875168933 304064836 928415231 920805206 620815606 715155797 182296565 202722701 292941039 980955599 437578870 582226623 444899109 210687668 354393456 859596467 932375919 700275910 665189314 591412139 2219056 515989476 239879378 51515874 51112798 349686162 310443436 618668117 610967170 996398156 595315168 704371118 982265207 742349209 264457186 426364560 463732240 72331401 729039928 313072771 659901478 334883232 398236633 386811195 416440910 35314023 905590935 99409244 888286104 163671462 778846799 502035606 583166286 376715132 182417539 990491466 732391097 74276693 617014886 628332578 593726166 131332916 552559133 110891710 49565862 507970870 641977380 564304648 767001394 258048258 217310428 337622344 760576418 374254238 22325233 913019382 208041484 695729232 774893495 221811530 655445392 215023847 203129410 299678687 957651134 441946806 898366623 189565858 120667705 198904539 689647591 894675275 649733578 550633206 8934801 90498806 466350331 394694487 69368323 438442510 459020152 602967554 397049915 533530180 233410339 284139871 71781048 135499946 497165632 216956159 36440600 549604128 131124417 418238910 431090726 43222378 583040486 769483047 234528880 647017342 466493547 358152495 196397160 349608383 596711853 100406130 705895999 156787670 302472251 797931368 670119400 621711910 352338174 956497724 702343266 591521199 397495536 511935621 199734421 568227022 410259279 369354289 230418040 134625574 716010558 292527292 162917281 789717871 523571517 56786810 738322947 640713815 628153933 766035722 80394757 627806357 824546964 461250382 665417074 919442095 956285332 298186535 255905616 481008366 24823424 299585312 609717487 11274347 65145079 676439000 482516905 403883112 175285730 95427168 920742196 752612518 536676770 617333139 183363625 646730663 281516512 142423199 186733172 381060252 899428569 104727178 626605993 879061953 136817327 438927221 599827401 983149704 627124608 230489617 470159232 63390615 50394606 131251867 874282837 742227442 709061013 717385391 963779473 875926831 859859095 955522746 564476854 908200232 919292230 774035579 65664980 40957872 972871585 895384032 92865543 560505333 468898928 856121327 941263495 717202305 760360143 752864564 882121760 936777991 293901192 809622414 325955150 289472301 904009149 359830093 315502522 457810405 741520250 377795056 602052418 187797549 940830440 503687503 587336421 555275729 478531748 899967607 347715616 44253970 118596285 770405711 746682903 88521378 273975354 84054133 821130043 510901735 538503669 265394194 143504145 766346971 305652829 772684427 330925663 444570454 477083824 177765086 253912640 896468958 790323497 860861336 64360228 309907396 264093748 4450865 808125608 301937474 799486919 690412012 30183159 279045317 790089706 703411454 839055400 717494650 315521774 324625136 574911120 799389181 903573731 944496151 58002380 324748165 27798705 667525947 745621859 594646293 127995986 902651121 242050634 75523382 871131825 790982326 874194323 825332827 467787983 554417226 202378959 811292687 138387400 612605092 933257679 524944462 392654947 67532560 249591384 610549100 208270444 198964998 632658261 221490650 531189623 162358910 626943263 518340809 719588898 103326732 695167750 905011565 649745687 545024321 6770971 503925550 231238843 804069533 599731695 507447014 696505584 358413766 137619557 186386271 713273994 963408804 512494917 954477235 568459991 756860662 42015331 266914807 145402024 817006588 343884810 22031588 26659921 272367138 276496427 746365978 381785109 834117195 660499890 907212485 932916497 547055417 782821807 765222843 541910568 779585497 259666828 192658698 14569707 735922897 309251461 327234437 704786849 236538237 795821916 600938697 300426214 299833427 329890250 448200696 499800687 676798798 943529452 228424788 433212133 625582346 990630537 443204549 630987076 653376943 945995234 936930079 623368213 211095280 966679444 577330392 631678965 489214437 7579384 761362876 305987538 710653129 273510627 113451840 425219093 209163895 687164200 313815364 314985073 918929124 738652023 531195610 471819727 9856528 121773947 721311250 402663059 331124943 985912601 957186290 134230940 980092613 84502422 116722417 320112807 223033876 672890550 140405633 200268593 458636516 332484985 192896833 711847594 950656380 653505705 843867503 40283535 828268742 469050080 196544447 549952082 512964551 2277651 213337845 940455250 315796774 505351605 261765685 808712526 446059291 216286287 944659359 322019985 152003064 617820321 334240833 551806310 372068608 732263763 329565674 863277008 43587545 875935594 418299511 927678445 190623052 170448456 381343867 45055823 871964020 208521743 995024111 230605811 369657035 641713111 337954228 765486655 52535107 694500180 959286770 761268202 179312787 658733644 566391597 706346431 275145296 146118878 852317159 776934530 933756309 99512903 974826700 280005016 470261597 854456064 409873325 354868681 758090990 748971615 684949191 335256015 888681647 298801579 448134953 472878946 634321639 949548953 505167063 509904272 17236874 86733083 579501002 694866557 758764703 56485147 84981896 729738057 389990984 122129442 271239205 281219975 864329463 250474911 875543106 122221541 802502113 541777343 101842950 971423892 334984605 175046087 153867491 335911386 425586774 547375818 167713052 737263655 237659450 413896562 285901725 816742830 680916085 733028694 242732041 76132208 374730093 770705180 535398429 171813788 660936156 371909806 352285508 229409259 895450404 361976975 53127470 924045921 674159198 890446707 760130447 495089603 26838705 116069778 150865999 259295891 32066775 278156166 697516086 912591683 428250392 846602156 762728201 672167516 515807867 358899295 406686699 196060432 826523129 683120359 524760292 571825111 118355470 291124429 508586749 80156281 770339695 574825828 515615256 720551326 593612891 773740020 573207990 403462321 66796804 679550728 529739358 85750394 756831202 896464366 684752590 619273894 427424119 456722536 614011775 456795631 336074556 284075568 207627247 161337835 974984217 518500103 619128017 575546974 967388880 965329760 888966870 909705408 571483010 228252179 42744124 113262593 215848197 53016796 74137661 553207737 173449933 788353333 998702542 397238249 502819132 7602786 882209070 944047131 45022954 279193848 468168695 818401256 320374997 500487196 976423607 201602896 558945161 343513583 230991971 960478656 193205903 798877038 250732027 179187213 514282789 114958470 47602069 131825723 249489376 571901333 375759451 650679698 806400903 736066094 543743253 904003052 331908297 847257421 596588732 88778291 630848733 758711203 268393465 948660339 835797447 958260847 549006304 198849959 429407054 996917142 132697583 121940904 611123299 950721385 875511257 875164408 833224169 644314921 31258059 713628632 606575120 408766161 480515797 262665175 135355954 124941385 356399909 734848274 605172294 598774801 394489829 95660128 543940107 682385260 965310630 208067997 673174000 448101962 701119966 961565723 977552227 686018296 906319185 45411991 3338826 996565710 922022196 425309183 131122313 739937358 625644088 355689326 761852671 332175518 228083810 775139867 647112091 976596449 507085520 998623728 29049933 342725312 821109644 769629507 900986797 17888576 492031145 86951334 101542499 584764949 866290731 369222030 158264461 456504215 425460413 236572249 32037591 917051996 734475056 626551616 753919552 688652739 418573795 570182982 868023736 367379846 27772316 3627068 774779531 908603770 892902468 520663353 977472179 763001790 749467652 156165524 551993297 500912280 813894554 250208308 773827787 749425602 877967463 781594587 987863934 9016312 223361303 121521152 245887442 503783341 612576956 731732571 505009459 45869315 650517096 994327470 932322100 371039190 90552538 394726158 681321723 728781865 477740724 873006112 289475223 57523901 850431107 769084588 457593319 537047515 204485904 354269639 153160318 957513277 766368716 417769122 442310602 68683107 759075723 130526497 726208351 434285193 422678615 438604442 414790424 883142309 709656084 208623050 384199308 182577247 441504628 49197960 6658362 396961738 327719278 401085564 860551893 329486350 633215321 937498210 201689137 71513460 950985563 694551956 480415564 448971312 833826234 170970986 381973031 503850974 900780962 660532302 475194608 1101518 767685132 730068963 401236159 43125967 341328760 33004790 261870162 192154879 69968699 858122566 793683128 500652097 602341781 127083493 74414692 282801564 948273958 33135534 691958184 254493614 803477583 237909627 290382578 624477315 427722045 436388348 734563778 88301343 743103588 877086470 112737873 799141886 815507972 426009371 532529702 767702138 118865439 139441968 233769397 701375593 630969947 284834573 221105813 609506338 790076768 884687669 784274836 301574132 682451959 807179683 346811288 967256996 189216769 894148748 462899321 285981725 510603132 602016339 226607303 259621796 228080642 426507857 405579093 14246253 557766399 114528149 954144375 726439316 850085144 356234492 413944422 420773605 220646955 392864206 315876367 222937518 912854140 400907636 907996969 978871408 432737784 297756307 324626793 114890126 756867183 771905059 528775858 22550416 993886278 63975106 688795584 619555334 148449969 182491073 266623129 251346269 195441414 607097914 57740409 231034683 990010786 554272017 477897029 230369136 37696836 668997154 810754401 76216643 883414179 261401186 966166269 374988908 426349552 666746675 164520320 424589788 804668104 775493876 27063328 890828673 291800678 381315463 4886880 481311796 268139948 589775263 932813656 535663935 58942138 259984885 701115464 473149115 43900898 677130969 391355748 738144054 368105031 987863585 701464183 125384784 273657647 844833048 569143187 942652263 994273285 130705620 263802635 226508202 382104302 268249247 925722166 334262022 350783689 761502391 186792259 765659344 376374386 997981495 159441437 29900312 353263357 358034015 905103799 390957501 52326065 505511716 11390630 269215174 814324650 228548124 578203311 458525754 650027445 636911375 375208696 804876585 730328959 633472896 627153915 906272771 912632098 323416423 86045660 138325628 471643003 436001385 921167851 174829206 691778562 682718008 775775471 456329246 941353805 858419774 397693341 906238380 873356904 483120264 66080906 803902515 48525199 370156352 180882023 847643346 140818982 821919477 623991603 932270578 417751873 68148021 850023440 263858660 94764494 195648874 761465061 218587074 310312900 15546012 3607100 232541705 510217305 151025389 486690295 209945603 622216052 168398354 489416724 739407011 345769183 241936148 172129921 613806309 472698799 452716003 912264431 270217409 111124433 875019967 818752914 874686850 595377428 511332 37266522 339022552 525246232 762659946 260315774 670125151 178497275 77916380 200408457 442043886 517929040 299447361 352566939 800831261 853123994 664557016 71075655 845178284 657172939 664785583 418272140 996356328 948897487 933801945 709547568 576313715 167166538 925784412 422002834 731700288 342006192 155452265 805922491 890728137 150949371 340913500 508769563 586126664 615529444 830663626 834403534 27066238 589416957 540238022 352926102 533745739 193872835 544300942 417144550 956882115 29295892 530243828 107074265 783877513 412405779 791876607 660684981 127877458 741855784 83993371 522163394 444014095 693313133 950562899 286075067 840790190 314148910 494185246 753148607 385983972 936941520 883322018 107789357 168019718 316578099 17058913 170594219 790115581 100002480 992608855 326000942 101047704 634776445 47689710 555538507 353193475 409223404 985385899 943301626 235367489 335895216 483155392 938593536 800897228 477501449 500598644 161875949 730388466 344107532 707546289 826014482 743115291 965450079 539426047 712256033 617018484 313584726 255440553 304699613 698854271 62797331 537553243 558715696 535974779 169627724 736562128 77546904 579191537 878573900 228457525 475464150 670336332 23458604 745915593 236762553 310955944 563704641 479633573 264304986 309746381 121996511 468666061 859746288 909960612 781777969 183199736 144433778 732811995 734369532 926496652 70439801 546431447 89802559 544387948 529188414 398394199 232318241 405640735 672107374 420947521 110007476 708474420 897645863 723965577 589471177 230854212 418486394 371671991 826401562 336337178 659641605 594119326 394190198 295002444 511174762 203617892 163768663 261187198 829100007 109621085 261960995 703848830 685291365 690535163 708683342 594412340 517126595 826361254 544779529 416959456 110141130 844307827 591551256 212759230 972687683 383359667 870352659 720218464 858354521 802444725 343322974 722899737 293750108 271647531 35486144 3774913 916841122 137065891 154091366 957801216 44379652 744310117 922273425 102110208 637108187 12728143 486175432 562839439 164515370 429110204 924838138 593477186 521831829 313676111 757929039 691753669 125748215 867542716 92716767 386340341 79700334 866179253 892442004 908157627 881961300 246470443 6559567 772625971 948094341 927536678 361375838 784875483 952797154 838282662 194433731 902981254 536011290 309908704 310243534 150317108 230372666 939427992 809433218 156467212 631393922 768848173 150905603 732152051 502708845 755222713 615859007 164046499 592766171 454694890 90291657 901864886 75488183 125851499 80719124 791460086 659604512 483744965 858737562 285454886 302081455 845132802 426526938 14001634 587630707 358289335 807851324 110369962 751903078 542535280 323162099 307807387 136844012 482535584 495837659 900654396 115280477 760290067 616390393 416060840 683711907 963147386 730295478 826631871 944640287 168093519 559812619 333074569 794534901 76551305 81288322 891088384 924015363 120934083 977553653 543243799 738720964 633846059 769584942 995166467 382988390 38580213 669384487 328526844 773241696 141390616 887384089 952774056 446254047 512789326 333899611 994158787 133765906 227877642 327388624 262329867 664288963 9841579 359392235 679557360 50564084 935686048 269075676 764709585 780018674 206718007 682746247 367996273 936318618 534925238 274673867 40076460 629079612 527951591 884613599 465115167 656666642 186158897 429794236 346120833 528024569 337840020 996419754 892945270 950804594 664759534 391225760 635641797 193794941 375295089 612634609 210036193 98916730 876276000 216623212 116505738 147450159 82812015 988955511 12967515 758920572 216336745 223838688 136687358 296551182 618344864 565389483 96704109 501417549 865753266 361458025 392086244 117039470 793804368 576603557 218047381 442209835 699482798 906056976 416241762 471635534 991917157 655858533 307652211 919589168 563502042 502209535 808624417 628305718 813508490 902353374 648761505 712527433 756946386 423529937 292138519 429371201 299255706 334184717 936046627 496469003 649500530 280919767 996115170 179376535 858032671 351430220 93960052 656187925 194776090 581666292 152676386 800584019 556690705 193613489 136107615 511558116 31579353 377665524 409607145 548125335 635520093 493221894 799001313 166199597 856467569 523652866 182296714 458248820 731381159 400161665 883078541 178973142 124070371 387282295 527174245 107664427 937063000 777396969 938597559 535380137 376834087 115391076 357591997 691792709 601734482 652310399 316070659 286117566 557421760 766411305 119536409 221609919 816639842 683759312 548534966 265514068 150642636 761011899 336231038 372654117 277292344 616287610 967788544 986494695 235238849 53942337 272799722 439030782 760053890 916907295 675820538 20970006 431051889 816172708 193487843 217037015 290669742 675175941 178011624 745457807 682763426 943646200 284585219 270099177 38478274 520815393 436690172 109893140 992307218 128435596 86147623 226312462 581926098 715552329 899521540 1507741 606722848 51560781 438847105 66316557 539364089 465457488 766884883 366657926 197487102 891631791 625833811 720969210 911524564 499451462 819132738 453952256 124408946 904401290 859920080 216919949 88507231 635442945 298332 271268222 392517317 224067040 200932777 330358909 420068454 693507182 759817364 439516218 879743850 438558931 702930680 834516145 764991280 453535218 112279610 122591099 775938619 83538700 868278783 304102815 466753927 621471827 722040174 171037807 331880058 809756233 843330872 384652848 5039238 829804102 167223407 640994726 174515321 645586461 512469215 971215830 294761260 396018269 15244921 838161815 620953087 464833263 626772273 993853558 77845176 247399478 878424918 121825953 323212850 26408490 731700748 942495017 869610594 741178342 262427305 956661267 46647783 972672482 518089713 918707399 175256991 447713029 811172296 875074371 417376007 296774635 39702112 735312141 560016400 320989074 373626401 912454910 782576602 738028531 168709575 822223092 607936871 406301096 968747533 223153057 619075787 15706506 767846564 424252987 37128133 745133954 930461195 565947630 317144268 196177292 477062771 720261211 630540974 757205807 101536733 725091034 691693247 133913140 295294528 739421706 532356080 836485090 40420128 196145002 862872244 866609343 684094901 310001776 669568466 599238979 50043409 129036359 786489227 952831918 934475052 962513066 333954004 612593073 546591827 134033976 538525178 965062345 815368100 997304169 242194831 659473499 235947821 113979003 960574042 184494325 77468978 534819882 774909669 727554249 715068142 586488046 900882494 820575458 961419265 190803622 132641405 515714597 401880601 934991252 968971794 192157034 863730745 250363525 322119469 274814022 869731025 753822340 400300494 239767390 234386798 844525067 964080926 575871568 439882984 811616019 55175516 591356787 876991782 774135917 165039250 228770419 758981567 230370937 587626791 691369235 688307358 62795538 663098381 427504671 461559066 558352290 783415735 466539860 874358952 486839458 332503860 323519683 682869088 644638849 396183397 540781327 348159026 55266173 600723064 992319944 631030708 958931222 914403172 421218838 576595133 139845813 935301746 967009102 225410660 59329600 223471888 922760664 440272140 891119032 434174850 454480241 749048916 285140634 889614423 474112332 772006420 574181832 896826741 64306464 838263427 612072622 511552894 646334377 707342101 476190830 643424919 718441555 167462375 546360055 700616265 325347619 56758242 270006747 396780675 517958922 654431709 669298251 516237089 620639610 439619015 876279734 915004769 474912603 34759741 227984388 661927028 32705686 896369361 861735258 829185115 912170962 968677946 828842393 311874546 617182165 426564138 805993324 440690868 905643907 895312091 424423806 28055938 941985767 913511172 412923492 282951700 672749053 64326510 668715828 641405370 50859919 949567602 120017078 930032186 266044626 404696682 266937144 894326730 738055756 138147013 504829714 722309218 280083133 127430015 887001680 330651139 657222656 948406804 259426019 449179429 362147817 988094299 848825771 188652786 237587781 396003303 767244063 677149542 890895295 228794475 421066992 987211746 774738748 394664668 598228630 72659538 250093527 109809180 509028914 81716941 415492232 703154610 74978409 676792687 298796764 408425502 389239228 716718292 413562220 530691942 179125418 422464360 327653899 339435055 34809205 794732571 625007163 910160383 220337337 296105813 273166260 948371816 848513664 735674641 320523706 44554487 913001563 145819777 544447380 681177362 812116567 249372747 671814099 662695357 286135502 617280565 671183962 364788746 290524771 859813141 51575811 618753745 769422476 524792620 109361582 176952308 310904107 270801443 125660016 524266200 690219385 110343145 199132705 871829714 82745034 836051455 973908313 334539161 93800620 822928566 111308036 335383968 28775605 807518935 893763215 664285036 487608508 144741465 915943211 299222514 311156960 332062236 806307082 126168283 958162470 900646916 974106723 5055694 433352466 650046132 776693294 490101314 210641096 673889125 666353501 589460259 237040768 867952967 595003973 375764072 297556294 44451259 691737537 699204614 604210350 49652279 533217753 970890133 121615218 356195382 191142704 662097625 707933983 475952545 870340181 143928221 551892274 413136457 373192671 479944608 76016850 785885166 182295062 258080159 9886227 304052903 248652914 639755935 41425259 81888296 782972159 71852150 56104208 159360073 41443022 970569729 704642694 335098860 140312675 168870964 285198530 959330472 247382232 268439586 974258047 303146747 185867934 494235792 340900536 486803557 289020538 548530074 791714721 567349405 333439165 977930718 114039786 926198117 707544528 712245485 110122085 830264028 849724426 190552509 852623699 274212248 371148074 225110072 509858817 487705144 537977791 743339721 693019298 119243624 528409929 272832735 561630490 358264318 29158188 21967155 908407402 878198449 827900388 909769737 657780169 490820775 507484891 236348971 256587814 173019671 995953860 601006086 189238290 400527177 585792060 134074089 346136910 45077949 865148323 881253342 700986601 153896650 32229251 503275439 153097370 443660553 903743947 706571663 121657336 584334306 369977207 105748296 348090287 136318632 382951421 245854755 507413397 346934134 245940030 148938694 703694200 305210607 698200262 988753970 867438468 374197409 187378564 169332873 997043293 269708282 247497600 359819473 412289359 376073091 351922321 863595351 596393808 455595260 372871716 882551915 995916410 232946348 17068221 830092321 339226824 630229354 722947368 369558139 293310352 445589922 68160054 295395235 856029192 626099601 826019498 387289521 404282014 148877964 923214058 297468511 625276541 654522582 709448146 527241576 901347066 260406046 581600881 566235509 729645393 298894121 707208332 486826902 783773863 532472215 660411847 670935909 500838670 569802426 484408460 211296351 609697538 772539596 610206954 610661748 305879765 778342356 800341118 398478135 492089059 217280477 202888018 779076420 621309436 195293861 907446443 656056202 352574006 846105181 727854375 919939000 577835285 893027335 401758929 970498247 544609152 126434876 525182813 689420198 984457545 153121441 288723365 605079175 945865028 999626130 142383571 498694531 435403579 116265733 819080415 193846668 839167202 263342151 967937410 285214785 713278711 809630304 420169073 736684894 784312438 678661985 447634352 93942179 204325310 811822871 913570765 911954798 818278738 367970541 785874037 680366285 286504624 126435479 50827830 728673827 42700754 784917168 872259449 344885133 51774199 167277236 470436887 473828515 519582242 223746154 285870352 866836394 91561056 209082314 86099017 22517229 394404713 84014480 183090254 847233629 288683420 521977339 392295074 451240598 952993863 742599805 6023791 81788053 898790374 21535346 831884917 10367420 590149915 546298317 321326758 688377440 920992847 161871377 789221664 540659408 685973586 825316226 329375214 481560052 9925787 223331693 495860862 421922159 912574914 240482140 201860439 241232101 117058328 593503234 814668709 594565542 147965938 428453273 691614619 975300595 588179113 246553793 844355695 352743058 114278957 179010547 755776079 495905549 28658330 181164970 392720608 679823611 936216252 330549492 698811760 717477518 363859980 745262187 901485942 4590180 679411680 76333333 547793944 877638331 170986028 858242101 803616783 281892303 375213132 654224804 445392175 744540125 423636887 55363210 800345598 461031282 952219862 934702770 584315920 444721469 288992985 915070840 118824475 944817479 150768566 41595437 460340196 815032437 807145549 499045319 400993893 779881358 490641663 787378000 732710933 895911422 762505020 128903033 862811671 704486590 646009266 386938986 785331706 921898379 919730755 125232459 177690474 213144847 337465355 254622746 908094308 830970672 493702627 699623123 69362955 683940426 702802512 656933174 289327084 45907303 797735004 997595068 295335252 649112460 888050214 33446016 22160350 31555293 860791299 479381286 497909460 171129014 363567052 360372033 164639791 386193176 629242552 515629 331455484 96694676 710393986 434772487 201380518 881702520 790488163 150527859 112264848 934301767 681226398 490098976 766680054 699090753 952844694 252035792 738388374 96932649 427003720 953232251 259255002 459052437 400245523 173640687 507130459 466055576 442320853 445727861 808806608 649196970 532910143 460632047 531397749 218000928 352315971 83437397 917380622 195325623 759829287 73333547 772026340 156360294 125325662 153038794 476042061 259895342 38881660 588207201 23070642 355585410 132117534 718350834 647776251 148718014 114041814 972093764 55531566 635308989 533478926 108639679 210555380 615499844 710625046 662493829 559722948 231578698 734987635 397710910 855525138 389501882 154943416 299179221 232497351 25473777 210176397 618236760 21500917 907429358 851072114 778998804 348677367 720520459 69414571 446659148 751668504 999332037 391289035 212550107 424263279 801006699 114828224 237594678 547264718 895774749 976926739 579251545 903885180 651345190 869802526 557913358 82596252 642746204 571881874 290553559 796859925 919422925 56453708 556651772 323727256 125343764 335554867 811560623 725770241 199581564 837431788 169198630 850530764 1128591 268989707 779864966 608143518 794782936 812379338 602539774 223899606 622571522 898379779 940416261 157123244 388525382 820824283 167026328 860751881 538804022 31198401 758804083 803080275 640827836 153530769 105826073 324575106 996351117 896018093 387435652 25875736 950382491 475524658 135083389 444960149 191497337 144680585 252990928 107139238 908228555 139285009 323792535 663395333 829276734 542866383 92815147 347022998 19918104 223880053 992609508 164572810 517222099 526491441 450659201 937509700 250549879 238281641 875579770 745975422 974783477 593513441 950990421 60646677 658693809 322136524 443955070 387295165 917674201 989518578 957109084 42865597 566962360 680966299 906608135 504432321 539483864 452599342 237288137 243617636 803044229 840851861 413089028 43692925 279371267 424496135 919995560 809138774 457581865 540147315 980609082 24714692 800696156 396114845 814689900 925993265 349525952 56275818 624293182 191169583 226412114 312519465 497393484 20772253 424190370 927600732 719393142 321119879 917697050 985218864 389189768 728998926 644826663 82446597 974586353 222620449 91927923 40588142 581530307 765347906 273922437 685894016 641253635 827047748 190243907 69624774 785423849 980290916 779400154 792397646 746965350 899223421 409737204 672182333 855790497 252874731 391822066 539823907 895569207 348868663 407309032 73502843 188313758 177503198 707896054 160007007 980728286 676578759 65848332 867360674 749820932 963183694 248725226 980130448 748886460 66119777 652226979 921643950 264013492 938295132 979317090 504500481 26358897 760970868 547058154 41970592 23295777 375688463 397480235 860512075 8075391 205823324 166202811 439603282 712150922 839461368 198207980 877622563 214928764 931025800 672500077 118425655 314351292 986294402 728839778 481421216 815285123 402723562 524786392 50222656 83749821 448281327 313323149 561813425 161772466 553435018 394461571 65544050 480403826 228686315 608961305 885895839 431817904 948997740 939505560 162271998 610311523 54848364 26299076 423418230 346664915 599553162 44865 897271216 81258583 689777526 808019516 965466815 273852854 309941237 341882280 384851890 657226808 367116574 863495313 886330497 115611045 805224454 327174387 142682407 546163507 83172155 151111788 468980818 492580826 882246894 709859985 621465722 939762771 861102480 771371217 708060988 293726568 370435169 698090975 512667981 438142520 632401799 315870315 491157431 283861425 879653666 735482198 419745172 131588667 80520805 530841918 142224359 746945952 331117118 891068806 152823752 979780673 224939038 132730151 457695377 330890549 386784358 94871302 864299836 462855519 151786180 284244358 716349092 267918142 570689319 7278552 449848677 594424860 850933068 120180293 901810517 929991050 293451422 783647086 653822688 333680188 586746440 980251089 114768994 32919117 512649850 409429952 784195192 439951308 3325356 497507906 542425800 878191775 870680992 914821096 109398331 890675740 570148584 855054920 163460525 855569309 922330495 414587745 338347183 635592230 486905190 538765966 982728634 994187388 291996599 739105726 999364648 50526719 653215987 825571294 894295410 152274296 220308999 89685081 96064440 260948395 643128951 616014306 107606044 585200023 789162549 184461441 932020161 481389655 672432268 186338091 721540096 223772848 981729164 59055276 163653103 551372596 348491273 912645369 981453377 433626927 651472859 992542455 302378307 281848918 66962551 814861826 160091685 157864238 98422395 97922932 185173837 109349475 50226526 971059224 488318168 984126582 90649537 721433954 891544759 721262347 451462755 741754123 385868640 514754798 450165013 646922087 125888156 594890113 119888516 592325804 980158487 499027531 925234364 406041022 261079184 264837256 389091652 379573439 705226448 54153555 317342665 871110851 362306115 48530902 493591885 635753919 411759626 489834229 251927618 464422765 46294168 570774477 106753686 793531403 815944008 326076310 791777634 673430080 865546671 711011912 421236586 105812376 807989274 353981759 869659505 983671670 915312880 97448304 802901729 139964779 103247966 645875278 677070565 121989896 214147313 416519963 402902927 555534022 940886427 830350671 183392348 845719332 194528809 320473156 370466327 772600275 435193193 90118412 177321079 137088241 551027398 581960009 937711103 618344007 350478413 60411364 428428626 645586724 350715649 318868841 491269484 348899329 749600908 606630484 932199169 196613544 346725825 742546539 36542326 31573510 101159142 712293667 939583258 336132390 816632210 446808058 30176509 119931103 764719124 988579467 514067951 685398554 846943959 920604324 911071830 264810568 584295668 879702667 667712272 168073432 9084243 8938139 985485928 281773173 830926787 540438516 896233033 509772726 611263643 378527129 160379890 410725436 397593699 823788301 652496033 755487804 280294886 229368906 768263523 520539699 284828202 678242480 712436685 369473313 861160829 625694208 970252563 85014176 457070054 260171265 128501797 719496110 388066218 3697574 141800757 878779453 86960787 313196592 835032945 292056150 75224651 965013236 866662373 738535578 807392893 710270129 118851464 367824179 489696470 371222517 879287789 59344597 551818568 431838178 272128570 760044906 921789450 683323465 959046614 619406911 951311679 968051061 757024164 725091296 36315229 50365331 536957131 106972038 765499817 502615557 904394102 165535774 52581156 239005252 687752276 281193163 931806473 294859170 58739606 328552435 546021088 998588180 203073689 380969498 48895069 771229293 121516436 739578126 634639580 816440180 304398507 521345173 284892623 782228974 980480046 711040353 577474867 137999401 689093694 52975539 214436681 100738691 528964197 933229556 748496682 187629321 439245144 702246155 867177259 629806226 446111890 16942294 586978877 192322909 398560064 63232850 669870860 797374398 422679577 759554692 752554427 274307740 650151595 243562636 21338008 578970110 997319420 381097183 749167308 153546714 764115541 966697485 680999658 922250718 356945086 775027153 162469414 614875162 376068644 306666677 484777054 738235953 228693592 609782465 294858065 292693480 931938283 68634587 847058516 345496528 53502738 136552073 460603721 491269598 429616243 33490596 106380670 26331757 60582831 778834547 548761477 875825001 627357174 68261088 256140176 88803540 243217954 860806510 225274954 999538028 442957887 175908335 483442955 950207449 611801968 370837799 434979103 612367917 395031552 406188711 227036029 709302734 359769087 802088985 831402387 450712916 164789351 509052707 241461394 37098559 437153293 321404267 926265373 851082730 259667862 788336994 67109975 419305953 841619713 822170047 603751408 794902149 984806242 348424035 604382925 407397933 67673725 239800958 856844936 214074797 783193227 338526274 25384013 904808423 723620745 171044064 867043457 64456340 446792701 658552768 408084478 813230925 661944831 705964612 137275419 325696849 143136923 531658838 588779641 467776186 178341227 91874242 297852098 435282522 477699608 432688738 433869751 18590323 217336025 177633098 92931763 557126482 123486926 379337062 618350625 925424522 251013479 425669990 106126618 385170885 550557499 509461727 700902660 232856134 193701873 507697165 103569841 524858088 420338161 527825290 635890064 610893879 106316995 598194566 534883428 466220728 673721875 490247313 186980337 223045083 481262256 358103133 407018440 302279913 586925823 107580002 472821405 421968142 701085734 959833902 150592478 119881302 95492477 311684870 197353222 493319844 174807647 437576269 135618273 659612477 531311166 867440967 768914953 310681737 153499360 459580159 223137121 493724809 526019901 667702816 113697941 281921294 117523882 788452399 950133161 985235086 873152137 707064376 983278362 270252923 408109324 171993904 141765462 276960987 91656624 74858974 26124956 228269987 609197053 39842801 934130657 653249605 40397955 943835305 471694238 792033668 422460166 604568294 392511766 806220617 765584092 683754688 492456293 638970525 122982274 862413510 878647395 375263207 242148690 517417267 306603832 511089456 255300457 529870414 70960253 825063156 577192014 96017703 757961211 836019995 73800637 490781477 872601225 595452808 587854697 866800684 872560830 728012041 184526428 423551865 259143830 881632342 448514036 275699737 266229697 348326937 10587117 882509211 608087222 125862397 629758885 771272297 455344806 359333891 40717224 320020146 122459266 444536556 207486251 254431830 392006188 610011711 601234065 430162643 684084371 158674114 277448599 117984350 429941834 586908448 907627470 624891738 323960512 272529285 384821207 953076604 917147361 127122013 737118359 429383780 33915184 333741144 995679525 530700476 434476791 784480843 502987203 830234354 395982135 485089042 120893594 928006102 80862235 271984668 666285175 970887298 17394077 79598832 421967212 99955347 402426101 895898246 890917711 81824611 112020464 479103912 136309078 91451702 185642229 808125870 227579900 22819502 979712661 609466619 186771096 959242685 872153295 297788929 635862075 377229313 822036158 943312455 468484284 967641131 85948657 799539698 651467647 11331850 964904645 956388310 523207298 300566513 510391675 47992439 738062444 48567300 420625884 643129729 771901604 142089206 89025307 596954850 554483731 172737875 463123256 189788169 440714625 427315914 430621918 622876071 575409440 301394015 664774894 537371552 764119768 483231608 994743312 125243358 624845377 292722995 483915960 472632876 888684369 779501 233542080 427322207 431012624 384164529 297922445 395919607 108198600 576284856 604207618 574069639 51334196 72184572 903627961 764207100 856195435 598036907 119614976 401297464 875136636 429189291 417784063 387774420 709970201 759354750 635044106 711561779 994849137 175021683 363483194 701892142 195629519 760322851 512506941 787114193 935662853 930442356 757856066 644473549 276548759 181849713 737126741 3799482 134054337 282734906 55025604 806063144 277870510 818663386 691155470 312093591 857993292 471259792 933628081 235957709 464852214 819987762 875446600 596274342 161070556 344240514 71271596 896740788 257792553 301733039 358432817 290979209 95822509 443076251 858771111 835552602 839693242 277976786 301206198 162243134 68504794 114800227 506607724 851068114 562828116 969805274 250269347 707277177 507605027 236293281 504923273 269731454 408068253 228930740 844749234 568234612 676711423 517568336 126780118 24744267 20424772 395790355 78489299 194906509 306024915 101914640 865160026 756947719 523261988 837710250 122348617 38832364 794919559 942241531 937641644 42698371 217735806 203363003 830613056 916710148 725012286 740039141 808850751 946070659 925765282 28410795 57062045 476862263 519701333 419447625 138258873 16803168 141987838 565335639 320493738 287275932 387456133 453846115 629653867 748900411 62798854 447027415 106302650 872205043 316012356 35108048 547397733 496373220 305380167 240172238 257247884 846535484 340874301 938481196 712138116 489910044 682821056 885671486 760494819 269100551 869861054 842584615 943703925 327110031 372077524 252366046 363369292 562612539 832777209 719096187 304865262 752125927 122909023 818935386 126529543 294706363 558404883 302992785 456474606 733586511 543626470 802715805 390934363 699682278 505423034 645384404 911912508 234966394 724195861 536642310 328643064 29545895 95797511 568394348 585736527 874294935 950362461 147270774 581131706 191748854 540550526 950950912 872761728 841935046 417562989 93567982 394770237 192049807 735003533 107823989 699280541 644106487 41117445 220758656 805065409 592511596 984875205 669378901 427995635 948547875 743346460 109199687 296377157 698420440 60313997 552200500 790847840 477857904 933850826 876539515 90303910 3277822 810764761 385873924 585105280 244800839 708001585 777345248 475270356 957073571 361332943 366774569 609333191 670530319 875571393 611194184 67263344 692473728 943056729 151655327 592396626 222948641 918856650 729996923 478655626 429360568 880082189 775159221 444515579 326276634 503163972 225221841 892445442 235830829 237501291 333402213 300567898 93173761 368244171 119308 972190418 808964815 906870057 571606748 88614026 519191392 850746461 174106033 779982811 495622389 233112412 984995452 260899433 296288080 934656486 627912391 543799263 232705424 7679494 297342898 702160051 290085549 823580868 751075820 354970639 21192141 959611073 621121328 33979548 957168028 401284828 542523492 280804914 179659872 782688069 820505496 4222480 954672290 757842663 74746265 972737454 838991397 181106431 380346981 59019149 271091048 138545491 559481680 134227817 522018994 695086574 465912296 967514152 534630570 4573740 979630233 226850640 763876094 936870763 122352776 511423864 882528155 14536997 550800721 128338102 301976095 30209302 900016576 496117171 673356957 475370776 516777803 180934544 589526448 982367347 420462558 247560785 775404000 74266015 988303318 172606429 128942828 332909086 138102330 282736098 692793055 329130431 538679122 215819730 397882334 141572258 858758522 36056631 56431930 956979491 732094900 70909255 962597914 460090053 723108739 713785839 756313840 500209158 266630899 381143165 210018038 455186375 743428689 5401329 939285271 449309895 491746630 336549184 572175717 870455392 562824659 11245586 531903046 285560809 216475908 264149521 858505728 640373931 565585370 356584651 66297237 354681387 451898125 457553886 281604600 61562436 729653952 935020554 562557153 418307720 892861543 976722762 87980654 794273250 832514860 792853683 706757884 449163993 305966000 474585526 173603388 318593954 184390812 178580275 998334723 367524466 100836732 742864210 66183281 410975594 121885382 819943297 214513755 867657354 470495913 151801494 47447737 665495434 764941410 448082605 364680203 656010766 317864467 659479963 783596575 336496620 71651715 966124283 701722768 389838400 19831002 810093404 396912857 493646054 420882263 269707094 203331635 183284574 348891947 733581485 943977077 89486590 879605798 831859541 40752940 620074406 155247292 414013965 992437423 184580020 491018903 987007270 659865753 498565285 889809658 664670681 701209914 835080315 559451869 640418303 369502385 700642026 297251456 85331270 378512457 135070464 531923623 891460836 889462828 431122726 47417059 773518517 195903124 493864543 411321867 7616580 758841450 996503121 473961166 9444585 203032922 828049381 602903382 844799122 101552508 185268512 18263332 899210341 688811079 703294498 671870174 137884087 728378446 2092019 656206778 466617775 633697101 141343546 539474938 791494636 715500698 281058632 75838311 20037204 446492459 136538121 639780936 67500933 678650422 824116113 832205989 790566352 151634002 913873008 327649075 778675382 376555306 348367355 260525462 801357451 744674851 855639348 873741841 214601979 386691625 616073647 788103031 581403475 597192026 783056723 999191978 729530966 918832066 166857381 323781606 907928684 140435120 174012500 343318942 564938229 325017991 949232008 727427868 570854198 471774935 562172100 699792472 556259875 770213659 358735830 670891579 743138064 914521726 395074161 973356939 897121820 841126443 385687278 166183127 739066563 319149594 695814228 729692867 870061683 410608262 373448016 914584656 763703738 773410375 771143559 326531326 634956668 304318614 465701134 766067445 532624384 146811938 851116755 178526998 273701415 294394540 406979553 453050577 491960199 754547849 866224981 943858319 696324324 215410690 978381613 884094764 525146897 381542005 427051555 173593724 437722707 752612100 256695564 348626326 789702284 908599665 649838613 191601517 698909588 50280991 917958279 923739798 129743018 368278404 280471073 304779169 558816073 395064542 781681309 767136153 211486419 478961997 689304988 192255553 340371134 69240854 99800326 757146382 526381825 263819658 874006587 316413461 293279384 779421418 115991965 37917695 871580595 416667532 759391332 126907305 337215874 490340216 863017177 299478592 763899013 787539907 945800202 552931818 94921452 392923320 766671123 542029993 198802809 911845261 479585919 190858651 938357754 449305706 217888713 908525796 256904323 332060738 121194095 47408410 845924602 428203393 493303308 683367525 280260344 521917768 283891837 676596897 146218449 217052810 593560983 986559572 174268835 85825395 883029283 374600776 774239214 513016981 980657952 900684393 141132890 686411407 458382790 472009838 566580794 989664237 762730375 876455798 543997185 380679607 286282168 687666330 657037284 68840020 267860082 598959116 714837409 348191513 357677417 334167646 193789554 590013798 764560693 514444026 969445977 178248248 952844338 931719091 708203568 421791315 793049554 303234933 171502375 313974943 487652602 830690700 491554601 832620757 547427514 821656538 132576088 552702974 568919519 704747085 87970131 842039637 306579959 783623203 543626741 331292085 32928455 378321924 500436825 624281662 532839045 339583117 786145020 748846636 286899255 491590793 398176963 598171439 341481539 777015205 930158750 617227624 150839309 732632600 431529351 193562272 861597747 659268912 813315009 397651794 809364780 997882050 408122965 551613988 995706965 304328369 343111341 251256513 834034364 159755967 561680898 431240978 72720110 354694643 862689453 478172729 56274693 826413667 557808008 184627935 759044901 611514961 555952873 627853163 781890648 271737046 224541070 208939405 67037449 802677486 716539733 330261300 53628697 235176747 377726598 183876314 508272719 640481663 291963957 152416889 688120021 307593682 287819963 954613899 889296918 274191310 287262013 297515804 650450540 443420853 387063062 158871961 208177976 733402554 532895956 882505530 933825258 687969468 738926346 722263916 665344599 256695645 878070578 768965419 825699575 514943831 921087960 761180855 613796826 605835428 361919126 261582633 361069095 760759087 205147815 468448819 842864109 698447649 86860917 903532928 385645835 90847937 960177154 64053325 45560320 615183886 964132394 687907682 948447135 329307172 660930470 501183774 663104841 824858937 680686550 393896399 533459388 393537997 519503109 879891260 218308187 734321944 95277673 102824951 974234967 368476399 846199054 653134736 312548520 509772484 650722956 288980480 600005562 710105360 922299981 670594205 277956910 788336446 74691852 240972509 591352991 325584794 373235707 437559288 88871481 233098935 621317590 504528565 348160509 619381261 460845556 449800268 837646933 812994251 464360908 422094038 850167931 679816864 846393688 824172475 954415870 495301496 639111770 825923747 292678382 229072385 474454719 732436535 219818811 843888056 507355159 351735663 760597571 636113945 50065075 112349879 570101478 518248218 64256413 212298833 541025981 604488460 842246434 122721473 677976504 660367283 125301654 421040992 635024232 640231934 799477366 521294441 626730424 365456394 902234941 741884362 35383065 12802617 352975778 553682174 792875003 237317695 346312245 933473594 690005294 582914178 88836574 483560475 852362863 189786034 864495340 536174756 94624475 922544821 800267176 276763432 864174416 5356065 542082085 101002542 130734027 546662647 858022383 60242421 50325559 491702810 971771424 944274223 17315096 621343805 774311798 191663663 13609636 631997455 336761756 800850962 727584189 940497718 166241522 540070633 650006584 910061105 177771293 519096876 150635062 809444114 317361579 337333395 837243194 686896205 239063978 929225602 896376095 100259050 901533538 537478004 651921671 566381135 806206771 601131851 261484351 716778946 192216538 176954637 923784705 20766288 960555972 997943899 386717872 88336238 428620682 774494617 508194161 109834612 408928949 956287361 628198624 587878283 861803412 606461925 270529721 668757534 875256716 783140439 813323424 882100037 194791304 544007652 951464586 332375392 976998370 799865407 179042385 444214052 635452531 175648968 591971206 481172823 469961290 617464417 767623262 266764177 776389232 460097747 793127321 220628296 809042296 784949447 831086323 550847683 43706600 586972362 911229545 3793716 85916601 23952768 646382512 602352660 216607184 516807100 711095783 832879863 814295084 781997547 80480827 157616401 864598851 590362491 432601952 70672525 953255006 163670874 942639095 254515453 224982474 57565071 68071877 657852014 173247956 983228036 913913768 900683371 612134253 792326229 754672367 592154097 40929855 126497185 543026052 949231124 283798051 831030953 754324446 382432022 223122117 899565111 233663168 759652594 611914094 562817070 424270264 154555240 802109820 772822050 593021223 942546129 180980497 826807499 623626061 88748871 958161329 355697989 238390705 371926198 148758528 526631864 309947694 122530609 79562645 41787807 955390303 915986235 629845752 962690314 786628401 82170763 593854979 173517656 499038843 1984535 412441517 832226393 611854814 491090732 603232074 423011302 647015026 984352533 785941387 295651221 939628296 361720850 989640414 521136622 108797712 920183420 940064198 73795803 141647182 850626587 609176843 743121452 125347778 235757083 396114711 650291501 779313008 820573701 332309611 236615316 19962512 342147622 200431775 369700662 483049701 222614884 667118897 736483871 277517023 910053504 275638890 907040637 280538509 268020402 239003884 716078229 570494039 989328818 151207978 429090804 278781833 510457380 523141729 302983761 811740666 545994177 150768223 114484718 75939046 160501594 370620012 145763953 547787374 847892480 898271652 369416542 550152529 673590666 564329157 865683278 557424367 712713207 145613719 942512171 510568989 113414202 591452478 725558857 834574089 146088641 445511843 130307206 221342538 241716647 210950536 748501092 587924393 149140381 127021548 490042261 828544237 222871929 404172626 506319378 8673621 812824029 842386820 921489665 94807175 379458889 63766816 321404995 529123134 422855630 739930797 663156657 178210755 170758313 479740651 760805853 837714150 33937381 621828299 177320866 806795210 595762750 142775355 78062555 190059141 284771301 977923774 999007625 370452264 869784865 806196419 732930216 750110319 56153008 246119412 644726686 278457955 99462669 434305984 139671473 412302164 60777824 764938441 379564385 46524555 377067471 79903774 854265800 868333322 366685569 129601204 990690709 226675583 933806984 33348243 829844085 859046971 529125664 456857992 952113120 760074606 391454997 910215270 256213108 43382537 825525145 279345781 934845675 619441215 412288747 695084162 646752182 91003593 484371248 618934356 173352204 449563594 441646229 881560053 508873885 11068560 917780250 733318141 920380654 882767319 632639676 922187326 521977286 979618646 850111788 262537512 978420239 557245862 585970156 773543195 693490620 579082748 612511948 440696374 438186699 204703784 580024085 911102486 636037089 908705315 533799798 558768193 509777394 620718490 358602699 365146811 887312851 126320778 26134526 243652368 740351094 628074938 718778119 698535093 522798522 314753769 744561688 704444651 53714438 70286252 793512682 286132728 102433035 877116201 73773489 650012607 3513352 202317533 849212371 425422929 243684285 54049030 654757238 877285079 217396028 195934114 620667401 364481323 168938870 544734937 376367846 316122782 123328109 221382960 176154257 460016988 344201148 873554749 984607355 610436660 972697712 450575979 215572481 719713894 118752032 502528645 130431432 941261688 840069662 689478220 144087766 470602805 876350896 185067949 439540245 93476191 775020678 685694669 405328836 645115053 16343773 899673707 391760130 916725509 301375162 40130381 760359585 338916371 698762657 276816549 626490623 446976867 67188908 719946874 442642417 145755674 538977794 378877556 492527421 427291087 322877405 388293158 64692967 671602836 102195691 943594118 766166512 970834447 774241453 409205330 813038384 365748208 115811677 529585214 887687802 135620159 120726423 894362081 133592009 604473056 942853999 262623245 710931327 813572840 873500235 250039042 735818248 435297965 245119464 826159128 959662830 239893771 341462716 801801837 103313833 147723268 208750275 381479095 373231561 186871321 734687807 869556588 595826405 567531588 367745060 796313603 118621332 682584766 513203682 978838588 507028531 883089260 915272442 314456006 475140157 213827966 716090136 880209584 32221685 325144552 293687256 567644908 174000748 197895485 946874256 279629537 402019785 166264168 304774593 468642250 730068605 44022993 456713154 125742952 542269337 199821318 781921569 947133086 386155057 581266097 47414681 236156462 736389086 361836287 16060873 669725966 93862477 137635898 714307299 789873431 85591027 674898075 901209706 734831995 727823612 968358598 244189473 858972817 855607311 168766581 158071305 276515976 129630999 974559877 211448829 135321122 797193419 769613198 425460987 18653558 482624180 37651421 627822204 297902238 118773971 436613237 354882791 523412043 635009150 682985727 522254221 610338322 605258686 513125138 574470698 496651032 529403484 416351578 621200667 945546533 197711504 505441470 89268988 579143504 388239281 656732973 15680276 764338111 622824486 370339266 820234675 853901493 552267013 681083283 324838763 45075435 268519007 817416193 719318029 150695913 573259199 519416612 180575753 265200811 497532689 355105661 790802857 55996994 873199650 75787334 488269328 232561294 651185984 586819107 845690240 246663689 350258471 687355734 772046522 261047896 346812475 50634572 724647879 712593389 156066880 743355036 353792960 930298031 897468360 452743955 215282003 284275573 183578234 291135401 236520739 229597 194165848 184198772 326099267 983716446 23169077 34254801 932219855 43510131 732597607 960179750 732293746 172542964 793865418 912831774 857940041 279605622 632869480 676459232 944383336 244894924 67937921 663436641 143030066 2781589 196571054 977508599 808384158 498833768 668778381 924251909 298901803 766509553 409115411 958092040 732609004 12645167 887572505 388402156 879175268 770460550 541997556 299526095 774345320 518222527 1203870 620528656 284242355 945234884 576910726 339678495 86364105 251800386 322349351 927643610 922447239 682618307 770202733 493820862 161295113 87978625 97486294 686000328 98939423 856123133 291620738 534854362 704043697 661962870 805419997 598944444 347941281 205361690 705515978 947008779 214574966 189896918 462839852 54810715 872246262 241032975 539564767 154775426 827232698 314711516 872909018 404341832 606549281 669720669 275116687 867924163 66521089 757955532 363180562 183169652 726380136 329902466 387443452 737210961 333446470 730139628 560342234 527542727 575074912 352267694 576245548 556614375 888288248 788155964 94701278 529841465 535302454 485023212 426651904 607994930 367386458 894240887 902807003 510132741 952292228 900641769 7318062 131598979 63031213 2104295 480785649 605025633 683371370 110206018 763807386 24242256 987946205 492081295 736355742 536799582 545140707 600833741 385521348 676559811 684900963 689282585 120650014 158743336 611254606 210291549 261044840 901337763 476080585 43649252 410823973 426347349 844974983 53138607 578753013 916350769 129372154 860570817 648839804 34478836 452121252 771542136 949380253 869826267 593731771 674911233 321926017 243030934 769293999 395838471 785344872 862480225 526627825 914168661 951843658 351857450 592349241 202805158 110740051 367041667 457833230 731210458 885807558 279410677 594701580 571520370 895842573 598582678 626226365 736846978 540414416 553177768 107434686 457988635 130322780 570617762 571010521 507543435 944108742 461393062 477071274 403041416 27349832 473218492 679748993 739360730 55760010 853490327 665252273 229632167 21876113 463331986 255607806 293398516 623009397 624150894 943320168 396549746 750105631 507635626 111938634 801704895 22451152 442817150 196134986 221983466 415107290 464729517 577712534 871413824 121192090 255984379 972889781 173951527 460013551 53573875 620318628 71081471 185852686 594773511 906621093 397736274 67499618 832456451 251416674 424582149 403591923 954417009 572336229 72594604 267900681 219489253 248657685 29853095 866716152 650925488 771124580 587527715 738766792 88943562 195731381 585247993 907504522 300692806 666382668 807849537 633787035 96380468 761636483 580488507 425397375 480640365 774161374 825159710 60401668 457605268 694735824 978252444 321447667 432869204 99393679 705654367 335346290 329506208 634287029 975053851 481071170 956587352 836089860 282709348 854001407 722349201 679249021 940106502 821713892 758778841 224744661 477343264 481284723 769270203 216564746 916640415 11824068 772736819 238939989 179198624 420111831 704950977 930573234 567970910 887487980 790896605 105443090 464699101 231397975 658120087 805366964 983254791 365711653 915821054 573905578 732312249 12727374 57497910 270915030 590531425 633827700 901073786 401041444 829439371 723299999 448230905 868942026 41658346 279394663 848905225 647654789 456858963 463381200 118374973 897184580 634903717 447890599 329642914 738836019 94240331 665968963 136771791 359507279 613764982 864199374 46923071 164624315 723415639 135207667 871986669 575669632 931838180 678484734 5074409 103046738 700770325 170478181 528828227 995393820 954825710 173401394 158436003 95344637 965417064 593056716 939961612 909613590 92639577 677457795 35854967 833242069 969257587 304746125 993251344 623752233 923982482 657598518 148656336 484916718 589908212 102011268 909082925 775806097 780911626 889340560 311162508 837159565 989561915 736317425 784210086 178261135 430975071 711954377 418423236 424349688 32895639 467229028 191597290 102016329 444824129 485853298 328546563 612573991 746547416 37436147 62171986 137276590 465186652 549533812 204536580 344308861 663715424 690893060 869987465 371749293 275205226 99229920 251727857 955915626 768136605 486411921 832197000 968572792 103174803 685540140 751820542 240057626 264219605 631604715 29489740 834274537 826815748 982876948 177381492 569449895 391349146 684456797 307487984 54397336 212763796 137249062 735971591 168457984 858283247 186161200 672514456 756659592 729786970 741568281 684712660 307561928 334975795 662612186 233998688 816684108 814595901 398311050 265898818 898750567 595774697 544124338 95723748 842267392 13979465 713240964 899017176 642447131 870157623 575985722 540486160 82565399 618102478 81964923 773132801 276900940 616959926 465753366 114769450 533222908 351798396 388439025 745766316 119321710 624183620 447120952 814879285 918707239 519394810 656186024 244717224 402419294 144326443 228733324 669611998 789284619 592464997 647385466 136262659 168506773 227232639 909715094 786736691 736206300 99548586 221233269 106921423 55070765 994936644 910538433 221103468 49139978 505036650 660098035 467337039 214187058 63901412 298977129 184889714 249771738 285698455 542950546 840329234 126733686 88884123 564202197 363906177 231755361 722203782 860661156 56821259 848250775 38975669 943615527 728418006 801133636 469795615 542841928 721314509 227172575 158862388 210005848 815178548 209871975 872587420 788302338 957827250 224409559 768011464 841862558 968453649 8103829 14183002 523182460 285694679 389275723 935735291 64119978 389490398 48438374 481917976 704129179 998748728 633763636 840359311 802154602 430498928 777005541 380144008 358654864 153482067 37386272 647591230 753252914 321050581 348501420 394344199 296423729 122248628 443525345 137793681 685193328 930126068 513980882 261148801 142420898 994144551 5588927 177999210 630927467 292167150 138873002 382844630 498118697 657680143 815923178 836763159 999519711 889625376 632534709 755093017 722981686 667130837 281717315 338961709 115879825 665996965 248635361 22054422 320907947 23106823 473596312 202331801 147173432 899805059 533570528 768482345 64494311 804796529 382090933 820682035 942912888 910707957 262632456 837386946 106719028 105168835 989890209 345447724 553650115 331549085 777521302 986650930 151096312 748786186 217152858 146166063 384945587 939239390 929606012 418536669 752112298 117687912 959493555 536226627 172519688 118902262 109325656 828240043 181602962 596746084 655779452 703375247 669415182 67369206 557000610 834834170 775052824 313029274 274323917 64396735 367012938 338376845 754476392 264242145 392675323 793412922 462485618 778409636 124232442 556367401 348895034 693626872 730692102 12753873 615071546 418369324 33500186 681277166 642883451 701775310 274070309 939634495 961966710 852090755 902562319 535852561 364339187 710941483 196659833 551624946 393798403 465254524 21201602 936850488 294852824 783748606 794391017 465870793 57199343 279593403 371719432 772546839 678377103 182076035 973032053 205195027 198086054 686849931 188800897 617521262 926971254 822262230 824361633 573475387 925037328 313049332 386298316 813319543 691124788 755981548 984919864 762346172 371039287 603374444 552351268 269554490 438525191 748514493 381025905 996418016 270895797 904298915 553929079 685948042 171063085 608028231 882269863 579178049 899751402 67538008 835341824 487571657 207632442 232067185 157104778 362699880 638780012 911521239 38197673 13132130 180364085 950994746 394872233 776262587 147701121 916474202 951671079 12166820 855225436 864939670 213751198 226868697 432238103 5281665 589895460 227182528 7986988 741934963 379006905 404601723 504149979 530150649 441593282 736874271 286489851 55924176 657108724 899751675 136666934 141219485 940983554 435327207 254026653 415129093 47827703 90621584 59355696 598202895 696485280 851889155 317591459 847064500 420201794 608924602 83151670 404543771 920509220 308438914 452712140 803543258 567454826 56627424 723598109 520788153 439206965 40754032 65223553 63324252 124327188 134996356 941988106 298224740 357473307 920540387 389778618 414857059 831347990 785863950 728651845 86674992 895830700 699489320 775699092 596519054 839604654 562083228 864885057 375729625 246867748 209237384 97629789 7504570 813671015 557669112 411300763 57589039 968799590 17821515 968919246 849005986 389113685 66665525 396980025 620787944 116327662 196043896 922910154 51768171 169547244 520618525 437218006 959759142 357142774 972271909 30598260 171119994 398698013 349851098 973812257 876453445 110311943 487220073 741743246 794619478 642350606 527121854 449647271 373207120 709669940 315579697 968475766 269570501 590677831 821213728 54594665 300175766 312335567 546824104 23910321 836748797 940923742 861352554 599144595 18425024 872039564 892589207 770441495 994754132 757222291 354542741 768947616 39556581 408474710 261954597 470491129 954861800 753708256 238783099 794218776 543617835 152910239 298629143 355285818 446789958 60506670 315795045 216922709 577156758 513692570 571462200 418845017 652551298 942596708 680831807 683400299 205919195 665876153 967576692 196609023 370766464 633425313 987390225 321837036 900552385 183376010 615350056 302464952 213546567 55538496 107511067 126841402 954847175 128659129 358964208 45765945 457871952 70640994 748178111 643706625 959634121 94617147 983471856 7325540 515200427 494420616 714743048 359073214 830497218 57524899 299422834 677101883 131033631 615224256 62071499 156541655 10241789 629192189 129212685 724635797 931907201 509990198 93094297 566874713 53092863 271629552 841707763 864370074 249246138 839455108 227484271 820242964 264629957 624535448 294332468 98984445 642996952 759366550 106111512 793819615 715715252 87538982 791943374 581470755 692607560 335596042 749254031 881778020 368919286 689819826 249958330 741110371 169811424 652180683 629611737 250731954 431817211 900178308 106945892 625075371 261138305 734400246 606425748 519572572 503330475 446967902 475765078 886178232 409430370 234792590 923522880 225886064 774256334 493240682 534218343 421913600 751852103 220787170 707104080 5810857 295880842 15122380 266001836 201721339 65110612 761128902 979677049 607900378 587886298 899015756 875176547 723962914 819805576 665729298 931732609 322927100 859601461 619001626 863000144 921574656 603718377 913524962 691615202 722900078 212818798 447112206 166642256 243557453 833407264 532481429 52997781 631336876 14583563 988556739 529325693 796705477 535946036 738322492 813931938 339304586 31346827 818662813 913894772 295131406 621197139 97041597 540748006 722319224 663679208 809455296 865520872 28393369 775886698 528726651 299065065 527769503 475744173 961004327 664074095 615801455 58590091 664825588 625529537 980779649 963358509 970796057 5046123 787399995 885468082 769147715 537170615 995268590 503956028 41718232 867754173 196243383 556848887 164164260 524559788 7767333 582931723 783171515 42001712 391887856 706720920 669103115 252806093 12711744 824193863 601968639 76748968 843670050 689206866 17969688 597666949 224995296 738597924 208855886 644682992 790702771 901697680 239413822 209228012 168941312 580951196 320122987 382814264 975456831 359144197 250477698 578731360 216332822 584733854 509942756 635634947 344423165 659146858 3134958 57343538 158017433 491682623 243945562 770535408 769873420 102595127 482904815 774201341 430564036 483274261 283230272 826782216 516232667 24890455 56682921 705499744 476877816 642749394 345695384 341460547 116258831 651198101 693843061 209331005 72339296 789576950 581059671 792993830 959742298 580031700 471915571 859872296 713380015 776871797 253966828 952328590 627113205 110880114 628024305 748921975 918673876 916890188 1836591 21877764 979735422 150081864 183968987 374534251 156947897 604738230 316075894 142408205 685536854 415527148 254978136 977143367 504802079 217606958 462767613 44360239 549337451 30132387 469372743 722275798 815705794 620650458 448008948 545039117 331216547 105085851 2213832 716750619 234526556 901055752 201725743 952870288 565425071 258999628 956741810 594536261 326403317 63540741 20459396 597331622 683553893 907495539 178531767 568978814 886864853 952353975 955285620 153342816 267186985 848615494 6142926 209482177 283531135 942352662 251609977 943119756 80190210 293416534 367479560 755067918 596351824 336641039 30644641 136246062 524924755 397657007 176252626 748534563 489802173 957165157 408636990 773712338 222949487 840178592 660248886 246672814 282418734 898760814 970725458 852788986 379379534 521399799 300103696 547732999 687076872 135176413 287980045 628325121 25394511 248757696 886422215 872182269 331251663 990311578 655304733 328864396 63829370 688770615 323947954 111650835 900853177 542337690 129963752 593633068 874145724 771001050 60605870 679477691 101508865 342838916 765113376 642609940 245397246 177065708 83835234 110083116 705266666 464112837 574556577 810525226 676193150 798972498 767243905 789152647 56037792 970869928 784157715 260628003 447475784 876151801 64742041 613481276 523527703 118828395 31039490 350274381 116698486 175774933 307668401 205690913 783192863 6878847 269526990 702937470 996282110 263978506 705206864 891791930 754164853 612016598 129840848 399831052 975084610 571362699 581685938 479341769 783241658 363188795 66923986 5155705 450231711 292571643 663536574 442894697 734449680 545688826 865878158 764860584 775241673 675732543 693634391 793835593 932477450 692927961 371007058 300879486 767866432 1030475 809123750 277563075 158806012 368896934 727649934 877706941 504379395 850322401 731210135 410487656 29403823 432947575 710247301 27533825 730760860 136562708 450087598 679864857 660966754 712050495 347501901 494839081 728091766 269278548 906349759 721562597 125717085 585938962 329110465 334057528 207158830 953862292 782288685 259074774 871654965 186993191 992715724 638768681 343727126 906190931 365129238 663351395 207261704 860251732 338170097 790794399 778513920 229930013 299742129 638542395 164652783 250292194 452028802 376363830 809379739 882159199 422878045 995825868 458308103 663478214 444935023 440745351 983050709 175298048 613770188 504386979 767220678 160787010 150470860 189341733 672248474 96213902 26695163 697620512 352598637 919596661 227903260 563582623 861078366 320579402 48709627 403833981 267983205 260073557 262633421 298530025 502737334 906066860 773813218 113187687 871379190 872179513 226888778 633120567 214134666 199684285 574750576 2085571 748604782 491561657 318097452 994957119 95876292 183026976 268407468 260184949 243844187 37633943 602825018 233879855 769363239 72300182 875475817 888221611 212859029 304284416 316130259 769760281 532351174 629673805 1144122 275429728 198872999 960587137 163389930 4604727 503014630 897850561 641630649 107160239 181787332 256091438 297113893 406839904 515458548 324116560 909037364 375428892 285256360 343966753 10592468 304648513 977591057 903104221 120684489 628774758 936026738 942212549 979444734 303611246 450529592 537733929 987628551 281788694 731538034 958755493 495998049 609557280 975745590 491013126 698721204 527545665 134157975 19218453 945055024 878833907 991727514 16859405 496868957 793972329 890926287 195895792 481518104 754195332 761551429 630611696 936844810 529182547 643181048 99645496 841240413 546606846 367760338 845738315 951635085 159415553 772096472 960661678 839607129 924290003 691787456 260704035 256248126 386944666 563545798 773801714 746324871 871765870 183136939 311034275 236184872 617278525 757346639 141430642 99508723 981030040 213846467 938963090 671487157 975988218 911658947 994809681 894106940 943949463 634520376 203928640 497735573 697113460 637318884 286546030 934079679 181129750 807441768 82710642 460564258 177794910 561953545 783865035 585807463 648747108 534520354 87114954 814899505 653665906 424168209 413612368 680899813 704433708 988283824 612407926 701378266 114335294 739605313 353694391 668155287 611581681 17255989 661292359 113890351 784969604 284676282 566654221 12794391 856018938 219585294 636231536 717856234 225488427 439038603 449216998 788548016 618544004 643048028 863775658 201795814 593068118 494067048 647741176 277076475 892144315 792719682 721388706 722867295 367470369 79489702 929323293 474721511 828629557 331895730 968379287 551459891 769559329 858908061 221293996 921530442 531086365 432187190 864900195 596281403 763628705 234827270 383601302 27263333 146224454 757922495 51690370 627635230 763446848 387041638 457666413 495633423 401055328 719054328 300268284 794327884 894669976 363978136 850712766 776684173 841047201 599779276 955124355 817672299 567787444 799062262 13483482 91564801 489586051 128409831 606469626 642305467 735570088 373267365 616149651 205333239 480312780 146165280 850448844 266168998 675744278 290008461 637919773 540776039 276039413 511159756 121024326 447780634 191423124 37988663 588605225 885050045 527467186 760123370 476422951 429012727 175131617 439844607 444803301 701588283 812230310 621540367 96964379 590287977 111766464 692908698 544071129 367273980 640265907 335038911 871017796 644340096 871123984 403925049 993423830 417055517 87297067 943510608 490992521 564110387 583451269 101229638 65958343 231089221 337698429 247983028 136398817 821598338 341246008 758079961 585408126 202735527 286233896 974667965 601797302 80618963 662590556 663736712 499372919 578864200 62995905 771647195 444306548 637932881 235575279 345655860 820855163 687605493 383694185 481396673 252436929 402774163 772308537 659175319 83460279 482946699 763357851 582445528 672536516 446054968 680072909 503720650 625915758 203647102 496922885 183620965 293754073 309736170 265276690 244377161 265123775 139344532 627898936 783187631 843973038 956203189 119401301 504702671 219674859 215813805 788138445 336508486 583867481 25226756 757708023 231088405 899671898 734951587 491487392 550748685 320738937 349638406 215387361 982175516 572496879 92207937 566949863 822834013 583753273 336454428 821894011 979286338 380022221 752188872 361708627 868922837 476709576 307506906 264489368 268200911 542374006 856908164 830132433 912547338 720153397 263401116 342398244 169869911 211085329 54612897 889451692 832699980 952543147 711838937 601071606 980542121 732244096 666845877 107485803 867530213 897769196 753227467 834193483 673649183 729343556 589412166 538402516 232866037 447691312 147054809 755653891 447061516 63969626 801180218 546854857 777153949 800701256 931620071 687172597 654855971 451086609 759574738 844305764 491176563 823191346 571679332 934491518 577110154 979341861 182574598 279563794 264376909 875278081 446737469 273726200 428367328 688832165 448760333 199267915 585505944 738873556 247508578 275815552 83670367 31278861 533998843 772946627 471863016 199638714 903183422 200387321 157895105 519622571 995016525 79606355 122414507 181366213 413385545 581779275 435496164 301705623 767733717 678060463 322740645 609381630 837073450 367441926 654107323 468957250 35931692 384282873 121812550 115207146 593425202 858683185 977597030 166597646 801752738 717095131 107283041 722121453 639952632 946945077 900696771 314397979 261206334 897581598 468536892 172442638 336644683 891844640 922442156 719640124 151884935 464633326 517490810 934611609 378874336 311560908 61301798 454404270 882144801 177967050 634865085 245759116 255557550 114183320 657998932 4890495 877408451 183466398 164520908 448416858 223235372 149410940 573164557 509997495 932136776 39295984 7936437 182943479 317655295 130517208 562482012 307113243 554115200 247367745 622815775 234217699 919330951 26237274 657786798 414104637 626380821 768432512 998626064 143826548 873105621 493442308 730592614 169019903 899163955 217593635 831685545 375086192 38261246 604878380 80389496 64967560 16406130 326778458 456392022 101526514 935616979 677282475 89173844 890908411 159114997 624789376 507009313 663685767 139624526 479546834 421344281 521050680 978251906 145745906 627839511 99978467 186397404 819883489 415795169 630145260 710504403 917775171 878758829 749098701 363974026 988905622 987022738 676727177 701452211 831679505 773258572 374520992 267886056 928044641 284614756 183612882 989373259 639490139 168286064 429507313 728184434 464467312 411065156 80215855 153942948 223018793 223974173 526870077 173493501 201049940 73971208 359111933 920651474 871313953 20474161 611797201 44505113 771642574 86290568 316355549 916732531 697353372 991510508 986022449 45774203 884733882 399521219 326824542 263556594 550428662 200595932 437039375 117346970 324056277 77978180 971024133 865987100 452158629 785266271 24695170 320534271 516821130 952650583 939047828 832800014 670228957 158965907 947126510 109349956 300803240 197642618 720186495 493137501 688327926 520705566 862260752 420882582 762074081 940547295 752755561 608358112 268739358 304874971 765616159 283928116 799744318 536423390 501132072 446977241 974516060 788738996 81863139 699672595 680856127 140210806 803219791 683060670 332951730 653128199 999860957 541456014 559472921 669656530 853932167 905393733 723559806 295558605 679945279 533100904 455714341 645382808 139540935 692892939 749277175 382352699 436866457 45890625 811105569 149664235 791970866 508524576 425256329 735925424 521038499 112128202 29057697 129142673 563447304 38872373 888655635 458086895 495822165 570326932 660759419 286182541 714349298 2047778 739428875 940393136 477472531 372389365 771407069 74459634 294141582 927917561 605219389 148556053 662125511 780551174 827911593 569910219 940803180 889693145 723098365 557695480 699932141 60375936 171181678 98263838 181898383 767532273 222643396 9928606 812625913 559301550 711752935 859014576 27187700 757322315 98141342 799268063 856398363 763202312 436496690 207356751 34388518 446830039 376217341 885675644 122299618 978838194 124088442 957262129 327547280 360878126 35293191 981384310 205093690 529505675 759648957 806168897 402951451 164069981 272675731 839254902 947884152 4801573 504868888 504854547 243791726 387986745 341253433 103743150 872348027 423435896 372277248 891395351 776804170 557818990 78824555 613104944 170901114 114148083 641551979 53120946 102737170 658333102 744540207 559605419 317954742 434022181 681819267 933895898 663635535 271607282 972156073 973726678 556811290 724169560 192448419 324737446 524374622 227383393 682659487 216961518 560805010 612975280 866558836 381281957 927394271 722933167 858870453 917793132 517730584 331659347 16847846 200356199 330748479 400091142 359222703 291450629 933451550 787525291 762862082 273891035 812420419 953487303 58418202 884795395 770741174 345657049 556407596 810159828 908130606 90033234 38234111 605471568 160548022 358185018 989649067 662043975 684060025 61527869 305620879 644411016 218995452 492099495 781096137 255228922 395075156 923501855 890611227 247455593 893566874 240598685 594985904 864007029 723892742 700846215 683405573 343460361 359366644 776908055 978830710 479779750 908276848 345035625 951403640 214711832 802096419 202098623 57146143 300894239 615156613 227449208 314801420 442259799 140192679 96547987 921766631 710420781 311143199 421449197 186582772 437752789 861192973 680573986 755395230 185501243 856767459 429163766 21272068 943064216 464525184 333261091 606203181 801320941 343559578 621087120 413877802 799460524 672482498 506540884 314931604 644615091 425896290 147928427 581083998 225793792 45506777 328814204 545085060 373917932 451080086 468752796 870728117 554805155 410504987 891806835 780212011 938472923 856498488 541355847 969323511 673557482 502033090 517516493 910805808 264031397 171957070 312394685 354199579 773720970 823032817 274729654 259846050 570511678 762592734 390417804 157026345 333518553 157378302 849141668 416729311 528715307 653834611 302450259 67212657 249681332 224602894 782575262 728310820 881305562 699040599 731423001 973706178 854875790 181091709 591404183 999548381 219947526 956345318 30188253 296414765 256249272 321553967 90113761 967388501 180107109 625011077 42626979 541629796 479112689 338703236 276923696 434567400 95477752 377005802 293367370 367587665 260933277 513047553 851078957 61727478 683826005 367611817 17272111 111875512 355881936 654141132 307667332 268983205 2758441 867637275 590492176 810219149 90756554 311384925 225723814 863651694 346936160 293290463 974575356 609323353 504503221 147979069 498315015 504070890 722004273 67350777 492603978 462224593 401891103 16964187 36888529 717907010 724434369 594668471 214042958 153831225 882240433 5835532 572151118 248333685 774767803 207144461 574935617 6908894 815688146 678149442 257568911 241238573 731943478 717758685 823094609 797072290 907689931 17190025 18608296 721873885 803702670 991296692 992944925 485329488 108103006 507420119 402242221 530191065 636101876 916147802 657626473 303395558 20688280 22929839 835379024 653126684 644096773 307326841 874862529 145888191 476409522 304769772 467078507 294106300 99731157 664843470 339814506 46159200 571613689 999737568 459169214 104383025 133321876 349282372 157824618 847013389 57479869 318614726 596716011 77035837 447749498 411955542 366418141 141274113 238278831 558575664 960350915 494815620 414312543 943045370 282327226 6500898 187528756 210339343 416341619 135706618 236469979 393925264 495162453 26851526 105232943 165817243 681775068 694270583 544509207 653355169 489356396 90118374 972424039 21344200 482524475 858399372 946465129 657222830 886971816 103228960 596918761 708566822 967084321 280377785 468584625 167271508 417642410 586552948 320914782 85986128 102896258 374158951 362404093 281921401 327161872 782646552 469159380 863216220 425597380 797987316 426592431 820100289 705957255 684672106 678411632 901824071 414672575 651471883 958641390 181792283 901541842 473925965 432561523 822852976 560927346 309125215 671544958 893895646 572938532 274925869 853718184 637023969 930026844 121857364 596793262 166233312 256345415 471497848 892193610 643501962 260552427 94600850 968412054 694269224 720048474 792242079 729029091 992618787 277301606 540699678 958533908 313435683 87384353 984807842 529574917 300776818 440187064 908548807 95867595 547445882 934087116 229774789 515771670 170768905 997812726 744968670 705732868 57120960 873786302 766529904 994375938 155548322 538843620 710467516 518521293 61376826 737655155 613297623 747066777 691998128 668845838 769272082 545012980 780077890 480700463 801608163 973371816 91621584 750173380 767111753 764387142 135126326 310332183 177491010 965415200 881945669 702281269 475973832 849960470 823797549 704977865 574005167 753695758 339800796 227861716 316446320 237596705 239539232 986513188 623620901 827478351 929457758 78293029 198471392 205798938 224837037 96946736 949567854 673564710 202855465 807587801 532388655 463717763 756456063 330405471 483608126 255176771 118907467 96434004 841778086 989142470 791403536 424025251 283639397 562070713 112468991 296750542 955733676 487155211 179175693 575056954 888660073 317665519 425763937 193669852 676573836 959653815 53849230 424144322 12479478 39323825 657713010 756261831 448739567 415509712 349972625 397229556 6439402 857208190 269618507 388722 110955133 721363095 936541422 512120933 797661191 53882011 529637015 136871934 776237510 423275243 550295730 415584110 33598765 533424859 464356947 188411415 259615773 854735613 451462455 320781118 538359988 928682976 905420837 913774732 775959428 653894374 995361298 249486261 291080216 310953488 293145604 965347105 703219365 577203340 369584967 278548730 239384898 561517622 237821052 701642475 677130485 106588852 222042502 342638616 317446673 396414215 331413625 774708423 119897840 819118274 385515332 331134138 52548589 167344564 172928113 498583971 369924728 552716502 522063595 578712395 395922686 706267029 754972129 764990103 913548772 520096781 890769736 39919810 194041538 969714423 585434201 779219447 804879016 142974004 921958585 179912735 299388546 980488231 391542008 982768859 175672839 299042339 683340832 538342898 485883322 954425580 618708006 757245266 225823930 882673886 303828693 658368750 680950475 857867984 936193090 988602216 592430201 38854637 660126962 480351544 953096120 889049396 290745361 122777642 84695074 732453014 621486757 269296014 574725509 63039702 973421779 973057237 718099173 269314879 284995739 863375752 237229525 213105601 72543676 498717765 99344235 896767822 443867974 255555237 351636019 219721723 503597966 336249442 831856872 185365463 275930572 340183662 685806796 751353651 842927824 72858335 485949787 192263000 107957668 790887037 519474121 976470248 879401484 270549921 492994454 681338614 332733652 28413979 218354437 99727794 934603014 516571431 599411924 860222161 876069167 838232462 196431008 38976001 866849354 273814231 559580235 500599449 334962611 714154501 962512360 940438072 332457225 933988273 933797073 272455027 293239598 367066968 790970522 261174844 460919347 175132448 315143114 12644144 595802881 401778622 405811722 854123854 873042769 581514911 972162274 955147069 559922151 571906024 777033126 522048432 559818045 772875733 603717393 221811803 162474288 158474282 62396688 30605622 912774562 758642789 230346597 824119992 506073353 494711785 448591477 409170375 908567791 158601972 912713598 789923033 437541444 973868236 689929011 963424160 670524344 535925520 994788817 896674293 977663073 139323686 600550303 611389081 533101042 657959370 276260293 936127154 659594418 560028950 638428211 563649443 730400565 824195008 463634970 786419151 160355934 812923554 930070731 556299391 312370596 494738205 468322364 72463653 340829574 727936526 700942640 137481797 733544257 567281857 639639424 835086515 275523732 264593520 199857051 182016133 811247297 528642014 50236351 856586018 856912380 190551135 711427484 140912223 629344506 945157520 238934219 586759285 678920594 53652831 50981550 776597353 141134930 825364867 718097182 847412250 11627567 823215536 54812401 835164271 288202837 516964743 962759289 953510726 160851021 731445184 595360100 630810651 532148945 653130590 746893126 269309997 695650896 350406777 132048005 547121450 193212894 492133988 951284533 344653382 724069719 632675532 754578719 90836309 279677923 326395931 421696977 71083183 373648608 868056775 482872200 780202950 849861439 606773007 533577958 496756300 918564316 942292888 734835750 15168375 962620658 293809541 533587028 542467661 593864705 874881507 775233902 278021459 243782429 377408715 667351789 520485352 670805025 668521916 372615629 170344490 738017074 835403718 868487765 34497889 964284183 211209580 193617011 105640278 965362724 676980941 861021307 29521801 320880201 659335086 55092125 584314085 810877214 197201448 92475462 769380232 813653230 866118520 104822904 653376535 806323007 963075425 791992361 171836736 645664851 141277303 607350751 763475769 550713395 553983126 925044415 303989731 931142941 836103840 475022267 117908259 239458848 843064227 908472511 947140473 375394323 816875881 621939065 851000926 67970475 119655934 445630441 633783059 557209606 808732216 997271329 915052751 77567560 487158106 343380014 997095061 56012633 472070327 775520032 113631776 257025678 890182494 137309393 180490672 792489192 820127985 548921607 373021380 149744252 61137763 195746480 992452789 299114514 943537311 516504627 742913258 597068608 76331912 898474163 219177779 120788189 823587171 922716834 449689952 349244124 110356603 915145301 271464281 251660524 239955412 397037104 782140187 841100365 948764740 218757491 386748551 818705819 82444930 158432639 567864975 659266489 140268246 342888306 863140789 715476861 653465193 251186398 659647596 781182002 212068548 461707776 309280056 838375525 800128913 74098430 613006045 703176537 171742170 718143410 110202704 865171992 25859053 219599206 892362540 813207814 667051252 707634562 728652072 993135883 803901273 414488489 992568795 784188516 490568029 812806547 568195780 408683230 813090025 191795399 448744701 873745421 929758802 326871122 424185087 464119838 79360007 97733949 732974058 261048942 312347428 487809467 92626143 365399959 544234434 389025821 138278583 577048398 507021763 113297395 768227659 345035733 439285257 985847841 29831226 549087949 844103314 768424719 776008729 104491917 453409097 735196718 765977901 21572991 614911303 649464926 207902934 161416000 806734952 315323770 112580175 78560482 699107754 451189563 848402046 73225323 364786182 108300540 509908456 243161613 778234227 22172497 230348096 931046373 317014477 320407895 245987913 820956487 499504000 884376016 755059202 491112530 346817899 291470600 516171871 910173921 741331971 697724527 351047044 192038866 905696582 841257418 112906310 601350775 2030241 885290159 688944497 28845716 912440774 10734559 776750835 184346809 118102000 193164840 454703793 306161353 589049976 760786733 721072291 552171881 901351103 824052006 119653144 333500032 529497284 562518770 378779921 779138123 827175354 633994987 436176003 307885854 753176061 61361403 487842644 959441476 615007571 289426583 862692468 787665429 609999769 596945446 42198094 863370796 597388929 288498660 988913408 269418852 142819535 507192626 958279695 879950915 864864761 108470381 484006637 911523213 282782022 189668634 305245875 525763001 873636964 581333116 954641074 576257469 673149564 921302582 674007555 364725578 828732513 157297276 99527844 32710271 331587455 561260222 345051922 906296371 703851063 58366593 150893993 333303386 755618015 133263407 348980854 415413510 67402394 829041227 474372634 83931208 701759660 687551663 172180090 442619505 617869698 309204930 475551235 67646426 793673142 339940958 862272160 855765936 112546828 117557698 337831195 327662313 75254824 748012172 747870825 163568600 255002854 988064473 736805953 239637363 658841081 250716820 255128842 259556540 627185704 840756679 219234203 275479042 556903416 533885740 731172170 61551209 505706177 303505558 795337340 708297976 605935419 880469004 777303854 100792248 691004242 668816415 390330180 278308232 893155499 741177979 453757871 727518090 39629265 5773235 672139468 101698622 8874621 625282667 159475430 970917269 474391622 444161825 782980550 485862444 894966402 38481085 515666125 997038379 416130351 379706743 363783654 514664298 19368774 710484879 379378888 162421298 107907450 896194239 643738895 425319876 635859194 737563617 722891594 262023452 442577901 416380956 318539382 740843160 616400332 519783110 641906043 47683616 523859910 731578248 325134306 364141359 418572363 37243011 486634491 429386646 584885653 216484121 60542074 367317990 461533260 561204001 171998173 175843296 331193883 921839279 636973764 273512619 858767936 331845644 829765028 879065930 840569960 811801647 851346475 544403035 886852851 558498709 99266645 810160849 630425744 390805337 782377048 17762528 19291642 216858566 37476327 682004554 274663145 254218690 15405972 262879494 556823440 119404014 822497894 914950454 459875516 427900176 943093007 428991984 498992141 930449510 880098440 186307959 707492239 407884941 693119539 486573019 828593491 346310602 544473659 482874621 210615377 186756959 636607832 77903476 941070687 567404666 25901253 627988917 493779680 922157231 150660200 638398463 923479028 381147800 406108907 881147701 978838384 118315062 118281959 716875558 584249554 387653220 923737666 47633582 363378247 327157245 303792935 659926263 460784391 564707945 756400753 171720129 278765185 429273392 520435733 810095630 938002600 853388109 842113134 186339130 661566436 278432249 909108335 369807893 907881267 119319436 558768973 536847990 365111788 210415271 248194970 240131678 947774374 558587222 913573860 965543244 3390641 687416980 164162767 154906099 731195148 611692747 273806042 192393077 897892715 701549299 837303737 235223408 259411415 985262008 828095723 115631632 410938676 588082501 229000019 739811508 504990797 746315352 137739681 95794101 919432981 456418929 396966001 41527535 102994043 399039777 65161418 153443513 481229130 563322014 953523955 577740933 273052614 934034378 568885796 955837557 381633352 953815251 282317592 698557679 858204072 996204568 305297314 44013537 669389450 958963982 922672237 194179081 163231792 644892932 901247786 561914599 823143505 394307544 237842343 289802622 421976429 445659774 62333013 788199870 286329523 187167319 694975133 687709292 350512720 635944891 864783151 802528292 707919553 387152605 286229878 942370524 296184619 627073031 706005998 418704241 820945995 417063568 734302830 923885317 138050232 189284763 227695506 494396824 275753811 182003638 219554438 186072032 469861662 26914022 515284281 357983508 733271190 338471663 202270696 30639849 527632030 892692633 394745916 698678480 111406834 85671659 244097131 979255356 912936167 852959572 964999218 728659672 275390706 81107642 130325713 265639120 494446662 467648962 125167512 949819112 859402268 567553394 928419204 303548496 484860999 734365522 732298602 102794571 572329727 150665898 681116892 838789407 657448766 282023620 395087312 482948858 840690400 376875494 913306351 969726797 951599080 205180425 260885864 570258715 599410546 494013331 599467309 500897688 54492816 690886336 112507945 33317149 843156398 681907957 957143289 715657113 753939505 385376267 565017067 333210748 390427983 54686497 109871439 885947111 411686935 563920949 986110319 753527043 501674839 601925200 117964084 582610155 111741548 682224939 672938095 618363105 47073847 475023633 184151042 227374731 603917408 826552670 496327685 565886675 216574105 748978892 54725840 257450056 542997345 791320374 933132146 34636490 760868125 119041496 986916246 830383628 702821233 888777326 243582039 9646637 367065635 988737480 613393618 82570300 904888604 775200721 869972659 960088419 957056668 722734472 278925110 374214152 607261 606647334 496003242 315586661 133109052 363767945 717652004 642622456 364861337 310923005 994449268 787592946 523609309 423734500 155567033 407194989 816248153 848431500 973633915 922722893 187379757 454736048 341932981 436905578 288753629 847509764 506764666 270379521 683606680 854608262 828316459 355248003 667754207 128862447 340086958 357951118 160599083 22505780 353144205 847842701 523237345 847673539 870503841 462299437 231602594 291889018 770256739 175379724 706553802 231897644 668640181 490950309 103869804 216622905 55723033 433530067 357650350 832800114 16955476 613202515 631400543 912566670 798191072 941001111 612069203 785301862 448566713 903808729 116047922 642917512 401299535 871318378 524090775 281033747 304692488 22520293 631132318 312198629 197131182 260219366 393992448 324398485 441507090 990975525 675985661 851562674 152531472 369101338 681920969 178551805 973741054 112900364 17559976 956126280 525963581 227759983 807509640 600364869 371848749 759648503 290802452 76251231 103492333 238726521 509968076 510491018 990467615 944121800 427104786 815766412 39750495 855046339 897220638 698189879 98728456 352442758 975795155 873931601 72290388 165492083 684734872 969333776 45387328 760513723 673176752 521720326 130787658 901738046 742631164 169803599 345639000 290456682 526208321 884074521 463897929 94730799 316620542 390194611 365504966 411375288 342705647 120579756 937470045 565597289 762155628 796783376 652258696 510596204 501626091 427611715 465842158 700520547 265124217 273317357 419778740 186963862 216718338 751999834 535192946 618098147 176030781 939259453 933412759 241561917 353432183 575572111 806397083 4310211 25998892 629959879 499926941 250058009 342856136 409375195 2659483 319476304 486671954 756983492 419906441 986151235 116909902 773532544 458097989 831518090 94882713 937368596 15739991 923371826 213956434 351611725 277726022 684811019 748834016 922069699 409273500 438986901 839650571 253595618 199504965 496873885 210138287 676977938 642768222 882025222 498453962 326192575 582816015 270794405 536054763 721790121 387355873 827866218 38580941 435727699 334316344 936609896 624991826 4814556 368423882 113557302 369567205 780683341 284414583 624174664 335778229 975741550 920465246 461351270 70589211 323373441 671359405 948511143 601981508 26094556 61184602 277158591 228643084 273314911 170058432 291945162 356718693 229070142 247438024 371717678 28372524 613829509 426839974 892442751 20184905 229933955 450703678 152741329 306204525 2942801 833678263 303896741 852356597 469584648 563391360 415843870 392755239 375090119 730926922 740430954 407502489 686008095 78193280 938948976 564287008 720926097 142117622 294337723 13264478 395477017 268021528 466373799 720729268 17984775 34118707 517104688 425064563 177138050 687256433 393281687 305399914 230899741 229939513 339535480 827661731 266118266 457202253 605587672 91704240 844819651 506728693 202348016 535539128 357724683 427673253 180852168 143379708 696527834 955701627 556496569 99939400 66467253 749756790 976970944 899936495 598427376 934862097 950539546 222784654 592730954 880092156 927209693 721395569 127769146 462270221 319443379 755408047 396540642 851766459 340953853 255568182 603197994 825531838 191398046 405045511 18567612 795228627 799964623 624841336 592621840 228247020 121201969 964829171 395432704 502213410 862565898 235496999 782139691 166210595 302650575 430464030 696316091 740704564 148652804 567556648 494377182 821255373 792469428 795859015 563280973 458613518 940390801 53382384 613950188 81454236 686420375 6118807 859930946 865987033 729719820 477275500 13792590 74932677 962974885 600517028 551390820 542269626 106628063 626728632 381986080 563573582 961866063 210370459 502882500 822507013 74821062 537772273 260870900 61116791 672259009 407097671 109132526 208167061 652678916 423688662 936116367 663830462 132375465 82880959 939221418 335493342 286971567 840900064 329666107 568657248 646389279 689764293 143397252 635648422 536062480 12992270 120260020 387730518 978669704 122295680 11724203 288968904 625001226 271235974 627157316 469118042 605941904 749875355 453849153 880800745 758572033 727169026 465648127 210790421 484209346 379850665 93231583 801674955 11901859 907893253 134227909 652994484 439624314 967528685 663226171 77420290 523167235 13902005 896132090 941270674 996782993 93533772 542990626 182429127 178471758 121329219 647928122 929567071 656084368 568822405 972269982 873068410 169626461 694571632 82874134 572865838 196423039 511398971 369030182 150659552 313525187 257062363 403249745 365223902 328014103 964139709 703859972 799300472 633441124 654404143 26643014 305484344 107603438 249122986 217015117 664163581 704765251 376290730 236206585 235372439 651022921 737007091 734786603 298817738 368261435 170223019 628034758 537927254 527114541 576385432 831166056 582500011 315522617 42480205 406547958 4586116 430908369 632987236 621391609 637828370 555838277 385739920 26612544 825034419 34908572 397716808 36818014 689702726 926001096 499022440 449439188 850481168 390137603 925938351 258093122 194377701 287400523 789439013 614844282 441593164 609224008 231404928 765063122 843386917 215978217 816664965 117314529 570927325 560232076 991213982 251073766 566826972 646102611 572297827 424508707 477975850 402179132 927400101 895903476 554218594 717850132 516418757 630342825 347778971 694998146 820709580 650366789 199058366 753896997 339135931 14034883 381152301 479256349 693693197 845294174 885635039 122480778 370695092 383509159 925604265 611351538 136276728 526719808 944278040 974712552 139631624 672640820 274863831 597057242 643859112 981191150 813809653 153468013 742476600 8695170 696756247 170406658 649305529 680817887 56704512 426047324 217868393 246576717 388361538 334782239 273717302 244575449 620899257 301052711 4421820 552193789 567152133 185823875 948374171 349981985 638367055 499216240 761472038 923453242 582686481 272761082 623341657 270704818 869265017 617729655 278622276 584353804 42512193 680787394 497383185 211294470 402614977 412735175 359506846 558279391 34947879 909291578 185797598 174592290 956858670 248661399 274440795 883536344 118539829 303900663 228794748 682685693 400262363 304601899 285470134 953009785 210273146 232772357 9967987 929406922 215017938 460733535 98779817 373046134 612039690 990544397 386167499 568518523 36925846 735278317 186449756 297036238 739192423 727578421 510385085 85579046 563802852 767679579 539890960 829472335 326430692 343685030 694603536 366544280 450692760 10689247 96093149 831586264 701008817 717031670 424162225 163720402 490384450 239009795 108909771 777763957 271339583 560896617 625558607 173937547 908726823 483275631 181204395 704105557 270180859 494890074 432397075 157063800 741921346 409691371 835835000 423887941 292334521 646556654 231235975 912966734 11922696 116891674 327354305 605653604 26353565 644107951 78662748 975917091 792897872 711334831 68061614 471521487 958796026 689178221 537260410 442404954 772898083 901040027 852985793 228301267 328755372 342564480 282732170 702481949 524658218 154555774 512220876 908674044 40422589 879878857 412137022 179374553 915305622 904981801 424889000 798982716 84539369 824323803 766800541 525301932 896701527 352837093 783302244 819160111 273544092 47129711 262254732 493208445 753097511 445913706 747299750 447463290 754536291 905806590 147091934 998873028 784695916 146634609 544884876 598961968 753844909 546638795 971093110 699577325 576816551 980551561 178189553 245584309 668984620 20371280 474623781 842142825 265274659 967551946 14608203 492259280 472737529 270840325 316521446 240978438 38971606 14048418 929643687 399572781 789242775 987400703 345366863 987221460 853748830 329010366 60485851 540461081 362050993 707095480 556717976 815122529 302990623 250133566 69823585 337451417 608885166 770323990 58269788 381750391 652311206 412598860 965870371 440442030 315592603 454397613 968300153 204677140 139919708 730521943 437351511 74623019 33912651 27364538 889351348 219971598 953002254 628457575 312864349 352877252 322447757 704076117 368991503 682336738 769838727 939823671 145553778 57138902 424214634 745743835 519023012 888800177 621687131 388078824 856476061 258009473 299081053 112276515 586722082 876280714 242921994 423842634 423008359 82567983 284627168 391493313 444296400 721565471 39894905 678195535 553344513 943853679 916863817 74943122 593373273 647655008 14332680 967759780 37709711 801122093 724132046 366147287 529098262 944411140 845765152 181809467 911715821 201812462 440459957 697565006 389434483 532740683 391931008 319830467 421007714 352452773 992988239 606296823 115328115 550429933 3739142 203743708 215498443 454402279 145631363 567186854 283597629 827871282 219529484 53189895 31624866 245750371 548003987 81264483 429531111 871832047 91428092 515165526 821029988 141262417 88175401 620737409 19617354 674994059 168784943 669878328 399215181 696365340 780685645 762695215 94915280 434262209 186036620 524547714 228211654 540507530 740210299 404165599 293184481 722824900 448897385 631105440 764894726 446574521 977661695 952974891 633192528 873693527 418519852 484532740 224912885 165810115 454075912 817644632 210442182 892074132 696497462 851363568 584955500 364609496 597966412 889852552 404514994 641618122 37469341 959573143 576173668 397820077 880039722 441569133 318893501 902590647 3435313 501385422 263028967 206046564 657986805 379426412 432118434 37970221 111644829 541897295 430856721 958013808 756214656 793235299 575117708 250961394 550911624 236568431 148632064 581578360 909761706 170903449 620540613 456938973 432186051 5773914 277128021 492553014 777450705 48758919 511791691 160392048 629826736 37701890 339232085 399625089 20104903 877852316 156691150 708808974 509261893 457685237 979787607 468901188 721819210 117327185 710955670 710145818 285834880 862835404 750947481 584689761 160186850 399713958 300488464 87000590 829099500 409846711 151038996 342492377 980920770 977534230 801398928 558244467 201796870 574975891 147151954 512512849 857127485 679095072 748488133 732802196 518801451 603198793 592360625 30996757 618712121 553459059 504504333 758318267 340686813 871604457 564971264 403611535 200256956 576434468 193500496 537310348 923229711 181648564 561047614 762388981 505125841 705070431 723465126 474301186 752287592 472699581 939139518 329048092 16419449 356937344 986964716 409162310 172048183 668895487 285450554 803194718 423637353 993155743 463637985 508238318 730729063 804193345 310633957 263544776 426835262 839183227 847544114 894837741 578134545 8098871 78263599 188685336 437666608 64557476 535323099 165674185 358296900 449904703 290577196 479592904 548661506 601077425 854700566 656810075 713460098 28969329 317821693 947877544 209730309 559639910 113620516 87564456 345666050 824673766 870325834 760148437 350562104 72838394 758908243 483035390 828122009 59216614 764228624 348952776 236213087 311660718 876627774 660922576 748525859 916653587 463654177 925066132 753579179 360301727 448883158 418766448 236143154 678034323 746467743 58225016 877472722 492775569 221114643 232719582 353412528 40932610 916055395 70840638 389299168 875787825 889217236 909817688 167606437 93923908 185671892 376221391 658199890 782133369 921177185 34098256 790025598 397670887 171902187 977943995 266601986 205852324 520289597 384881245 279537550 298595114 231131724 438512239 301879994 264402686 266967688 706445180 477361154 596574222 746679037 233417548 498738080 214175313 90383957 264705789 327388498 875318891 385017663 757662050 374629859 795040568 461804153 723589295 952631936 917696414 381388423 489157754 764369546 763198674 836786116 744822821 572334832 231112901 106914497 433893802 193412451 726197024 586733066 560551041 166481032 72363236 282145709 225404742 324671376 83865020 772486010 983240883 133368361 932267853 751218736 292427650 640484372 778736066 624591150 402933976 221336041 539896303 30630506 825956736 897087792 323874684 585810314 944016228 351507793 335219338 480656258 881148575 71476640 279668628 767857350 851053909 514145912 812215310 498125381 679289084 418879307 465352881 886327845 850854064 762073141 48679456 301036831 858475298 857367033 195728713 715087273 772442635 862421904 298686441 802811256 906794907 841308420 746651530 965487960 907575813 54167603 744325685 252295811 938009928 181106805 715790735 554033166 864896949 737450621 730761757 774165008 122506595 179092495 846834937 160536388 964098490 771183749 662210992 734526425 254414609 923792434 66910963 770843636 290840423 587811467 33494700 286116261 403541350 431768904 569156385 391214476 236756309 331559329 557035757 858860826 960874456 422994669 110164767 376757505 285188461 843076750 52495779 625526307 82523769 442832022 410654543 948744549 481315087 490013626 166227464 709927368 672026475 447500941 76436675 115839214 517897977 504670379 853258508 645135844 161296634 121592435 218283227 129694869 64829060 909483401 627157340 149610140 442496211 50514263 854523679 233524520 471880897 542847861 41933752 14302740 300178118 225251115 669446228 561483257 545214503 520788369 764816516 644873527 513738051 995065328 136170787 420175652 740165907 98317827 2805360 877973571 776102054 93236147 128134835 308037498 399309986 977366511 185972026 412665305 475188669 693173198 946820362 101567168 553908009 639661677 466538416 778013741 300524919 808875933 112750608 323493335 563731843 831766763 145976571 296901378 849711483 497768292 286446529 12077158 802843996 733679309 315773913 758263346 747585297 528066758 235543337 129979526 583485914 458244482 976051645 588499004 375014428 139773558 5373129 664167418 694236366 513820352 274153520 831506076 531061670 375628314 903775290 867591285 220073795 785462810 346070322 893115420 952836825 729296164 453280303 660718706 596907156 244462444 698780098 239049767 259723116 129007484 468269902 310597988 732605131 921645336 116302018 474663522 491509208 177364808 180876511 335064144 192734295 171822948 139428876 954901343 580879881 548347613 113380180 467336932 626651244 188144844 336951944 456941709 284682286 709063050 624054223 866958538 121300466 280271102 58101913 10297313 346177701 893046221 177658608 715567928 429180544 878771540 883814740 79490325 952914090 316285538 141060009 865731649 43896546 288383920 552505652 812744749 638056576 795658533 842546894 39337851 6672558 380169597 495552072 62100510 903852813 604706253 231144215 458640045 384732530 845402398 633799866 306558627 868999501 425264502 944590738 298387340 888100784 854256060 666493615 259965058 667977280 734949442 785358691 406581990 261529200 366124522 536844253 756753924 488942263 363975688 433027064 881242896 466723945 526224564 208777352 706708063 426350836 749635940 64535781 195100246 988610014 162046717 910958640 922891152 533418088 418272998 762201430 185926459 493849768 50554261 92269553 126952647 726113425 135566476 993136189 859320094 180203997 933479005 88357307 924854399 710399921 268405099 608681503 238081902 498401462 967595829 689813418 9555786 986406801 131280308 724245384 12168194 957413576 744364772 996800719 434858553 497231230 402465748 492599296 446551265 992958430 933837549 363845678 767152803 937881967 384096305 163565925 982749564 264210710 437457570 667006970 362870745 326337941 325630853 779776907 948806211 218051739 549170232 709265353 990411912 394689371 105349787 655142229 511419979 550610978 386115778 514509109 920070334 343962248 564103817 215667557 721783156 775874794 802231225 589489778 586685830 385077951 998952773 755124614 201288841 838092422 744408753 899727835 514742600 809881416 250304187 966532188 821928118 936093207 118302411 880758416 481790419 694142323 996966655 604413476 934772059 969697114 785895803 966255869 724893019 577228529 889545580 745837776 15949706 116768608 999787639 456963190 84725289 376735754 307388528 915236598 237195005 785719046 838424485 563116935 748871002 471993341 277467768 85327008 755123637 408167254 73224144 607604970 849027489 978793251 95711098 715726034 324476785 328142810 107892044 78355357 381348001 161160219 163325836 109162830 691473163 401343487 227797832 224349127 253899181 819250860 778177101 910575136 117843936 838604915 514789278 293642287 236233073 961782118 201899785 74817699 817356823 132386862 328062287 259644921 448811940 528416288 787835553 258219287 723157052 695013158 826810475 781515627 779393998 725598788 372063341 83373305 523689416 585476384 113073000 411627261 872240827 17400181 59016652 70314670 336012540 318070228 330308561 16569285 914145040 229848087 108849114 788251839 789360420 237345617 720575358 781046466 899927276 901449347 732321109 294737028 20086565 454712692 674451640 18092567 704481087 639168899 755802992 853961301 660335061 459379108 213386917 243916024 388303487 302869685 23247821 627218696 517878660 576660797 49941524 221135777 989200827 880356731 289033028 24082542 795277069 218769095 662775043 615792372 129583620 903803030 762223937 250624574 678607855 424670302 911889783 538869624 25480174 557599790 918707311 42200087 796544143 246407602 13958642 635022839 297630010 154482931 100858099 60146139 393420598 584669833 296753899 309991643 297480218 811010563 290346984 749803031 140378481 600063604 148098667 265875371 64436706 256452579 185685833 312729258 683108136 226812400 551429939 298990270 895032773 252432580 856032864 121404988 733372631 991601860 504006752 799680812 274392507 601698958 88451020 926641553 658733275 602155214 886687617 795753994 909552301 386184895 618430569 466997033 259543480 230397706 22704102 96692898 706399236 140752056 117508014 965391234 589825716 845957785 679103613 996594790 118465823 911683541 989008740 485906472 156142366 836672410 729819241 779635508 823676003 496154893 100105278 547311178 682421591 929637280 699635839 582531360 484645079 442284159 416498411 460940129 163258407 392985015 657472222 619390567 977414398 479506572 349822703 310477515 71815226 449811863 374422555 408644151 661911748 34396399 787868828 802909074 289796124 639998343 668724087 95005229 576317632 273764259 800639178 814548109 177170781 458731163 562517113 868855845 614870490 653174441 709767543 406495270 560665532 654937045 764981473 637987261 439323829 558552482 494968137 764943490 25330874 49803813 32301909 932183036 803381588 539783510 771576934 16101139 504473806 618511046 937030319 646540033 452598385 547604652 777961048 638891585 642561793 720248850 539410240 382889994 215990441 410152166 277122977 61460441 932704166 232488659 316369084 928751694 594836717 104043367 240799273 413937769 587036439 575011672 389730501 561797756 941556283 493290569 509054569 253286033 595280493 728333696 43954581 153414257 507630527 75635815 234866935 467028733 654292911 311680384 520831865 563279544 422903268 323676457 842722900 499794103 432130745 966122704 49784281 16845833 876650048 282284605 577503847 98408548 95219486 260814807 641940154 46993125 156457753 483890636 35488804 440827140 88916678 427687186 401047747 189723996 231172208 366330654 583894301 2757692 707573293 311597689 36323742 777019077 797664429 144257341 407524573 34442452 855016389 672760561 281243768 547507494 36640157 484205668 270010429 662091315 337107226 845722258 544830689 989616814 511377875 882397848 879454278 160512992 266619040 282847398 478819824 399977380 554416125 296460095 553313495 506255688 383396963 374322156 666336108 425006801 79887969 455458601 65129645 318280667 499488557 453555073 852874359 360442338 327951771 803934121 80276112 979253048 430175591 495949372 268286014 485145572 597681848 549150831 747648115 399487538 80583839 232083088 477704838 815246321 711174920 445827196 420680767 559484628 985477566 7858139 302775751 701500341 399601847 970073943 570047592 687507436 274341284 60597934 689362485 14057732 380725981 225170459 398473854 219381673 201496693 683460124 103804331 167769206 882657759 846525572 564637486 978671195 744553246 905672670 217226873 717640053 99702782 953530788 179956699 339238283 195245159 996899188 787319591 328038349 812618155 464969084 626391963 121694561 413117373 665207629 431705760 372295410 724326314 454223143 573970592 293417633 516941801 999513492 194676121 148963694 32983380 971076105 711497889 211950655 732923884 561985775 970155431 691298822 777457308 527485570 938385605 666321505 902371927 278499709 571008487 114931822 303528227 232950954 67173218 945411013 335307467 98862941 325203045 784125261 188940022 268978571 810195223 939437022 70151400 461532410 903601200 490191960 195945007 95492670 171030522 545358418 127626658 47501396 843252907 766787091 720156557 830349917 540057285 466661780 375579732 153728795 395936237 801177330 460084304 325140325 382455398 326874041 551465299 181746414 900057584 578299495 467257209 192785546 432154821 867128291 605773914 554070870 62478932 140823517 79202915 660611873 31611985 32802616 574154335 162604618 242537640 909135872 247585108 703619863 981481316 817430023 237048772 639042491 308093162 262338650 885750431 811475215 424340756 106419079 521518621 59848226 763429020 898876449 848698219 346423249 18883707 386913190 613160265 997405052 976142052 898675937 129320303 32292392 847806670 891385888 560114645 567531866 469824522 857075835 406862366 633399916 173309825 673210901 503988934 226473543 66971826 24575949 753725928 552978418 799013184 671136732 473420698 955388163 814260677 312630887 339490226 797335671 21825939 974482394 236386845 549099584 936620880 512208135 332398601 552366398 738292223 352982893 902339902 302480919 532964526 597322391 260888512 449325583 614507846 282676305 489526917 983363291 583309489 744317982 818668867 858451512 142730808 457766328 797783026 888769473 470072513 431306880 744012054 146629454 521827654 627390171 897349916 823575606 754442931 785516802 744561339 234202622 82900915 206284026 715583540 239842069 256035002 374179907 420328160 926646101 913106540 838277592 279980601 48399033 828637464 319127848 272717541 329982173 576833978 835055152 377310772 235417128 167962592 866520549 728621747 385323737 406621162 555720941 696405052 343427496 425590584 89167583 672351976 791816667 822278928 30087465 414236049 155955178 541994890 909924204 554583230 828981226 239372624 940479648 292219856 838408081 669656361 470212130 814739649 496960985 226655807 253696643 540989482 915778175 293082148 438912248 863820754 762729061 136212637 888879485 122280132 657599931 146831662 43856371 70058405 365151885 756343431 324551332 463478142 385007747 16593469 393394491 590351845 502733193 19465238 566441698 5657907 642487544 777778096 269159899 979344428 64581044 922978289 279652295 812539919 552157780 543733817 847027572 408757644 913108489 948200842 932228059 47897241 94817436 419861260 505704649 833876999 32560184 328995372 676884894 890258531 520037872 579102069 375958899 369632418 342781653 298435822 759103374 799973356 167777436 952556224 147248568 672966919 572352706 492441797 734502141 657091642 942092909 358807218 762857749 32041909 849849187 16385233 53325416 535032045 231868712 180655793 822892349 114029503 303702026 87777916 248159938 360269354 89929405 272753731 858198501 756939619 462292779 25940714 281662462 217338942 434118575 848197415 278697345 938627556 177707844 735476880 993260970 6662661 774100949 796080462 956543266 487218586 756494417 477235583 517354942 143582039 387592727 853431467 166214192 259429334 147695795 19783612 908728673 875942193 206506216 970719320 372308402 591615027 672180047 204360176 20915306 626531526 879037603 980637427 237491279 606350349 567414065 41999739 28493994 159900061 586269044 36586338 164777406 336135545 646216068 262909849 934088322 739755495 746869847 70378746 909098307 827566560 597248737 829633526 367124681 699403928 517598977 440023110 332637970 194154901 857658686 701214752 967171595 756765134 140555931 566422477 859711007 302231903 443775168 438581190 404954211 815844061 928181023 968980804 805198515 227963357 834717476 667190942 176691991 939012453 729423725 493719647 436215459 571711754 292709849 653199383 242880614 388199728 972153680 715059362 861730364 397382865 775077590 722740517 472826288 710258121 609999792 994069060 583354171 138432201 26776034 441353653 871952398 634138662 175625121 987154634 301895752 199564873 91939179 139234829 938486297 897506956 473229421 387442793 323053026 50379895 472360402 240785625 556174217 856923824 757788112 516020866 700626288 394768947 129567547 130499004 826828641 26180528 116081291 953475211 673359896 447247330 778584062 558498896 443753838 923771152 16762353 374259290 634591607 943546530 528685168 215747627 549075497 450562868 511834409 644708727 622038043 453351081 637621476 327428490 648869496 48028889 246510414 159307725 213563873 137063958 498218112 116832358 287251555 800603522 507400803 80802310 123630898 378797009 871962981 485494916 536311270 386231601 461503965 102696480 441445045 295199270 357719801 240770860 678972557 3892538 523360018 559714466 516535416 962093617 41974203 184834986 394932527 710727406 267184664 938389101 617301312 743998671 33136184 921270312 373500609 13166352 127354980 752745569 388308101 251470220 561903479 319082536 606606627 988395160 839802732 871863967 69436427 875658367 639856572 254552499 497477341 430023893 725975336 942924657 163979454 314214825 117142140 294133141 54102580 354740290 604484965 501373789 237818245 148625439 488607990 845195159 980675621 912844985 147555658 295255073 289277417 396236440 682083108 20197021 511240772 28198619 643744656 70593451 429507931 26703386 399220265 198439338 402500042 332171290 513242204 899636301 680903487 453490926 602546243 247971680 860957142 822211058 979925765 186417044 454203423 711841976 299662102 702182837 492845147 806968867 795005966 572971030 125442181 627160506 224528467 143854382 303345450 755543246 793440599 241414119 517693043 784654480 306992886 407277488 255752820 95601799 191587404 536064218 6987491 704453056 92440652 523412822 458718878 118464345 957110615 849318942 611269783 429647233 656037434 715994031 63922685 397107630 576800685 897362652 709892852 891587427 759797355 666193341 489311680 649975200 714643066 282031077 336244289 995542012 450897865 484099967 737743754 111567531 148618714 698596105 941490535 925749274 318635363 752293041 567835301 684305884 266058348 746832815 38115264 15394901 419242945 485542331 192922759 749397589 778600398 213747013 708506381 311668267 806225723 813419949 869611295 541638440 751147248 733898689 145765738 479599526 992959227 302769313 778833588 601677075 687840756 813907595 558770591 198452154 974176266 345060250 423579517 114775657 725932258 715402266 26911 92634148 76942807 762685667 77323564 382701841 366805452 840715636 899829117 788769542 297334521 13352816 767614891 591567748 15726261 997096023 643310320 247743944 127294329 690675723 176497159 165777937 296425872 731781588 351380346 562151392 73498502 63636581 939549598 323202501 604665171 429765553 891338061 692000405 263676792 814537481 607542065 88347605 120006128 467052785 137959817 165159376 923938359 495377789 915557874 476511230 710767104 536456871 78796271 917718224 320855017 181803801 402499271 203840102 719738610 923765036 372385450 714230987 734670634 625600484 481652095 562177157 472763685 860650408 774760971 987478485 395022197 739212488 647164713 338256791 851394994 134450703 752965126 17180264 884043938 153312258 918950921 388207454 268258584 474187403 171355637 241739514 712670206 306191265 312663027 920385479 823668887 42867236 354974343 63917449 308001687 525344955 756599649 792446691 949954195 260044673 401302352 638401530 235267869 251231251 295634581 680870620 952702783 248762843 306960529 523434412 175398956 204444060 622789074 957850983 905745933 768686017 918139882 110344873 756927893 952174924 331123777 553185096 685582067 890006432 93398302 207624403 147414482 791462530 743077339 445472195 611123751 380193192 3307458 239879701 96546873 698036591 757561801 169530104 678784337 870738791 87415588 781216014 220091169 712828412 577562911 700670381 356110528 342640664 77051035 397587053 852000418 89392710 438575662 338262176 522693723 419269191 526848709 20755174 558281486 100518140 76688095 539564972 672822653 142346960 97901735 203073114 800365710 464939417 832854922 181745431 943664344 228338635 146412256 978293143 930040017 336441831 328210552 562698978 787540905 537341907 486340323 4158191 287948479 759573300 791169460 353984140 450883624 237370906 914183993 306764559 906923651 415540879 762352250 494867241 859953594 671069973 996965746 813266601 158577342 85255042 423792644 686138702 679036623 616452706 553055298 376410417 595637545 939983180 662392855 229242945 795327077 414238967 855829710 398223791 819385341 287826716 959053210 473469995 461532722 535730030 617907183 76834866 448164476 654829544 797728637 29101535 467758339 839869509 118648061 627048788 736296679 693812510 682131647 357374505 455754561 155594155 900959174 347738855 737803659 396174162 12512553 531335343 469051011 236698661 463954837 109140773 626429731 964561174 519726464 689721263 491410634 308784619 330412488 857536070 516504762 843683954 253609762 533986829 825994793 694917066 714026248 672222095 137584360 582934394 832413435 932056540 962633831 316201791 477269906 183176772 200772109 369766523 273281257 421097935 170507379 23479197 317757731 240525877 211385991 759297711 843208384 534506592 388594057 621380879 427955449 87863973 323284784 187371517 706220374 608346063 575028362 810200146 758164075 459716626 883841458 709938330 485309113 271318838 782782038 257487892 995030184 988905771 14023262 764496990 360272707 493258487 22165531 476220897 65648838 648838461 985334238 538671484 251113132 603500910 45728457 324616160 897421966 802023105 555957270 556552112 24380561 815032870 163219714 770744299 893944613 242630531 137277510 659794272 379242159 81013594 624269836 3104559 588657543 280015885 290804541 993220653 708539806 882156103 989090681 320111388 199714557 218904846 389437684 283408185 554655845 35756163 146227782 673364650 226436447 968051248 752579175 730777591 235727760 265002390 611838759 700448340 731464331 313467217 688254567 73678070 256136954 462164997 24445665 243618417 790204160 928132952 226402609 789644930 235278187 908501909 773221776 905596382 904325681 230218095 80893521 219371588 592303940 574410394 121167947 384486604 258507952 350250887 121629931 70381721 751620609 655887680 590105305 924583468 627730910 742105177 971468733 109055183 855788805 450975445 437462999 189862229 694485960 671888363 657101761 387873131 591258373 51394992 186905912 371809955 855336290 31167620 928390619 296418578 916836235 446627084 150552427 193505656 250297710 724727643 118327695 863771665 553215692 344885416 190112487 264094112 195828034 662080578 28486586 678029933 270141006 476345493 138279121 758609731 534323826 690245579 75591062 10141954 475329554 55473969 292885763 813522840 505000297 756669382 939483721 783953385 323675381 449018673 90042761 874097813 115956420 497386878 413392433 909307903 23358257 541866172 287050411 189811566 332846659 541391703 498175302 961573882 29103904 824953824 852699953 159221944 61080845 682769564 681684664 884993267 876594722 23757280 263320521 760670516 627804724 280956375 797686037 707381803 735655852 624002812 265898850 688698505 672743984 148241475 843502115 910658320 136891947 740581602 457488865 509245768 98398835 528789300 449807459 865808565 79782095 853621692 540659333 18492947 640004325 930251475 769260398 463805949 595914009 349195073 854463879 586605990 405048590 671059916 675334742 235437689 691208493 45010105 41677228 323683489 250492483 794690492 990129887 467263380 959363699 369468642 573171015 896058673 871745909 394211933 402417354 602599826 789776487 311863889 985318323 423687613 852879691 889365407 787934742 237619452 119477275 460132193 223494443 584169331 125974885 93446793 562150825 775266358 140545332 759750763 253363682 323254984 696268612 897690304 650542856 315140524 97632822 202532621 409163085 723265414 223341772 158067170 751743720 550060403 544907355 169486570 414395176 470542256 592602625 214766141 776224305 543679000 198185761 594115357 890409319 150293370 656376187 457947829 334970823 325679254 563687369 597447631 577411206 913397549 892776026 451779484 653482931 903201669 580810141 612821676 33460858 544786840 621192718 39366537 717735049 813534691 76940872 841531974 912028608 921231814 663238281 10475607 793999396 632887299 973900841 563197476 536803331 857184282 41706980 819398753 660593046 461653989 854797224 164037749 777363289 707068925 815812249 617270114 183855413 462769324 751337020 291139413 737908138 125205553 551319710 956482373 111638277 831148372 287573787 355914126 746220318 6065699 264000563 979136236 366220233 538856128 980548553 10583320 456228531 829709358 483828688 596638844 855379850 16404291 350731891 51728503 439677758 55034882 395863845 233243205 985573874 881048816 635331361 417263381 118829060 300598943 88144165 541705218 310202683 964850847 286296467 483316800 389366652 27690569 924011664 476164225 783677330 934544313 864089661 87095193 437663936 207733549 432003672 541143722 323343143 868658995 10300355 289426664 550079505 151795339 201441036 349678822 596644260 215238620 604139913 568443027 824630993 896575760 132799248 606523336 422116393 308071880 582976161 187873472 348876328 445207672 532008087 993188483 373420224 923911845 531197871 89301045 766789752 73010691 892219959 537856961 233557955 98156558 637774233 266612251 241235106 109253609 484814695 54271280 688901732 316611518 562351099 10815856 310524640 479796287 397359757 65832920 421192708 316106688 762338921 995795436 611104844 223404345 867053367 830155640 593837255 490188236 547843727 37662466 481185387 267966847 812718108 12729744 548588847 13996751 913748376 637470214 758287044 675143795 775516124 158320048 143628108 240474421 131054844 274351489 358367606 185396029 421280371 236151890 589491137 132138591 387729956 217161194 281431610 460633539 708697997 300020072 757939881 455849025 903606491 90956998 50189254 397789884 959496753 773975714 47402069 408380070 845207637 543763263 393657501 763686692 876602485 914122393 923474028 574144423 951694037 978867586 202775518 666329297 499050871 718624097 937097732 788989198 307839963 431512336 145660360 762982058 168352427 249493907 400407268 122215123 133198063 463141654 672065651 296989776 222082384 245758587 894992344 822269636 774227228 784774855 358999633 448204607 139698918 575535967 421377953 572399503 5675553 362820311 985428813 322056553 738353998 75237988 649531871 411717354 187189863 780628865 295811960 628626996 503866079 722712260 773352735 378398149 475264991 540690575 472518449 552295131 322576990 37080949 383412453 192020370 129970656 172471212 657295649 173771427 374611729 671002032 269349929 233507295 856143219 65825809 555351943 608752562 571064116 512580191 321310429 613468686 217867296 314866843 539980973 73466608 749890754 702182985 164435235 592339770 71831863 691069416 67392155 224750375 696391392 523326882 230456853 764433213 202632596 644497106 469873167 457872822 279451051 874151117 227631125 854033726 601659565 595802383 308398855 197789486 569546524 213376631 351962448 966489440 293718661 633074933 188012803 758350997 187853711 160627778 448116614 798982970 4651806 433486716 248425495 572028427 700013615 727131043 639037417 392692185 368803472 916642614 708140034 509330797 29447182 557442278 370446128 131052643 455671430 963669304 675747704 73440476 380965794 180938183 63429847 525299869 671652830 482272373 101562070 986522992 657730701 394896464 67538617 728091553 687832770 203193197 651013919 484398349 236430212 980856265 993696613 229796477 1329089 691889639 347272783 59541087 190298505 495143881 425434933 701298995 509728581 244974740 12327808 302911744 506226453 286243090 45452987 577493733 625106942 827310330 756665060 549092548 16069575 616901939 469796513 188266029 492915463 990148612 618992355 291328663 131376379 200173927 564954710 123923858 470452328 770562241 69942782 897512882 271942109 482639768 860217920 701334772 594255326 221280529 257461694 530553215 354267175 754254113 986300806 777834090 535785602 923078537 132269320 499173328 438901961 417106560 345371596 580182112 720655795 201054141 41293742 933249967 468587808 359131342 148750633 86697157 898422103 479525953 210756624 997365339 703235695 66603532 118350542 434443378 901253683 645206431 256253389 385827024 181947313 576760683 699558608 11889466 748087395 68377377 592944064 589452543 187833016 37593150 546821330 939887998 135237477 646869928 692021589 382160295 245135955 419755276 659993879 26445546 519426799 67431303 93909389 451174173 371687621 626099458 795847333 341596113 50071509 525246655 488916469 305302064 798198821 603313051 562240279 199392173 52636738 109101031 152365775 660749961 239358062 351360264 739966278 447347070 531088144 943944398 650696839 914611672 594414893 918222801 401006616 571753349 641095181 101663053 768921282 8654756 162701762 475037519 670105414 524069340 654872851 185921424 793024683 640974558 594152001 352740497 290563960 918872105 95326003 605343650 738105100 762414445 413338624 393672216 235903290 705857516 622683582 884516250 903211990 149066082 447185089 243601310 474017404 943498695 4331042 369148317 138050528 813388460 415167962 75783532 682095429 413208887 298861379 406327859 857071226 325302761 206422531 117903195 906843210 301352940 708364262 771269380 259397253 164422656 332392467 484072975 508341760 416903727 296964998 416313687 68556746 793601805 364037440 898351770 510847396 995876519 687394896 939991771 694287392 128920052 522508270 350999253 76435549 611926699 372640475 724627199 102700413 450862522 787770446 772017215 714905678 813432677 611624685 577223440 831688993 755154855 645988172 401319061 930381677 688045965 242193794 637873988 364235625 120314852 780269487 995279671 100273358 661510362 610020534 185695573 794019475 7376804 939026654 111103474 44509701 420736104 824146851 566845450 264502932 765842935 387376646 584111007 732622112 314440674 784660629 740462216 62986189 306962304 947915017 801397362 203990951 106894963 585369702 473031637 113502331 984570973 458855452 663188022 920019441 363202659 912145155 835524760 716072138 490970335 98841885 334477740 438221542 41224352 529104379 449482379 412252005 794237244 290283301 777543344 237965021 466344993 686505750 874540774 43535348 974065722 504212735 533705157 980812479 136579358 219510898 605764321 353310394 184891288 785494219 313393051 228304923 786802170 719010093 28222371 716745035 900776612 645010898 315230743 380541640 383539363 137291960 864520940 638219930 870779750 829436621 618092429 48305987 841451981 836541165 242260594 836223153 286780916 991080504 122256986 925653112 138490972 998103065 181842107 448389581 990976716 66571988 288583512 223585591 356641557 476008917 222081214 451250941 850732184 577657142 463096238 413111757 829384939 929809040 509615907 812324165 712808873 761512223 780600606 594536245 211498367 989744357 320353029 189983559 603720506 705341322 95048037 882368314 465975403 902464402 343187123 340241962 994550274 697876715 26382787 930971919 660779928 375000114 803413039 39841620 943572555 171687914 366727486 114158183 86717276 244001984 860820588 274783748 427983618 310292369 701002199 729874451 728873660 540011005 84552252 707269173 366151756 413945875 770723822 986029718 150427892 902348274 209638751 844550160 346235844 525356583 885762494 302406143 442984689 637777190 106448725 856658991 335865170 661045501 314892189 494543605 65625283 643787778 230785187 984432771 758198366 228265564 665095058 608680803 98984729 145741037 143047324 320868555 525110762 82353781 334849109 512290505 491898597 93189369 305286994 507041581 923870960 195744287 190138042 657314710 715562061 594641573 252656660 635585680 69655755 75105485 167701877 169457259 693068034 696974335 561470494 214443399 205799723 449079414 937447471 48973358 574958053 963013401 214470443 429567730 31197725 445847644 208757451 738034253 883489400 145738407 175043599 972671153 308073980 167280135 873526967 956056167 15058510 424926061 737501251 652486372 851849423 888692357 997781588 604251636 217237931 725813789 691696516 528890600 943211729 534152803 203970016 994336075 190223621 405898923 302186486 299409193 600544563 891423654 995307955 101698042 584907243 2786201 864808052 758207355 207058897 553258661 327496956 241722101 774139729 642010477 757972145 771478172 858408270 892702878 758964652 124039042 296563211 662853935 26639789 41983849 565310510 459061619 733483401 243299814 112503559 515547326 114309705 68233136 457988303 406327744 4530674 205038097 962628687 842878966 568898363 234296333 476206670 780396966 127734887 36474002 279103472 726737016 584160249 785112321 134862270 400293950 629175848 761588133 136023022 919714077 58074074 735238046 197841607 213787106 419535653 512317095 261790422 551941778 110893984 760016467 743804355 853059097 698979866 959202630 103816828 396291377 722120707 127535823 617310073 482467426 445796936 457801253 946308342 814502780 645791466 956979735 367688678 842317604 351129199 766239167 538076172 52819872 519591169 472606010 966791419 677613777 195362224 296908009 84406908 442086221 236573261 864937052 722384942 541051610 799498053 709930370 362172573 327800158 199142225 106535687 605678466 996331571 382864902 950945306 370846919 94689513 20262009 247727420 867641095 880848658 399302656 669045346 494948121 359790829 540349654 493835016 21082513 894655126 346144706 169179450 19992715 672375730 197925612 850316389 420131523 663285952 278812390 89149278 413768004 552833949 392352910 554015714 477121696 226531210 291452480 638610522 109263606 611476085 75041081 591899467 964572928 235831146 485933607 854680345 988845874 341493014 669278207 213201987 437771571 11133293 256797015 987205766 601858537 803225577 797219737 971348816 11866669 560293013 527412450 380178831 515814194 119512468 923802082 888560905 328559648 981454711 657642602 521364000 815351177 180504282 724631448 514534726 746689874 321069461 984252221 487857107 113374159 97347635 909461920 599208263 650162383 920855195 320930342 660077358 673952807 455360449 508638519 988919764 325419612 26841654 211104905 46217742 831751615 112094684 961466682 480438300 301279269 625657437 648766796 61969455 13705264 498386102 954488360 150133704 765074866 49377414 997479799 922922170 648357174 69421041 595873024 471665883 420953777 229142799 602051819 824826023 222184985 963562268 546460125 412705993 609798611 843717041 645492867 762643734 386414481 233255036 500983302 796092410 986760296 532899323 952248106 349349371 279832610 569950319 74015570 51806562 148839616 264539377 935076228 463079953 931553253 266388696 923053084 28116822 898496746 151851937 887816083 198321308 440608843 106724385 847790121 710066950 46173613 846858474 610438206 314121925 577391671 934359270 742211291 315978203 344244471 865014780 950280019 263585704 701583859 433308713 260423826 390634167 277502190 436910043 835043277 598827294 167888867 970428895 735799944 369425536 320875792 236633001 222545046 131445258 458438326 164496728 339444175 201394372 387802602 23314494 300381367 912239280 846681963 37517894 30881428 511053620 470530473 900519796 224629545 151662745 641876624 889742230 53344341 491240191 974363322 901096758 57166465 79165814 889606163 318740944 697085166 799530065 643959389 869412228 638308184 298802172 447622066 353519737 904212054 403904266 194285911 837212546 904923281 291756627 324531083 150055072 458059844 108575020 574557101 983009114 295121438 999233090 481428743 3850831 28858607 830818607 877766668 725576097 680528028 237398946 961442228 75043569 676169506 410670991 254019994 398414234 281327377 443960810 690101376 838541343 134391446 998978445 333396205 5127217 10705235 413319769 248549724 824874463 898238320 824788297 545949215 739650737 412101920 591771987 101965217 457381381 87272078 668528759 439853569 690646719 520019611 121540813 523911954 720499875 168000604 32790041 176709758 212663679 622218693 165325033 611678138 94965612 244068198 509545290 594091437 161078129 205404305 752029458 348730349 154307861 541192725 5916036 933909714 499531507 443191215 126397257 59077071 314768839 792575077 789644294 261585509 876574462 32878065 7818212 672485857 220348347 458745353 903059268 135987733 720010459 359753993 985630791 67034797 461252048 335972828 693080879 515829069 70306637 346075948 780762091 177180914 807265734 245053554 384506506 929128480 506278324 981104583 641594973 937816074 833538694 759873119 3349724 244162978 348200126 693004564 652262976 948172630 628965083 63804690 362382815 719647347 733650655 659926328 200405458 524197229 823816029 560552745 857696153 8106499 711744141 847304688 118515850 399922079 649300118 576125263 532258011 980032962 845874178 680824092 85166541 965625207 843967773 480779618 948079019 126420598 521186837 900232496 827272660 544437661 303036209 575015101 197595493 205496718 763003163 418362718 348462469 272735219 801536979 83218430 456348270 344539765 346822204 744960789 208425890 1943062 941013862 228271725 832017637 415003169 65889817 210529146 813834796 364677042 70405961 81439605 259749842 676727011 954485872 380908381 470244643 150445976 813828765 41998813 60594000 238373499 651070818 175369800 165510507 643420323 246158360 178450930 907764921 826500881 47247238 348901521 364792316 852322047 62842403 469994010 104654903 847199830 424469326 72172009 709467136 214510449 437681121 327696403 730915989 265742822 33404461 971180604 254182412 113781313 735978665 476891459 629998808 526138735 98631208 563089635 853579423 836650987 57516630 59168928 400077709 114049297 104523145 831790249 758181960 685543300 735389349 802994472 546077610 563936357 282681760 500640405 412695201 877031969 833149304 912447693 845989663 93583455 170814114 445799559 842567872 719190014 608510585 44204214 608095472 14826173 67230450 709487463 950554438 459834162 844330889 232817216 691069438 89914450 601469298 872702459 484420123 51894168 599054678 817119508 756286557 431992156 640629604 62946976 958857906 72121396 362731657 355534819 721867462 908358365 294422665 368844363 320408662 774339608 60580489 472084435 714212640 779278104 545500811 969891518 783141045 73847375 528345313 506841526 888858069 689697530 124705516 10268282 881989018 611666038 273881419 445708119 336075650 504987698 87861355 575389494 929541803 182483618 246061778 286481081 608639457 5905503 987207232 17304526 547487063 462468013 119547088 496101984 710049197 351962397 122692913 546783587 64632975 316847749 974204534 594491786 415795188 983968400 935726654 984555087 439668349 920758764 956124475 434202285 267646111 896933831 816472950 788689228 660526025 409226534 747142987 98377534 6462704 164070115 837286904 683593360 303545934 133699399 222998226 684404580 79320197 596234597 194960056 664281929 558789903 747397504 537045392 561401540 674819260 954695890 62300839 545288634 767720026 851180614 374054497 264666337 18455248 6762918 663958980 214245958 769249680 305441744 204590139 744417721 378613984 836275065 898135732 482865013 512485969 12545454 323747052 268224937 670950269 63726374 714549664 158640496 291469196 493916182 865508856 860673028 293194609 869618427 410271655 840097349 593269889 151139963 315125993 487564820 818991316 88774398 180265670 231366291 873754621 270407122 145034724 314981562 24445195 400321560 262559523 755368664 798325689 994557110 377711036 197074551 125279930 9042712 875682289 132938836 343749632 832374189 875659542 408541353 179029008 843813749 35220535 291361057 801570751 889933740 385006045 83294133 951278693 600517826 49361667 698102630 500388261 165578044 757544975 929051181 369566602 809841112 718958298 611421403 25093734 63336058 202164790 343499553 882154013 880243783 847545857 327239876 730581392 909270675 335264335 489863457 315927624 214407233 689209780 654152688 920697384 301539891 728356311 437191087 871893028 858526535 515683395 400496535 370187656 606325359 389619120 897969831 37508548 23441297 764788996 26332215 217706085 678354998 827485128 228322946 62780614 640221222 233388566 63748926 185860489 107074757 773438489 930497907 921249727 758089222 398926200 357309805 761423144 461977119 73759676 769924622 610608807 368857457 487941779 764232375 745266605 486963133 38594839 931619561 759920711 129532490 322483974 440924915 390694559 765597182 672402045 623692542 874941496 169411763 681788216 854585778 791722743 200508313 416615368 941661182 313716636 187315478 790571247 406485687 517392540 373968460 216933033 473760771 30657903 738645978 471258606 208745945 53726310 703864057 35295938 899755545 100165287 398775701 329764900 871307131 797857214 983383311 185710694 461832797 887114447 153966930 632689690 956451861 266807126 269806901 371886516 733408413 762528361 704583931 653432515 752246787 499760555 746958783 26367579 780182211 362931942 34240194 223959018 677008054 725148048 505004201 302525230 266199508 686809277 396016165 26215504 365247483 963078651 412320466 168796875 954395044 322389956 65700864 331511270 204188328 691967138 597522710 356875374 501438244 478617689 546336093 738349004 209391173 943380316 110616071 508951257 124007588 236139692 271455907 927467786 351018945 926536388 371688527 251953540 662655222 859126440 963773671 540143159 248077848 948445577 533723461 342827919 453760977 326927820 775002195 856017326 501475374 316618344 221987593 278077436 785179572 623339870 734668542 451068331 570688138 891537083 872933583 743444893 297454218 215695337 171924071 105026366 362156409 104094083 248009324 460238374 318590141 266108950 187995494 317001434 682077372 961445582 454435979 544915425 624180062 708420576 53379183 278518141 487304912 779056400 44921451 263929585 127512578 190362268 804523503 501723757 238940275 429025343 780777628 727485008 175542443 612821831 770743571 340592320 986478717 346680115 587164902 910447051 19577776 193662829 579877979 588285746 880576342 374590432 219565675 169290950 562793242 98481106 956636811 508401859 564283901 470621479 868476578 227890182 760030000 457357303 207477669 360957187 909963345 44241657 995847468 356545696 59713639 412414367 914464483 462998882 110220915 850326706 693396188 702786061 636127810 146672569 911240223 525645896 386971895 251143365 417086019 45778736 809728635 610704514 409818706 639332585 684373031 143699974 904636835 583146499 786707773 850927449 92053572 879121987 743979396 126780591 504521327 904067682 821313172 747734783 149831813 21095335 674793563 777285005 277102213 282594560 558385965 781615313 185282838 518107116 329708168 587615973 950607168 540102759 432081490 820223345 14410645 770859495 347483503 770352358 645589680 501245800 37587084 832045065 922758245 941744131 315060258 370626034 425104483 589432491 127304166 935784013 826291280 761143347 315814800 126752290 749441404 201724558 920575714 420468222 96450669 617715526 855611567 883179277 664082480 553175702 456134968 365801678 258521751 216776723 193994671 184078901 710073756 31267697 891545643 207085395 100770743 983083016 727762780 532647914 333840594 880617611 890576909 614680140 303382618 692114172 300785892 605009226 353198163 440546704 790997269 257983883 687393219 57691044 854916656 848794657 635216039 934416412 878138712 150792492 165222860 997841235 199056862 969947763 650182229 542984946 717641166 387921823 905742408 778126536 637086899 661034232 17939907 603427445 920387375 112474725 250448042 747062913 886126027 545884427 525366839 945794386 640151380 460865930 324182737 39943513 866353446 730228546 101761402 115492371 317951278 26833309 681072535 849912736 850386321 813153513 986752372 950368863 248019237 263502523 985153669 477362235 563324865 207586897 438864497 121579552 842939383 936134970 832369439 999160807 264618418 226555373 278515477 5069278 566819907 96625842 57714471 848549579 8559823 162651231 946366439 135474101 469672465 428941154 700771559 290474128 425852375 428296149 876771399 337876477 31725021 385494560 261702634 944401586 599305234 985120580 25942231 759482151 727117917 719908221 876131090 544592625 441647339 735997892 891926118 568891830 172492710 840594328 501693897 469828587 119652934 483199044 299372815 432199095 681513582 967977541 832369191 881008899 780405698 617503701 95304613 708519381 938504013 985605010 507329993 236218777 362098289 455579612 257438127 163604684 197065126 64263623 341207655 694936126 948088931 172508746 315138625 963546931 400773173 421092975 902493685 482766010 794588749 507857453 36886301 189257407 887730400 912884537 708463758 73337293 80826643 851076411 637482891 526275548 856252208 447418086 866311348 564600411 175795492 976499816 192248079 255874672 207590638 747078630 543239822 844439741 542019643 873178861 961057486 330742224 5787600 63514083 636547671 57800404 614086650 971079395 464292497 799954166 300496529 80173085 812343880 263853458 870802155 242688121 923761678 710828134 200145640 883394224 126184828 941681472 144266343 828732488 476300870 52229799 216644208 123510345 831168854 676946569 807380517 430099283 404747752 335328791 362610103 480564174 479850061 19687706 827723543 327790327 835225696 791538507 533944704 245495779 123448762 713730344 340358011 915681252 967554676 301235848 636036097 438245444 744467938 975318817 553031937 382963556 688515404 385656734 18950361 537473175 405117372 915724184 877288503 441801256 969939983 540156537 164638558 91705790 384253350 469427865 614360808 258491532 436906070 109818938 742211627 377929564 433545712 559961317 712160853 70752980 503538373 669037441 877405143 32434999 166829526 998737185 383213550 771771608 16142893 367529020 859107266 270997801 942175109 138704840 42642341 926991551 833303887 662968870 760433769 86063209 621632930 576764547 498834606 638056314 763261469 766267546 966973820 610066196 469718337 613172686 358335069 391864836 621915033 58127989 368122431 705341078 910973834 329681306 2043262 529893241 436779633 962066324 161829786 603337590 526501952 191142324 707956976 52275666 900685966 842668557 935757415 88595004 255666815 852581377 300387682 145635671 988473262 448079678 872545852 220039121 463483769 816809618 601371184 95907809 826467085 900692078 428902728 264167966 775402719 405666591 162042710 243405304 202320222 131635020 800378697 342248177 254053548 251710889 83696932 65261675 116390691 439359048 183183143 238608498 833779128 744542687 4111526 405438715 334865321 391836652 34169947 818088139 876648836 842716323 378641964 855715382 697320629 889265894 124342958 215558022 881673450 283084647 378656485 71456678 551217699 775458405 947474674 654736949 247298455 718967988 703836113 209192873 466643327 637852534 687667062 968937149 432238613 449275865 748397527 147406845 501834459 990443905 136622341 257373041 449003164 784273417 530811198 548692538 731238079 461132238 320698872 757424279 855831226 246964555 481721919 580765244 575621880 269784778 867248171 986233664 10630846 438406713 682677749 745350991 448615380 325258743 308661207 610459762 137784744 549689456 969669565 747436317 903835086 932045873 958599246 945001566 722840807 468632582 70327851 861558229 243170379 766013864 313692194 366446704 849572996 901644694 62100412 717076779 970918623 553406794 665075036 273408997 336837702 377320386 347136679 857903380 401116986 850061184 873031335 30466323 615972812 809995854 58252356 868305142 776147762 210155507 400658398 225291510 622708438 608239433 297358178 649160760 491183782 688379017 218096474 887218065 656402875 196338712 179580503 436164900 462452569 309201445 971481418 860892943 960495807 347357683 367668322 737060027 647958227 798052242 867301022 861567951 503765498 354796165 350095742 437547094 574066743 545990346 858482315 750391802 834556593 609409941 570458193 121557927 329454101 927623077 117995543 941728952 551737489 739295955 487480685 384660909 264739467 856714951 783230389 897171064 111968339 945513760 497644507 131092926 914847807 707759101 281929429 661694699 279448429 96717270 179114389 375524872 142132370 797744610 303623144 39763020 666934153 425818735 348994652 835613896 419980917 729737438 987924543 85348156 675494804 611016244 449350536 86141207 928877833 531292534 39495918 960322021 182052695 629818696 713038418 714396910 411079140 823081137 39899371 264876270 140509587 278986598 760937108 8810875 594344591 903516416 473328554 719532952 94283170 480966923 122957109 639156589 295428129 993731110 561519418 92194366 771432418 481045799 985742961 674164920 150068258 91530014 833994412 907357730 452219422 656885217 808972785 658488499 907275533 377533898 63578640 646256265 618205466 375399099 751924580 57147036 495528389 460834186 914716445 557498998 599603506 433001620 104531119 344164672 135354095 865384229 118842830 227159582 414713845 745153757 793182943 709028132 529750125 262681289 747857238 399307539 642640826 567225432 897538006 290516378 993060736 498356781 72287174 860626271 657804656 557377668 572742705 650202322 603341409 421138676 925650362 260566804 123632416 139776374 715923837 826234799 71645909 750881349 51952361 10887910 82662493 965892671 123754975 878438566 794918444 196808697 962505422 587122519 651115679 301248265 983513968 735870186 382598869 500137361 122575898 487523157 566992895 20291037 682013574 522597833 973037570 8119584 94102826 251666689 437035659 960774288 258194255 99046468 103267019 504678882 930864033 514703439 119329328 79971298 257532191 920408866 953694290 802751064 558754219 718874043 878526778 726331549 589844617 773158168 386626180 604921106 707877490 665710845 248273975 317893189 895768309 762819202 234599280 463175776 484683853 556824948 408109791 501025024 982043999 377983045 626027773 77737361 394824343 383321122 706017803 550151048 756255563 25835014 185696988 22560064 585297364 971322789 342578205 3759455 879229911 745504108 395115402 870180272 859691894 246758060 635760849 467172556 363215665 229958841 858631727 287996300 290536142 639132994 145429732 176544227 365024000 361804872 486315424 755856253 488960230 103918894 208025992 812736865 707413210 430818839 963952815 885321251 566466244 130940062 981711359 636488515 410849881 71905505 215790089 407775311 43451512 52727951 216669851 983063333 86042346 738128082 693407363 943481526 267125294 531424225 997990298 778588826 821469470 968120261 833471315 146311599 220990477 934793296 385469689 271371322 544683135 263472426 606363223 168030659 235987210 906624209 54466639 77405412 672121743 631768222 307306165 833423046 853611402 75498439 718908037 891682478 257420989 462138234 763993586 250726018 383345601 699547886 510881468 641954847 255449194 831183049 794693840 805226337 994676087 466124627 391567558 388869699 771193109 923840881 256371233 40653931 738156674 411858733 58672833 346629006 435417752 470928706 655480663 325199476 549450723 657824593 254231791 708575251 815157360 325042659 110452309 298795265 585705471 797079806 449429617 964260077 614904322 324876618 52342329 742635303 64823008 280869783 273833493 948934769 638137333 224097962 274754982 952380144 955778837 962449811 703032357 787776896 581479425 915546226 998270789 285765355 195417348 470211336 709634580 670536019 368940070 656669078 96590192 457682503 138531962 110476650 185535227 346936978 145682491 252208563 505509158 181727663 600892642 975632042 441509987 950003208 809133438 908953826 885393759 157308063 104099140 822076094 557511901 183145579 956669239 886397770 531139562 268472545 211976352 239994858 876279195 486515587 5862252 44510834 235538360 156702334 458587531 754547699 985894522 60444606 238499744 426310593 609659889 759940069 197345480 462887329 436095508 973803317 669451292 169945618 468153635 290946916 766285020 819736559 624381630 910789893 743198474 828433492 945860540 855514232 435727551 869128699 82354100 772540006 560964692 369622643 172026201 267771191 328247663 777374230 902976914 297018795 670464469 410826645 132478407 186385589 352348207 166086488 601706590 606130339 571803197 71687213 450871586 317952086 55519284 106470520 888902086 384137265 161238269 403972570 692796738 834460171 362704535 22989594 239055477 566817907 226626186 883189881 348214637 184487920 630746421 136308812 332157276 744872984 419889597 578083013 300778322 443427473 350607356 266391844 697102895 92671495 720327245 585882458 251021370 116822889 529620118 655768788 823259565 163766463 478691877 646696421 646634816 101011220 675974453 376172992 508097968 841470150 508533136 59656420 274162402 199071627 165158838 472050784 100584265 21936588 569483704 860164696 478149838 607867402 852774340 931226616 560591191 883065169 703496766 735272166 627516978 423288312 223128322 29277482 974505889 939273027 573040504 129829818 6847093 837755894 438115150 332865535 315691671 639970261 504009327 554783290 419600011 388376722 467379899 812699236 988397677 339777373 177845290 208877538 999016782 162576236 918090591 189109386 371993424 300362488 68556197 887257395 502237790 479730485 975381217 663906563 371804187 89706557 677411888 253060110 371559533 731820940 320784282 740566534 153042096 915835506 355331043 869485101 618542226 500329096 489875007 975402979 519413024 769863705 463881726 512555960 456191563 616702742 416587604 137497467 43693542 468723322 405192031 670998617 94438949 795038822 813591203 518001094 838839691 781925696 206598560 189614034 888280804 809152635 116366432 331654957 986784312 277035275 623330387 936436599 610108304 555353434 697455113 257456616 908257347 404909890 288722451 841503221 672219399 972373153 802082566 876974711 632477360 828985761 365148338 572358969 207056215 736284270 202780599 714251302 996520981 825755542 149415431 143867144 859605653 420146099 32313342 820244590 872052053 417737852 506306685 612365723 44986518 739281781 496582028 901746035 850978280 462528074 600419753 822478674 344619561 948007928 730310282 12851090 302751978 233636896 206520520 460428732 833235605 427649691 488588617 367714636 321325663 905718752 991118722 332394984 43336175 746614184 875865926 800138386 433397441 545805970 430339376 372467325 287219579 413703352 594820414 758552683 338782248 144366316 970650152 674872319 293525724 164375956 970683476 859182729 540711677 439679725 249000300 668271508 435489906 691530326 40570457 369115333 129644952 182552162 201947218 51871878 489655746 496339852 925669270 180934196 445694683 475760631 739557403 813101032 555038580 796919569 401556165 955259925 578685763 690102286 454235084 347213970 30738710 750850266 121208989 388966820 750543678 951412490 777734506 442441277 810463076 666524868 41938612 413071398 121307666 25382083 464163257 162972887 910841751 212556608 194358754 119710099 645980743 719818249 743510339 39998555 282703518 594257076 148515062 862663366 154997389 836579422 759348952 411814823 845414322 713839676 631710884 995373129 487499535 284758041 93781883 176357828 671592316 77108366 830580726 182614752 6739623 641382844 391005181 464136504 606539376 68054044 856837552 300843961 58424067 208456226 595060843 396904355 375063517 406076917 154319988 352142416 858894396 703788954 691136696 777674352 440890556 465148928 876390890 950342374 437028064 688477739 42876031 110584041 752499416 145481676 127674376 725276981 165786835 473442506 634357500 480947404 529223794 905963140 179377548 100590090 261951101 797965706 714245912 33086035 13130433 54544911 727601193 92114844 2448413 823633359 650733498 931183297 126962273 727611794 861292937 119830165 47054076 655201971 898475349 386179213 872287392 787524202 242910954 976923148 920201015 709909768 24968729 56900991 889276892 16705103 883920589 543545978 769927335 693611092 564757818 936089068 250660077 196819051 235260684 110897794 930437257 224458353 84252497 98507420 21968053 368714563 53050994 672144112 295957143 898734713 472109252 560193195 863055362 571367372 304980652 547574981 32832346 688405545 290078588 603588305 363849692 587053405 902659586 268493737 630761831 766133096 346131176 304441527 878396465 992367967 561764595 988112243 562858285 506710607 878696862 685170622 964695863 415662889 911975118 657615721 631305227 386180766 313163302 590373181 431457791 501024186 306161008 634441977 561514270 271239168 987383075 116534834 42654255 790794127 16556105 268817299 676310738 266958207 794489035 899960719 30661265 498290436 332469369 558617199 595042755 722192468 309744846 840402475 758919026 704559294 212867744 75228174 391676609 522005098 16523431 542162510 42802147 717201142 192093592 984557662 374150908 357674868 97436072 989267065 529546031 386111473 872927980 14433879 853104856 417522995 227896728 883693263 711960878 348326598 578345409 468129124 187988505 947580348 65950735 72998451 920712944 244388377 272533594 354698128 618380976 620033411 857717134 610735319 221421850 476026710 654888210 451641902 581144688 315410383 448332071 375675738 265167787 943671248 604293392 425879381 281321307 766972624 321167808 923652447 937897730 390986695 640366915 47141500 821758871 568816037 687233095 343894118 683046638 719743254 365891204 363821189 323455605 83249255 274348525 716134591 968072211 841695048 713551507 600242467 759814864 497879969 403405727 836074713 903518250 345287871 172073689 987478357 678673950 610400313 852258155 657968961 627139560 497875306 522876635 935950950 6805521 217422186 868751673 517885273 698737200 390142984 807718860 837815719 789057580 62561979 833321717 533911970 248844188 237217459 559116133 957856861 243901865 790360546 72012444 671495686 969274906 590348439 404291755 216825884 475564556 118275145 938337804 202753068 546339507 285008339 877987601 846292260 389138637 612426416 209969967 837291352 694704687 240717137 674577314 872050911 96998197 745801326 596583298 375466605 242961710 249541225 292422041 44977089 630810193 127539657 270153856 971585065 997122332 107353111 71866368 142899683 718853689 722174558 147886672 133384315 986327287 388628842 650692172 101928999 519853305 736382860 360690120 253358751 622411871 661671949 709031514 412509667 504902076 702387245 51576642 373647059 916139388 816487218 538121646 168358966 232924187 666916766 543720350 415531497 272260596 264728070 943394233 453341142 538038051 108490150 505953624 603344096 189166914 523861069 28507337 998399666 747092978 75749015 469075579 669438002 944334093 278599529 878840233 281068258 458887180 883103992 530121256 697037399 451970678 355415230 905092643 467845534 938447922 912156420 201025659 753756609 887459295 340880871 818038966 201958786 672883024 537843379 438106655 979883259 96211313 538058481 480127076 418747953 385289109 798764797 145751512 843558868 380407758 496162774 933780976 661756441 576954819 345406691 309698108 69892386 724898190 300271686 523700671 884256492 274414751 329677656 890823447 915358947 798175366 325832312 492695401 219230078 124113447 387455417 526469751 156315214 355511974 675768099 670894323 770980705 882182254 346453475 952513863 645639217 447504719 409456340 881852174 418969343 488178851 661698555 391504320 744422949 924045108 915772472 510851185 544020863 477664868 115403651 479607897 578992517 59762486 797656075 427066223 436939617 18224822 626864973 579665219 357120034 23259035 145146715 537655589 831600538 18240485 299212049 444910232 731963982 216152298 208545172 800360938 616562093 862710812 288694622 182433352 709636641 676435756 439812691 633412038 112692529 591795704 616057431 455433553 150959235 102628415 510974300 800763489 700101322 307692199 954078240 41364219 667503722 747327282 284874738 209990672 923932402 361601667 112726555 479087654 272912652 876223495 488663424 241077569 824038496 501278528 383334348 179243984 60173281 1960708 884403196 329212862 293022914 544957571 338539847 513744274 564742557 174295459 820448173 283168618 431116730 530352602 511407245 504874013 78587412 196392447 641507804 883446961 661745738 885738371 456132225 406804875 740732901 758951113 731631621 829673734 256745658 773293072 427861125 300534596 712350622 114669442 595080249 417203633 248757685 248789992 732459432 889368130 625202953 678322625 726858477 342001233 493518931 746939942 678407943 450592753 187430769 488194295 409135578 69893623 754320742 433676533 534985839 641335564 926913546 303003874 845885973 899874722 418087781 168459049 532367590 710417641 586472762 472366689 229830142 60851469 879841188 803391730 642557905 447567773 743401954 86774258 684258258 572800793 797893375 836850395 988246854 985206481 68281209 754035276 999458435 670114186 849840060 78249836 896230625 564979330 745075028 781819363 720683679 239418850 762434862 380957622 9822119 136297965 241054812 17020149 842081857 722737934 704364113 15212079 682706700 242954107 881967003 175539625 501032057 931064880 492002393 904353669 849157092 645405877 110249866 754149847 20714857 434864759 801467615 330779274 377658908 821809160 448734344 554023597 635921763 271976109 765428378 730238195 386887356 408512154 502761450 605171543 532130984 488299986 178269359 120932605 506748530 470785497 191285788 487760507 541374123 671490209 358164043 826348168 574330030 630089613 258156702 29433266 123789615 913396794 50759176 397892452 956510419 324248195 317062166 202149575 117183504 747646148 302725904 772383258 454940223 374356967 384053405 703399959 549744481 692031976 779473308 487656340 891918933 652494373 659067706 199613980 202606113 957594244 747319545 630691831 259032716 754575164 419708295 830455798 336522499 152616354 943290238 920499748 128128449 52183845 705688108 110799949 421879250 342415565 221335959 405945061 807688347 108787217 849484030 549395251 683576611 703777083 883935177 717262890 705080224 737552750 447576566 637944020 513660920 143018059 347899094 518163109 928954487 218875376 905784124 4295949 577172231 611185976 706299323 172438418 3802632 15660690 57745973 72502590 329281 692806594 781307581 80323852 401222205 588973086 600897641 284569224 591791343 631630383 256975084 618474789 58617396 265747541 502862983 796703794 394848177 819686250 732556826 287060199 382650009 828913154 681530617 421769947 718127031 439414915 241232923 402092634 369081610 975353005 73340624 368391713 478983426 935998185 958870476 892527002 131790010 560118861 412648468 129497715 550701898 629166744 630356690 810722471 907686238 816480481 626028262 112379047 306143551 505337540 843529410 204289546 183816010 409627019 383431107 828455945 930956998 881093894 516060203 112795822 538483609 300093306 323566601 703659486 469266770 496005314 191163658 848743636 341406404 790297716 94524873 573458846 460803352 432454015 739316416 892960447 513740104 247415331 194132234 320217559 455934914 176419424 929694354 883524069 215557991 655701872 633829870 705048546 781790852 128088271 568576513 891091869 697241901 310027641 993002084 882943499 816568707 845561472 644298547 126321577 913168829 907068122 5860441 496066855 302314879 654898820 924393446 917524211 746632253 334169308 569070557 9715282 376675090 244094334 460990190 505812018 946555268 685502228 603997876 865302664 195131537 558362277 868741745 622321692 931631106 98391095 161123065 216845982 939464680 912653528 407164505 455639648 615343102 128696091 70473258 746709255 493745568 534228153 302204303 47302664 793162953 799344996 844160566 737100586 969117937 669199091 998066618 162404001 445420678 257907979 455864584 799176022 86333091 349940047 902675579 858627310 508280589 943903546 277591438 750410681 335806749 390603874 627235647 951285021 96714049 673150676 14492840 411146841 961467616 88664061 485974310 871721254 791504227 473974476 554834066 690171730 780109693 164649120 93001168 617565581 669207296 732754689 603119897 662157414 688768665 272135461 609225178 439239383 386106495 301610920 931921291 703167362 888575508 69216399 681847975 873172083 767415674 17137453 464662126 127860142 559878330 353977481 271666922 19410438 220423886 980895240 843378673 165417251 753145303 275692303 991430981 224799731 465075 212845046 808583344 670130023 862155643 871204758 573376386 730134804 197686165 142639789 763577369 915529151 575583753 886447009 801118801 599388732 372975515 408619184 789039753 809987966 637542701 529367198 491092952 597291979 297660228 178007853 64615210 412354004 739363563 443414512 684550379 895806280 937931056 552353995 523353892 441554288 629220386 413113619 371923916 451856670 161666146 527048328 367706275 906504213 368058598 680467773 235323987 894475410 190043705 268047408 199216420 68233363 993010606 693350068 616051326 616429627 584494974 303958055 340880151 522419599 494899056 980342425 212039197 828412637 378855700 738487825 638365349 627881528 791330884 690734895 530435405 117872182 133747671 837444256 597171293 128428139 388648011 317484310 225313353 179269255 670256636 758015521 107698150 647443600 591425069 12854622 534196085 414119643 28603159 507099426 211060614 857903862 813978076 545397309 642264265 145637065 31742242 514529546 662337770 508938652 412862278 175070800 775314645 300844761 269787962 247641799 435686624 532902625 612241024 58353013 386711674 806237884 317451756 461053109 680160420 29725491 444996150 281627501 238692028 694976447 947723756 744989371 81849476 258614762 522578914 113837772 341443437 65210830 2518906 519403159 432011073 551887195 821478779 37654330 908334857 978898270 843040100 71339551 274720794 194111302 750705920 516503729 10416459 906880370 407431504 171832661 12639055 650508536 224494203 482383510 116762591 968661403 133978042 5955872 958713441 999679546 137263296 68964985 183176639 86033370 105244484 164862817 516258640 93582835 585677735 828772603 508415087 803883760 658111110 616937887 269945518 171800918 225547408 616345031 279872892 871807830 847686813 56667534 529512246 206314111 887955400 779482357 811376232 226547051 87019071 333480906 145981052 777699479 70102100 895375460 645870947 108822361 136198973 771783617 343263996 869522556 723611589 373137421 993251507 938848938 774371711 743155383 356429956 791299810 938754381 957766427 963780343 59407775 295684933 223315519 556520090 810953534 403765404 938214575 48759893 27694186 747757475 333422345 273175323 38114163 607184028 336015557 662487304 866071522 716962237 822506440 46037760 834788199 49078339 459564398 919206381 921146947 35324745 90823094 683617060 249106803 962422668 973867267 571270436 550974231 355318610 771290549 765128420 632521450 500344274 624212086 700255755 277941137 561375285 372990161 417779527 557064962 456451350 281074299 225169176 694514397 125182907 650034097 820202970 708073296 643073671 223673708 527710104 1613502 885675752 598872284 979199283 33792292 257069312 637763995 306891447 505198101 930937511 467955309 724754622 730985899 414430005 866146797 642550284 798164646 852492832 880019041 810060101 956873949 584890305 963293001 530263664 349160186 932279638 379170909 630969773 655038186 339190343 509408435 862341651 350688793 539555517 230316190 864812930 519492924 825890233 619654998 711261873 986629767 922373788 72915063 928287703 513698452 282970695 878336805 641911174 549840323 791733084 895075401 465395679 117782504 845112888 202771115 210828310 555686802 973670584 277592355 215760114 602866761 792500726 150536256 645921813 850863304 614447888 994360209 941972103 315258375 927071420 195078868 545226530 357954975 85465221 332010188 596500608 232785615 428286197 330385073 907203729 104678507 306185843 787356392 725936278 257428575 31593083 108466892 399314777 158856038 972198187 229824595 971353589 95289461 693010059 887626177 473897928 677362038 370198784 153883835 902147612 949969909 319415419 620221780 271681003 857148898 563891093 930567947 561857514 52296520 834418972 885103955 75060160 130196185 196017171 630995832 489123698 139633313 23175978 520705463 980301912 812649205 4284313 368645051 319583804 567551384 80106416 666100038 629056992 979710416 412012245 841227446 949828830 135890563 895533032 355523068 464321784 505078654 87340509 663277778 736908202 589744914 40643946 890969508 741878471 843253057 880166386 551268532 458795403 537046337 113929491 679760616 569522087 910932486 993979009 191448865 756263071 828630687 338884372 624488276 546232660 847162038 13566425 216186366 405509732 706906805 546948118 418650167 49347514 98837595 824453700 714655336 193062310 248984080 478146497 641692828 638251831 46250886 599824759 70778211 15459008 435632597 48439979 698892998 879719391 803620593 779771880 811159349 644204234 45820975 21398656 998701005 516697779 201092974 614837142 809313226 124973530 380703952 497755908 920227721 427048528 920061658 698606156 442438585 201582198 543028928 431789639 449290629 862268893 333498569 479105076 652310864 79835355 128534582 800529463 573594102 538969358 12716859 318482169 954764367 355528 647306059 718793632 776688294 147365966 69713870 722083492 377770411 787715296 189317319 765460968 448225637 645259902 350256068 631943320 931280146 574093304 149163010 374346055 308500601 374591286 705244199 90314939 391722550 50221158 7862930 133601058 656410748 290245428 347719275 792548927 382454031 208161489 356463796 125189519 216676698 394023218 319636563 264890395 949479190 904716037 585604458 983366132 53212735 873135142 209626637 159866481 669742780 537882870 25145383 42058790 146613794 522032768 559287395 72480649 780942499 545537523 828937580 511115463 103477996 289660519 721970587 570603568 589864159 338450211 327696221 628990678 15298785 981144373 327268290 314208215 276052924 336510472 302003868 69078726 521342546 549908763 363797294 118082613 921861889 936024237 62918288 669980146 73495950 280413548 439858842 303175765 994458954 737282606 789269119 994936364 572443560 409634771 358144388 238551260 589291031 798687209 392597556 49163171 584604794 979703490 50560508 157491797 493731314 1874252 257339155 28734654 333207302 121282241 784511638 744354137 742522396 738142311 926500435 33129120 337180089 5559683 300262215 937784901 621374696 926420728 955028678 688622612 232227892 164151147 672428009 374368138 543453313 783009468 563618327 692009569 896379080 789350650 26299736 414872234 5572742 149565722 82059894 246160941 388088747 876327828 102249978 259001382 513375554 983169575 164589700 141290016 946025005 234742959 377484762 496785307 218425206 391447871 391137633 232710568 472683087 144026290 614776452 663708284 289709276 531265060 669411885 22243986 662845799 306545745 992529048 644490716 487477629 754832327 593019664 950281441 713183070 756937438 17493698 307788170 571780844 231465476 994312699 565791270 361326404 983418033 643290030 33469012 194637456 89594746 848983444 591158373 199208336 154584895 700956428 372770995 35285959 924849618 562437838 793008115 687868223 735347740 9374489 496777297 917962373 332067336 438545623 384079490 851051965 752361675 609024830 756014301 771870575 701752494 396910330 232781007 569433498 102741391 624583371 584353598 577491185 424622104 339033050 176634179 756390270 129753117 332010752 258533807 417112796 529831521 637097807 757108671 445718431 305919165 866960893 353546539 26349462 438135212 764393927 339910542 662768571 672315837 869607486 525166117 805967222 173976955 970319186 923938743 808123317 533345464 39294454 585405889 42669878 185744585 422606358 37383414 933620185 828791453 218665247 540245197 123548175 906423140 96532537 755651928 858113866 503280853 82443986 418544297 951651197 454341644 885064716 820705295 718575784 922740531 922794349 339810329 290370390 108289124 492979389 346827801 430609895 104330351 872527093 186298418 542255788 981886559 186926417 340604608 242378614 768163251 927721889 696837528 177145353 153856649 162935714 200608688 124513845 438682369 464146713 458090025 966573278 368088151 676765914 942333935 10073211 458541169 17431627 921270355 85924221 208488653 944749295 701846934 358975957 749983886 627086456 134688858 696775785 994621788 369235152 129361209 630131611 724173883 223718973 955051017 641592425 242192573 84748870 782552573 121569429 113796551 593217519 503416746 524418235 338975461 625576440 631864248 324788740 46641664 713304326 931698973 438644275 522393232 856071759 808665894 727936131 123749126 99552456 288914574 793855154 551533312 357746633 410385052 789116946 480167035 121550954 266891931 614425185 56374768 760287518 345536237 925802501 314091119 560574347 410041271 333095622 114938099 721240862 740895434 766091575 142740395 952922298 403204155 653303502 288257889 310928552 149402107 757569637 970138226 753314976 176078760 214061084 504242478 231481862 54346471 529285995 98428357 424507751 395882330 801865875 917899552 36587584 876630638 347421731 267029958 688020995 773313575 86523218 85893423 891375821 443222419 522566179 661828881 345700815 768028227 88520343 315057272 913516538 469151267 217797732 984935757 312321593 806178088 740466813 544433479 810067023 406697222 596535893 842923547 92884272 393887807 808405800 389491279 493897168 808162381 379245951 666595371 856073652 655016563 963841987 419459560 918099764 164706142 974782569 447913488 628204995 640547506 409122759 902632116 160434515 751980285 960885987 335118268 155112059 49841536 283375594 470593202 979856496 402050830 383290750 307437960 38949115 958226038 168709045 442233467 666397529 529729472 343925461 903024698 175788763 432884473 491570621 372804213 770423913 449691529 744294342 687575011 507640010 58787539 249986004 858655299 901921996 803248791 702262536 47916124 985024512 859262286 117538550 78199037 18549616 661041450 528241314 30234951 232125235 190994997 936738449 743993989 829031415 426404421 190208035 795945284 616770030 109534731 228529033 415242290 892901109 489697705 715782063 677798574 491589930 161279409 981060880 474137063 710478523 425479644 254664839 227258603 889765551 210927741 424531584 564504267 929540972 332002944 590555118 759617265 142139612 509654095 274875064 408515889 379475857 327394202 215589757 568132822 885325905 83808660 160449218 486599245 858809925 704079241 926004570 508224976 895928170 581758618 297276856 434635734 183368194 591994183 574238428 566581905 228781323 309539911 913175297 925792002 122012931 975872312 369314237 506720032 795733589 146193923 976042294 999986802 779038930 516812999 194756705 423305271 125884146 365893377 838878693 231870647 372753265 286881983 995144371 270752858 571489224 375031613 591977217 881318979 587163582 874178685 482237241 456455604 971159938 311371864 200881068 803146088 242857307 281491673 261168758 711869657 528483546 763571889 950980504 424262965 214346326 479011446 604302912 911640488 792011624 987251256 58996401 424221799 86088177 345565921 195692081 945593528 875525553 164307897 289859940 503001721 132330346 69565921 114447323 229831175 855454520 803780557 741148897 957552494 595894746 667979739 577451394 457443505 906724129 646690575 352372713 406510763 820047166 34565154 763576704 317682955 840501925 528616505 636374564 3706543 235560690 702704465 560247975 174537285 585219999 625552874 25659032 702805558 196367476 287498104 35861341 108825678 758955100 971927849 674116412 68671917 228095228 945352877 155364046 663935956 484219233 703603037 522455384 476970166 998081930 452339925 371760487 684756508 706811611 794013219 118281356 571208406 249070317 152071277 334657803 975088531 198484365 166227039 544734130 228355973 42553050 271329962 196395184 104803986 47929080 858499620 762731238 817067670 955853350 428055534 859051545 992127735 714429105 645696473 632624175 895730526 771118723 899086796 239431882 522717834 425552793 678237145 762702510 751100028 222751459 960401357 152530334 841365391 889453591 577060090 139591641 782892142 684944459 482296260 140878787 167555124 76943532 100267622 727770131 391346145 329809383 461200866 59516349 432363372 672586651 918940348 882843687 77422791 987483870 3149822 407662825 365159428 98999008 425396214 942901604 871549392 717222349 627376270 500452900 152379973 13655108 14614597 549560960 608970611 250119026 629661413 901174951 971680084 193499429 61633420 614951111 26793014 759023095 277643164 535652463 368307559 4026657 75303244 653432259 856832834 326245754 119430047 543226780 50767702 945323989 847166192 393883770 247377585 796116158 33927821 571508373 263842389 337434922 573938894 740629404 229925717 980207486 749437427 524611051 559448684 683437291 260493115 610254477 665281118 478543331 493513286 335506764 286526384 458302903 815900360 48620647 475077751 407510333 407391229 39820685 60548669 586523479 868836226 536497241 334977410 605577006 917401956 762872113 369011755 491300244 76811648 850700391 746206677 877938650 291821490 914135652 154786747 785841396 342254533 678004597 84436291 545756452 244447615 108888735 273774792 66356439 990957819 541587480 463092678 692506618 345479718 61815705 176327040 681086072 693731392 317533264 838203714 656403763 44467616 1017381 840136423 468488443 96827718 868662539 76104444 498745586 195348092 747680202 527666252 700832962 636664200 862072571 286051603 922096921 47764286 588501621 286896140 34883768 651124462 23590759 724027398 431400047 906802104 9633685 844332982 949695407 563905591 105531789 983737938 831226599 36060480 981603457 643958207 291934827 126874127 304646534 4000520 602417755 951327011 526102271 685545233 903150917 938256897 203930308 863656258 367732871 775896466 954880713 415721725 137959884 870976023 452177325 614903496 896945552 418855045 804395385 712364358 865009488 989260826 300341124 966338178 130869037 263771306 531759763 568624215 391151482 593343895 665984959 73430046 12728213 610077425 846153788 463246151 703511118 530749894 895876740 3530130 324814923 597242802 904832791 417969978 385383295 836985978 751676584 596513486 266622333 920975162 128281549 742699031 243803909 352695271 570957371 111014536 149842995 482603678 58312975 442309792 172014160 30046999 981489961 66502315 33136555 178007407 171834683 66680247 512732470 661041318 120507662 502952574 259722352 127174064 581215504 526863756 49959977 201390178 140782604 790321645 649244443 270818917 200874542 248960633 541069167 272904331 3467907 886511366 661269161 887755278 270870724 741187863 282244132 994470779 626327116 801892637 729738384 759340905 95663400 975243505 615959829 531072435 863652879 84976886 47414089 610062862 721331028 638915063 743789934 570906604 982610257 918711582 172972734 151880257 65680132 600245423 619916279 496778997 372265520 495474263 584460666 67113573 844774901 178109178 915876415 601343819 161718284 958604832 939669583 810421030 20540576 522770586 126117415 327021130 344911141 721685221 768043918 763888205 350319190 32171206 492781022 729212822 761175383 796392816 294358962 53644332 295902055 202796808 786128415 368666048 113519657 934708869 73270526 757495402 498024186 744839034 335486919 769711372 235872599 147977433 263436891 158266218 71270375 412832342 991901372 555852420 625430151 989632437 195836008 968430607 604478047 833909583 736808146 377497807 571405405 579040221 53124924 883188490 116288066 44525402 58615262 686703288 821457884 531410570 80995506 806068143 934387704 906820650 128403844 361854285 289449640 188589490 739294888 896554860 419081538 276878424 452384424 897624538 893166656 988607028 836497391 455939371 4691058 705612604 582870513 285250986 443253182 209577846 741573469 163874690 288359759 613363438 348279303 718186203 853624658 387983070 460631457 904237096 985782290 689825869 839413737 360079500 953072073 510024725 495085057 138003999 391429544 676403558 379781771 442736641 297747991 163782521 910333689 423214382 522989821 216607619 828725038 95538466 116229779 984320509 688037060 554924502 568690046 778199809 426682507 88223102 102568008 68017454 184445184 646694322 809556314 259031920 226358747 105117950 145914759 51241110 667970479 36466171 578100924 395889232 305348118 81913351 304029295 215362954 261746329 21614705 826361929 317925491 218134981 46805396 803611647 675898743 728679573 883686535 634046157 829301174 178978150 929202805 889922150 865419149 597061062 290470889 661714223 222486753 802265870 946045910 856640198 748125949 921274053 271905095 829147036 815041116 873762479 668839753 435808977 641300637 350327579 93277916 559124288 874692333 670110125 917212720 797550675 574936361 858348104 801198270 425784351 583671945 492092836 484786263 725180769 86827372 337190711 200517567 470640002 295014009 446562526 688521086 12925654 730928666 254041844 589895912 699352871 136778766 514792153 880172480 799861009 412698207 785741333 922529401 829040235 571667961 54023364 678157983 128156896 152361064 192490407 546642648 262448795 4534025 39392763 557962450 160518869 458570232 913376565 389400888 398168522 296286539 629689486 10378575 633332637 172891641 679269913 709498692 697102640 287482170 522692284 105188705 437842840 373739386 801070066 36578282 60326121 622696207 706932924 26963948 456156864 641474739 998161988 882735895 26089545 454984619 274800838 610338520 105647142 772193993 646581223 322853403 685586533 849819389 649182459 694290275 493345167 60948001 18261334 290437097 147703480 873016836 219194577 166483612 19733545 539318867 163990157 986774415 193939898 150913508 693367003 107562704 193027227 94473253 26528902 500463013 793491085 961894477 725506903 705980244 565614370 875616257 520245970 928282156 234252663 355784390 588199078 354181388 836433987 230279420 486059245 38641000 164189011 101074345 19923683 938041363 778909654 47192606 466758155 521610848 353312731 794358675 587020498 167647606 853767046 605462250 437801217 778023919 548953399 558977118 662589105 491880907 39729333 815190546 60328978 247555520 989322980 381090883 885983756 983072987 151763746 288098169 209560688 682419221 633870114 210908634 835272751 448019636 834407342 99438399 164924540 847208007 530945178 709102977 387297647 466436471 445174420 784238343 965916396 897160972 756126460 494964466 74815998 341833028 993451893 399845395 76816547 284364780 233544179 22588985 568601980 677567416 333312093 787581278 759801595 713911282 211021622 321146254 74611773 355219529 985575597 478238197 378794320 87515999 833480872 760192069 719837285 375249404 184826303 348609450 27937583 988366209 966573060 726623171 346532242 863263654 634823545 485469574 415669339 51275044 921183600 911347914 4924514 220158955 866353765 693778781 507835808 405510700 585477094 118252418 616319270 624559865 42314926 936676829 678020202 268444347 597080643 893350879 787093000 52815153 276600059 563373440 141653211 219579254 674630158 441290706 353996960 636109578 908881884 926498497 791738859 695855426 93263197 466545172 102585794 625528119 386679388 318999610 50040842 626339553 55720864 410293981 414309023 44913607 49650107 351784172 843700831 312655181 753448286 418970066 650964011 296313093 996392669 941792341 336111086 508611636 115379552 305099163 501045219 491528856 21407526 53220914 708057692 789823541 455798296 568593464 227980240 752186129 68704565 120582364 112624484 571683332 690087278 46125296 502562594 618491843 691420850 487910151 284192323 448163742 32502112 441759185 731324222 564579452 552616529 692173330 37076002 851267489 960890004 717856484 240305013 912784890 423636748 150769900 184758389 534656525 309755966 973587067 32688012 713784791 163152079 863188380 647835859 729179408 256530770 131281864 974071634 953365417 135863132 703723539 833809646 824763332 124288987 708647735 964531308 815726556 559464920 502182811 796193802 303004940 10361439 812876528 116918376 347660428 912584742 488646320 947703176 871274927 845483974 391966978 410000277 579587825 933969283 687328289 59641438 443340731 263869142 586949615 55535199 51505587 829046683 702548171 354019683 422240600 912632785 508901554 351127003 188430595 219796938 984108327 78346777 218914745 430657568 964065309 151500724 816886206 661263730 869352486 780039781 350979294 665554473 343214437 436782177 7676358 540462928 350002735 398807229 318923132 300814959 645246171 753599815 425881132 129561391 290162997 384409495 538614005 507971570 618671814 449270585 7594807 515144875 506688773 311075108 176958088 689488663 817739103 837294793 916012521 590939894 21050146 333803354 987152646 995395449 459370690 559908599 158971794 508832532 850460367 706834253 983529298 898385461 290942446 764398486 165770322 607451875 316961686 719034712 984043519 313932064 117450179 427302522 209165588 918788727 301106139 227959558 863499735 758733 569533376 817311191 362533339 510660628 773608684 657058648 218196714 730283520 696307811 228086016 571730371 253256821 471801950 468804291 891465817 19623656 657886218 314593195 634374263 769852192 212881683 951528612 623009920 748118482 197668102 712384475 151505385 745291065 529632855 692270837 746640730 841713544 236558045 783681719 690949016 89104670 799085147 461588713 964999112 650287906 463805143 334233986 771089300 727365756 727717749 402970631 524843221 672283587 595722017 923208928 674810902 89775705 282253740 834730279 274085161 431399431 997997979 751694634 536364540 449220909 219645789 283576275 899537048 335216515 677533409 8689897 492925748 315808450 78646603 235971927 693506964 343556004 163545567 993984999 984377956 533196877 473259913 420050159 608898687 223649169 265417236 211145689 685576116 407694067 295973383 902325949 506435408 347665100 37383688 928307981 398035925 910158264 46526257 179048647 832043698 591415217 297865755 969715557 265392705 136575341 105028361 420134651 667480040 44908400 562666774 253788931 783943937 207129454 174765240 955537659 217533972 369702505 308193899 439581849 147832005 664951421 666970693 960694410 216727542 113329699 917041039 741118079 834298115 407557385 153159362 394058922 304553748 866934610 650080494 537347652 137144000 520721138 570409504 243876864 506472884 784002423 152130657 40585105 370179853 34474026 951432251 526019289 845725160 461118070 556454908 737473610 962489233 742491153 160782160 403433196 504121472 703777390 792408161 128565381 817898586 226180537 451219842 289237834 774933009 261899720 360819630 45388726 760344645 66927362 136471008 58408659 948984218 489929451 821951310 821695637 735536999 35917987 476888278 699141378 68559151 678095810 769265591 812961020 716753783 270954061 188676489 592305540 755755842 419649674 360782830 365913372 34171340 526764944 913682166 722722780 360200363 993794626 133648213 766509165 490732164 663741655 138206819 932174890 55478731 295019271 33837073 428398672 451259306 290952407 379975999 925326818 712861690 715492222 751821404 254521042 820147688 266828171 420985579 663233304 19041269 856607119 112120903 558689146 292139849 675705061 254315318 811200484 767696173 739482657 566332744 597307206 536832034 92394090 281231720 809144766 110935279 749899281 856683437 583507085 377997819 829716628 627460969 264466652 23070596 719020347 989014351 195151782 34758467 666537920 290663246 328202478 238608873 696107253 818959574 220476226 958923915 472322532 656173653 300318867 7207317 276986380 522654974 393778205 457972028 412920384 43907034 892972397 908806932 807996981 533611079 682108965 796341830 795212280 740893830 753952505 897049841 320502761 725875343 817395433 650702583 259806478 810438864 712170494 726554149 74214463 373975123 916879120 119295242 560697545 506571445 324773131 96952111 709567715 762211143 538101763 515911934 549832110 923495334 427634468 277062887 236092001 154647762 112154974 997684603 694462859 761541636 849778605 861917432 547989273 514975079 269927984 201371932 704282188 742749006 201232569 161549035 503832565 239431491 79254349 738204109 858466742 836709844 412200407 10835527 553388496 643051382 822623568 744844482 950514069 615503016 833901657 666417468 685353864 228916152 803230764 543903911 537707928 786041550 600841791 935910461 920468052 311016889 905982574 815573435 950376202 170692837 495619680 993085497 359790065 274661220 848532924 262238643 243527932 279595755 531946240 736618979 893552468 711364113 559986146 619247753 728448644 293240231 454979246 276649533 30125757 213412711 186781154 463988356 235161760 18919060 150551687 512194325 557747843 228135101 179662922 911038510 564883691 180373772 959169919 185185811 40410303 882944393 655404315 388574403 11117642 368034890 832391493 482299350 45070690 888600363 423355686 330942460 462800408 567342182 980836810 566998026 219801835 330395966 210450885 443043269 303595819 201416129 60193460 53907641 938124970 49791071 180520824 593889541 164852466 383954070 603869092 405517929 349987791 772594974 39863042 939791656 189706316 792661127 190483251 687962551 345882373 78824739 969249647 168790519 73768260 281788443 270040441 855105757 241095727 371843672 54661402 86396962 463133154 486838562 236768834 140886032 980382317 579578329 963620790 540771459 775859989 727998701 486218538 964671959 210796529 535389958 725191722 858698844 306483299 69925355 377574807 422341416 49839682 232691190 596345399 326715282 250685486 869293554 122132334 654791539 972697999 311109429 865400929 860861053 385705505 591108047 506645334 964287603 165423712 959252125 627636013 578718987 426380812 896936024 744139263 569653444 370553715 605420280 912040682 488789821 595647670 383512752 171942428 636241703 277908832 873838405 752119148 985264613 899976218 122841532 818254014 402181988 173111008 332695592 47590868 890863213 210276566 572406733 27355661 737480449 493948181 834365826 233631009 702025097 193096256 86024274 756737696 82621578 994715757 671811447 29191112 376942701 556489544 765104838 772951930 770733621 228877023 713401305 549806838 284336338 466821539 642025291 539417381 893632373 168873244 82839375 807933328 149307382 117417112 721803108 464535081 418677440 357488165 72184404 277052424 922094089 589318475 929947529 580727444 976854413 994790122 308022755 585795354 791795359 717081067 741979399 28557891 965787212 76708569 673942628 38345159 199525002 616262834 992895017 125993892 602500250 718981576 61256410 617250384 186476528 381799284 665518537 340426715 997948395 21620736 933705777 11202305 847335090 264787355 493671613 293935591 793523673 907816502 6025085 711068024 113979363 829353423 157753916 282299067 862091975 846379086 628147443 93665438 368747261 799884549 848930241 41063384 358027524 139283501 469772792 3974562 632955837 951279190 721681591 520487754 390564333 466254278 53566108 718955984 102790177 541912267 165535050 676874521 370886159 421770548 518530824 482532142 976391 849082890 222370774 975772078 359469337 743358175 901315881 867325261 942026207 836778769 256780318 664956002 48990538 918510195 701427772 239861132 178392009 375849819 327051583 736961000 253142333 481145559 156004620 35983366 587432829 812845519 224956891 795994646 736542673 49654446 105880420 220671832 653539149 628168293 793259409 237008673 465998172 661339616 971646606 518817968 662637348 876475147 319361170 113541408 958193376 923741552 310476271 720237777 680926390 49469508 955239264 188604524 52333537 636290320 866369064 416409131 286591514 575126148 743139647 61781448 899222623 114763289 623413546 727774624 536752481 16540873 509520254 161133614 345729362 607200278 710120201 406389789 755164493 166948860 390892582 529478252 500583485 832990131 900487718 572606772 272163245 815633999 70277539 52660258 456457760 228120842 572835232 116997704 841972827 595145147 771068666 746295792 635986852 366247921 273964763 554237836 949395114 924800966 324653581 549448497 896915688 94866076 591599801 369392355 310349570 450391205 420044204 98443139 36726486 876475269 714198590 782372681 357684996 849751416 876862718 715825712 379732217 405838457 183958280 663592265 516035644 623643157 929355233 650443117 131896524 590822339 761536390 563710605 678230512 734252449 912742888 904832289 416305113 564561532 162945867 440557568 418498440 199970805 498822959 857130099 837194681 396205080 948584825 433994970 641429421 908062279 984626231 175833652 473033062 137538822 679014023 323651659 382297921 811728988 885117777 983409531 307882832 92808065 296621122 244157605 168382834 700820755 643627429 867627914 904331610 452248594 187017605 224461686 265930171 594145569 225407041 390184851 358965719 14010837 950085400 901445272 600624146 273853870 527358278 196378547 450302266 797841685 580700468 785190028 708804604 139758617 556264103 70682497 500608154 607654056 860993841 627359134 260228459 695838348 906777223 802759533 804284892 205127862 747838290 729204139 511092377 459117985 535738244 666955858 739981445 542616019 298208316 892092139 624532331 41258582 189499761 450728425 271402442 934846027 69580736 474553977 166859332 455704936 55130262 24268775 218812835 136844734 88430009 121947743 87513453 334958880 799074843 679131536 408288408 9004873 286004000 626927287 236547512 16751591 578116867 777652264 476366100 540719912 206050120 769684316 12988998 266349251 814011354 131936199 99623962 367834973 279423379 968834263 156211217 397641124 518926990 386391985 648459760 240663625 692933328 163276828 952169322 214720769 146327906 572077966 4395021 222159844 822063178 715013542 234950588 186511175 304350746 369661964 795781738 499112116 91655404 845197681 848316749 338379715 751399341 329624958 569700065 939714368 242666500 234365120 483898249 895807693 932338073 228582853 971394469 283026440 516886662 580865435 774441917 226101901 670201142 132849983 474742031 231594602 139397808 131308514 137694521 241168925 894450568 582962034 836817439 531969758 751226391 474376799 921343207 767694020 455149399 261903648 14697774 657315992 134225836 376347830 799651811 309297057 686448399 942800485 216400164 683381523 284286541 84577234 593707334 650072264 429828621 909803807 724238063 326929931 719765895 129183873 51669529 729063097 614372256 368717385 733608294 840609562 547308388 858886105 964333836 213147190 733914446 313891872 524018266 450939837 122559919 616158584 2657735 181983118 406371201 617081266 758917322 653945965 717442538 197696970 518472308 398374721 573034161 527653018 823553740 856740793 849877163 33026252 366681696 907123160 895667669 696556691 374766244 204407675 758248077 261497948 134467676 676487556 802766591 985042280 735613599 373834909 985045137 916668897 9710474 405467130 189185822 993270803 539564302 596840498 557212318 694569944 599610316 625485807 5335821 268920391 731973469 124979522 82632926 343623631 436450145 3880050 613937567 291084075 121350631 221344079 306502627 35613492 224930603 331186654 873718012 418031078 617664554 495126999 216845617 286451995 727702016 139788993 833931125 492719986 573267047 629843945 137695132 349790218 178886399 676770907 510279327 327465169 801494619 826205065 356692131 823751636 700385248 669582057 798845523 162844601 986457347 381863778 325049499 270663464 505765682 502058590 102005253 464572825 865820256 165761389 435562288 402149262 228810410 736651218 710200485 843729608 667949276 520998922 900982129 849670830 863395986 326557835 663357947 88395102 850520822 868579236 241672060 505620478 515391605 486154750 664801311 404011431 815491406 889287055 952386223 574555914 539489408 829237303 775130025 241908954 942708469 775220412 371886211 746658827 20816271 324888581 167694660 737672986 162576203 967898684 485682773 582986104 505777690 724626730 922012778 115858582 226809204 231275440 325813517 840367013 667329730 222704845 222739641 252913484 704475668 2059751 465041429 648459453 116355697 224638585 297336754 508826293 398195161 713957034 584469204 16191578 883914731 806762263 489618859 930966132 784789604 294024605 830070481 246953089 400044245 193899451 808986617 610092336 231601718 430123379 425545968 934804176 695683132 999721309 585133834 124629569 157447587 166815036 13846915 150759398 488671318 108686647 722909385 661878155 65730837 858541214 325204256 517730575 136329566 826076910 138594730 809079203 401425495 936183562 278220722 979802909 912874041 711500967 540046638 345043869 46346918 338311685 368684166 458872291 434430243 110920626 98035888 728710883 825478051 269071421 708379035 351627834 749418196 786046643 437626345 587806205 926419437 221479259 757910065 76774193 838749347 774836322 118245520 697024416 121654497 732940278 417140730 371907638 552652758 939950978 439072665 192307422 79209969 100414933 560077474 724416910 352883132 732393375 26882249 421146690 327485419 388488414 200853668 720432332 363352491 128015623 637092673 850130368 934826018 277877267 987781817 821364199 143141010 329335230 970835702 892807408 470143721 906595641 845586337 913072646 689109383 202192727 496740197 689936772 865525183 728579008 947012682 12793498 349593506 461760743 764234803 91213616 508068051 9694952 182559664 870368067 198267748 118599593 981906031 505620494 694039482 549837565 524501318 441787625 608413438 422912645 102126171 268263333 453985489 156012166 430547672 299141599 78960710 191086795 801087602 597945647 798043018 884475689 249130896 363405281 748185728 356609648 15586476 938837106 992010131 959234705 740841148 201210431 738285150 597250955 599479790 761108084 201325230 137288194 752156341 96547652 777785724 789385742 414723476 495795361 230647605 742856372 936270543 305126372 248344582 708373855 110311058 680140815 474003285 379999091 766268816 670481742 125280877 570883257 343088627 483229429 606811451 757095011 125415157 513072693 519824181 79012002 757701762 573689038 941298571 592191857 342258158 108137015 30644167 474394552 71832240 9034843 635543014 51152468 811912443 86029665 724398285 167088134 275370701 887085326 702826819 990021988 304908796 741848163 187126341 306649074 611019846 942744130 418898788 446852639 933142812 306257324 893014112 243536844 566715209 640667008 50576991 196494762 277752486 4948745 665866665 919237792 187676066 623796943 318313599 384195728 650226050 585949961 336996517 413003396 278616402 491122131 569465165 580871627 813114310 548346856 784633911 702116834 941373511 17382294 154064880 670505928 652697223 81806128 326093324 4869012 107195704 953673040 190039550 661977084 29312934 844755431 973843819 752603063 801844089 979913759 28907588 71675605 724349064 37599156 696881284 101178658 675803766 164615453 75720683 865302402 79101350 487315463 238203182 856853290 86406700 443537325 139652335 858679294 659467944 696836003 243123679 519566014 384320405 638443251 366836749 567238733 314224384 218092235 332024417 532015035 232065889 905346951 707314810 423806985 645319663 765121787 990152716 90605113 676402170 215894153 105655447 449938047 148838673 772526251 315406435 557210134 485711593 988497435 245673472 231294339 856645345 945092132 999553569 817348469 868161663 817734852 84402265 697748334 994721018 740932808 716829228 910286304 901443114 882632158 886165082 783170627 884737900 726212731 623653199 451899651 358646346 102726837 523924464 804989151 60021544 989701011 269308940 111195025 545131836 399579341 326410416 199095213 995485328 132350753 181793360 156280275 845498385 759432704 71766675 215537032 340453933 918444222 205405856 215038559 242887136 706580978 6898624 409686967 396225090 173302752 325891096 275915888 444375898 723037654 10965282 998753070 460425815 234429745 953389799 263489554 269936335 90297580 555976914 719860301 178934328 55740234 760301784 589328374 792244290 657292463 418864260 832084886 400170894 384033495 315196640 448424599 448588481 839914553 466588201 884107139 484184461 357290526 416434680 75008841 601224454 989632788 369126606 211619200 355833409 22509536 199041473 775691127 46887148 476342990 503883421 879148411 145043100 494101106 902593742 295321213 549332023 298537516 219000568 418127361 929389745 926224376 100963935 960083434 131373664 435589164 379486199 403376267 783539425 999142648 813632791 521572015 51779591 683945495 826000688 410858174 480416275 703923897 823833475 1601818 980101389 340594921 17934222 875672580 637152450 691074323 391207029 555054027 928648935 39282958 567992316 476420023 608703192 852798904 169153624 743260247 207936355 396913961 512309542 773394797 782960166 729872876 573759427 349142757 693919739 982330507 363983556 526975523 124291710 114016395 188938513 144858144 200373392 55086442 357588741 84247754 57441501 146756333 226242345 376621257 316576067 737024425 946317178 84370656 912710207 464137953 769213854 286549160 406711701 876822607 835223755 232369612 23691928 513410582 172458154 930281676 245052579 28146131 262830353 285445007 684860092 660291496 999607077 279392972 343736467 377643584 853766397 229546690 573458893 133485694 690306435 995165950 646079717 151066496 974771490 53096007 512392479 402001427 906299014 589543038 372028193 550314166 2814176 81148559 143590159 394366731 389474935 585190789 752763630 641673568 98099486 343911816 115674211 32699044 578503660 236225214 339696895 997307421 404422444 603180602 570875831 164955730 111847534 658368730 520388130 660635597 689081018 239118183 40736208 897145889 920278886 433293654 911049004 886356625 592883858 24874720 529359619 521445727 487856289 719239618 1651197 565032008 745294306 150112707 584589005 854664258 118084662 36136913 23139704 568935385 519917083 769446006 218154369 302971090 192215461 440502281 169935824 923887396 585042593 905613537 528372076 841233542 773083060 79587263 528667288 230340556 512033968 204873540 246472110 551259155 981284689 906212893 372222580 991853928 774432511 41830043 869923973 122330536 167812469 686989837 954948138 917486703 479703742 548269721 352345276 731071697 128290090 289547041 422938957 524500735 631935715 17148956 196990791 110559283 886608191 991926477 837664731 380779504 267244408 490302429 969918034 874077473 627057014 254064608 253438093 660291301 152168240 531424648 831510966 824829660 506290834 198554515 91184009 652199426 364407796 27185372 915389224 102084546 868051568 992059583 571116430 989523144 746847366 601240935 312451185 148987245 666748144 555681305 834372881 160239612 86585159 788316564 576077371 264676490 149275058 222335058 762266180 416041110 898583582 668782537 542828511 162934221 86193869 156041635 914916512 895872108 278557898 362269335 169062293 524605009 586060681 797738855 418951290 71787457 73066414 207310330 966682824 322718837 667258596 65746981 698354453 752689101 878424046 128478824 574494335 488763916 514655129 552755978 103987577 194131144 146727071 236003840 683382056 570253490 756008390 752013590 48468611 727190394 447955899 379519974 843273081 947265429 445965439 343403758 210751352 753450495 326611507 316132486 688518005 749206339 297134043 482858264 828225503 888930418 977551096 24492866 241015222 233485403 118359799 860299938 2525658 505774513 75533275 385814752 665422356 565967269 934128849 559526509 679623223 474339791 114667494 514344676 86352863 667489968 333702608 103545094 437729416 892911510 88407959 3794837 260032527 848953008 911960226 105787581 218361263 154331362 297549606 397008398 797960294 241647623 236681596 509060567 881256756 146146188 63563624 673969869 706044205 331602240 378126800 87586052 339119919 286025547 132472002 856598292 256823257 353614554 181814912 687688891 565581880 814855232 744205075 673541579 557392975 633686082 44906886 883719131 311245701 261279786 563403300 433844301 972904179 151583204 739963844 699305289 455930506 152645831 836312746 430045475 899426199 566698862 653884374 224680845 61623691 231934499 393235314 685272734 381253217 974881907 647332659 900880611 100624511 842388085 988250013 639288140 438302256 525433244 142719417 284560568 425343454 386855268 210337120 852512133 424047111 737297919 651168940 308505240 194493590 758075269 255192853 906288650 801985243 366004857 370406190 260466040 109039979 774250904 113337326 731346919 527806012 981967016 834190319 930669184 701299279 578510121 57988496 366790013 710663943 257560675 737011996 231972442 416551646 179617597 766670952 905604685 554679892 408545449 134764459 963440646 45709599 12172536 458072834 675404443 442134882 360680695 361666518 101537601 932758491 648966300 962501644 706793762 367682199 298145583 206341033 250541150 161595520 546539021 215408259 717965082 126887755 981964503 320831700 300919377 868550001 415941286 965380699 385898242 54123264 954497806 323068411 624895757 277924581 937643734 869609226 62934210 551177917 719281730 63553421 916957 544721715 537804559 497465578 462046723 900624963 855101016 21425518 754038341 705532042 322528830 916785086 729881182 720451793 714839946 378781753 767173359 597160737 872477747 617353137 358768084 448860805 31748386 899391965 86697787 829179983 444587526 494326989 442198705 721158186 936006206 200150255 545131356 560680498 559904548 725884106 612542727 784534815 759388628 130955056 255650040 745226415 548591073 584402767 233722397 893444253 723006193 736818795 644348685 708548089 70285609 478627435 185698886 783931344 155105462 369151686 559259896 923614315 195650879 136942553 3378619 614518164 11117713 918633302 746822203 892638235 820103429 282308243 424435214 189524504 145504375 160380360 974803954 41195741 21262167 192525332 859108151 279900136 689490278 87505558 988783866 572606611 487558021 580527196 719150193 705209731 201044141 816790308 73233678 849088697 418670913 19547536 503110808 233807110 985049943 839030254 647341976 552017077 470372547 301437061 740000633 891269376 469839368 108137820 594397825 363219430 726772144 704362864 702881786 192751830 631328633 858600995 989317478 797923181 288198149 700767419 266565363 711073800 20929033 58720114 314095632 105018475 951706454 661092514 266874950 633518371 397039212 779165069 352085050 501232482 84093983 723745074 405410546 150179521 410109183 931156275 944387085 126114500 805274742 110180722 984642183 560326434 336700499 408341668 784492024 319324901 511324368 280055694 540216409 910872351 598270939 690112391 994918374 565316753 455530081 321092763 716434802 478766465 311833652 756254102 561061347 691364047 257448462 451703967 93809376 772385575 841677390 936911179 792100202 748837422 949038459 27765139 334673998 917552014 31538438 301879506 945356195 378330185 176716713 973382086 162691665 503176879 887974939 890281495 420709808 962993208 61006899 890450809 269873624 768921295 116957859 167509063 180972246 507420513 672102399 973380509 875561796 410024963 522322237 881664846 746431067 868777916 490149784 261933648 785799725 271838597 330458831 627079615 392284957 532603184 855995717 745413231 401943906 960536072 709459298 943712249 283610740 562388024 698224170 713702756 120324390 822287046 846434826 105323148 79716480 785448453 729505346 271794379 766722159 781575922 150295441 658417341 886377304 597391962 203148335 518900615 536014276 14146543 75061040 790822630 963496489 591804301 405132238 114262469 365138873 191224367 192096189 175322536 353455315 756436920 45592332 517730802 429435698 351336935 76915490 728642044 927139456 608167558 582746977 497597846 846464952 629537984 909030001 262110578 809662973 465684099 895752493 36096709 963929411 691702285 251650153 758704933 211730457 720159594 447857172 13277609 973894956 946902369 746547690 513531565 72849560 247721303 364774130 38861565 87782699 54204029 160288162 142332078 411022782 558707568 938689923 753152323 608196567 263001612 880721796 429328155 20342917 475509880 800958702 131104580 914410811 404306835 895410837 834143265 795953538 516272854 486436333 869855125 329910879 984647298 630107514 683427703 940548571 714747514 705187759 542591253 309389374 585161429 648989656 95133358 317597027 434718098 733940226 746212510 970282723 575587549 43736764 678478806 835911290 643988049 683175981 978306918 333454012 56212597 145764845 801305186 277002508 385782069 562625372 639082342 709390948 686135345 876367454 239002060 940183350 861527448 917544232 628028781 712291755 499140368 471385172 232398216 2322079 701211239 899221207 754583723 793127429 602273084 887896184 390989400 608308347 784719994 93421178 737806221 334035812 769038792 872625685 397913675 272402586 195809862 422024064 243566507 615679623 899098143 746148037 155361059 770156591 648694310 673716798 130979147 769129829 121411820 713179241 238659344 613321803 376530466 444497280 686571513 83410563 619178907 322003173 395367239 717096260 226536397 329114597 993951894 904784601 155071526 769255974 401135147 982499372 740177804 895630246 728977984 491504870 264621607 74750890 283377237 505639567 32432177 958461714 991582088 692239909 616493175 832390277 419951822 934362904 208969150 410419558 2889788 449483885 930976653 354677881 253999491 783748631 513834581 379319944 650862418 551405212 210867287 818981660 157461578 527341740 296734008 402369173 458409713 421497153 682363686 391927870 524752069 984442862 639345778 316563170 987096682 995807641 973368584 874887450 775490529 167115200 583824808 848898916 32140655 122484691 712867925 207259853 427595365 744385070 783297033 706137301 568599948 583454128 884332018 550245851 304859275 274334025 962798888 906669196 407098909 391442780 434009619 723133633 345032135 556302740 741611095 146016356 42988704 968557025 689001224 884405671 670759837 367840936 8877029 908336679 143452995 106662340 462874101 868308033 669979440 909931469 111830398 413066667 491004420 855823495 846450237 535620350 164139285 844314882 845502582 277410259 538459649 377959567 674875602 48487654 986965853 295616638 927308822 123866220 277665957 81620475 98646698 939186038 963406308 907355222 227889593 393680446 272290690 977433831 131166178 547809534 26301016 360174216 610314581 707390870 337220664 691287969 956279294 302616115 32740350 994972305 151445751 390439950 319778943 134408486 213408661 470699060 980335603 910757331 31585261 608043483 983109521 912112843 15087736 59083569 205324413 532418093 165217134 348566006 248948369 456182066 418473243 670546566 9612588 613629515 138021482 120515457 391530767 199464222 759674951 390939889 157410815 863790568 57535946 881156059 729550767 340137892 143770311 438981442 877112772 495449090 749959156 577684047 599039266 859591517 130733870 331544289 740481935 113894095 644719420 362952446 331517302 394451938 885726589 716264771 548605587 724858705 52721983 879204586 965098087 911387682 225705442 457631662 741869839 104045606 990001009 545605269 448362515 408365005 612166587 74100645 208354846 136283164 442487682 932722304 633624546 843937290 872387207 319317174 470366514 446881254 740381352 421383765 40495182 610602783 250259492 897166856 526294590 774769599 960117447 183852703 573865465 420941070 506572138 509997743 750619521 189659629 385741774 952304480 908862746 490400646 769727961 334282259 250535815 987531255 254529037 147891135 692355744 104481068 977958630 334698336 169823036 85200705 713916256 708663251 759245414 864762976 979744895 416232123 543495474 346155755 263994776 318307646 124863797 160295995 851732044 39994049 58887661 613546016 817937667 630268458 283068102 815775343 452626460 352325039 296416477 487197478 56477332 8258562 802805104 645096207 722147480 977015386 956747896 544087890 872595921 587599467 454072990 434515315 724076049 13350560 87743219 840415923 396260747 733870177 385524439 310209405 967740103 755234748 488524315 453066574 192784021 762101961 609247900 792936058 186448092 234380622 46365980 788709270 527058233 667076531 128664444 554904151 729707707 505699612 839992483 388796574 66171288 871203256 437447499 950463456 557272645 298688452 740586546 615166428 371033939 564747838 348829245 495595070 132846052 963306985 385897713 226363592 983353941 35642677 703821380 918562528 63124797 59011328 462360926 413021439 559570610 925912295 157655225 344687388 337667332 4265331 307654010 152741095 464055326 50636639 195805648 907274197 738869377 336304131 203883141 617695636 167542915 504728591 490054619 752044852 878969458 536413813 369314730 806238473 421136241 614424953 88793460 514648705 489552413 774931464 133753472 410449851 513971222 62799808 112468526 191057202 616884936 485871984 748203629 391630098 597360907 972687350 593161472 680786222 309595432 312471213 932606188 388933818 564974945 855087996 960845309 823386418 466075681 117607569 751147798 930852946 576330267 551488183 111399207 870768896 31029793 359819662 8801211 315581018 589702489 326720324 904903462 877639832 79559605 304539411 104691828 269625865 536682828 944759974 486916329 92084541 883100515 989214957 54006167 331213629 963392796 830439854 161444889 856643618 847528668 960435853 216819684 223060960 236971642 934113666 664743243 195250789 869322099 115907284 639370670 496258855 317235993 204227406 264237333 807289210 266463063 278742272 461781602 769857483 80482731 826279565 625501955 380427367 399053789 365976831 706266340 769634755 983506828 814760293 71988368 964853914 108877281 667982464 428783081 585182212 570051948 683166544 570524023 367760355 369507474 248061154 882476633 659000700 323806688 325575072 274004449 725330087 323430712 850351854 101008579 692391353 113269370 433476636 134441249 602750219 368707483 383709249 952387924 388113848 60052908 539417545 781327138 126607435 146368075 504815640 390194702 997442201 1695728 4454348 927785155 88885143 37011734 266317551 909835823 471866371 658746387 829510602 781203745 434327634 943061913 825912875 730092318 426620292 903951915 933424737 513817219 809559807 191104473 395686741 131620350 803521915 604692257 59110754 636540125 361238378 516599521 507785077 666290252 482910498 824958020 175372375 807479268 940988743 177402962 283732581 345108129 805365210 39053758 354064984 634217764 709944551 486817436 75305908 777066523 906681130 651212196 892064845 743353442 218051466 241701991 391604423 970587916 204157148 515803191 424079032 578024647 354926045 783196041 551403799 548085013 855759111 770029734 127852725 345816160 156960681 467314751 107501762 917133339 293803656 403166924 343527830 209007114 562455835 550193259 422640959 267469483 676886566 962384605 704285826 998209368 575813224 787493647 821433839 877727181 128100059 88732522 715585896 798134709 536115228 505713526 216125360 142080806 190870697 690942155 503985766 301695308 691315239 916883876 412153264 818850334 823835974 277382679 933089492 11417699 363204094 932995476 733794303 747835633 393067327 530695667 750007942 546087869 12805134 432378498 242832453 782398752 620754230 724026222 737006413 651872420 298129785 424688867 531902947 935054854 979955011 732870720 445838848 119068678 838762555 403701078 330490620 496549778 823654602 141021286 847067242 175157787 722263060 577442446 749451666 156760152 32565157 501810511 799835444 539023280 480360656 295529509 994606612 898453268 191367828 395291278 253659810 883625063 210469903 655189653 366366354 153506381 490478957 709225597 962053043 681219944 674785841 163434721 997119580 414453083 272847615 389088325 527299942 900967063 561969478 86970199 451528622 647996869 628805463 565129980 402345260 17665687 954539355 89135181 766439507 360110928 528643182 449680608 367542811 90712507 673460814 397394674 728554908 361277389 924635851 181988705 636977861 729020409 43871129 928504742 377940737 872395578 716409130 123607032 504884184 942013734 481407157 179664206 989333031 794561752 716802838 248246566 583041282 571413457 860362812 811399313 725535648 745226122 451730506 857093898 292472025 623401281 298030697 167754258 292298885 805262040 719880455 763052466 344183074 407727574 460061351 516878962 845397488 467168886 492488630 446452973 483015991 567477629 993470418 577594561 709159893 83598087 816967625 388366253 441994540 704477891 242638337 287705687 765328559 463339036 376044524 168421638 551751211 102861286 115543217 922182615 723087003 737487243 309146457 454409591 540864488 161752929 843363785 937246266 782061460 829205587 524979403 558641686 697356654 878649148 958664069 406164213 212310215 893395007 832029459 398611652 544516902 351337369 365809069 113414389 501234604 460056570 396362996 52039197 156855251 687332276 170565706 609100955 351427939 901952792 655868739 735088245 323519474 679069159 362105423 950822089 547091410 235758605 464685790 173851339 652861250 923995421 462237811 840483773 588697910 441173173 101014550 438050184 508188425 487917528 800095634 934954530 915296453 299171409 805842859 557383530 271758595 163808100 940146599 664892078 848485861 354750965 769510751 36026696 81160485 566445406 284640611 339447726 488067188 504394434 488027949 832890438 626363455 176588877 395089818 403813441 529913301 431147222 604470400 413949587 19563657 704082460 862969009 466242496 809915739 252221977 893252375 229573647 888234991 186492447 369156897 619690698 93748536 876113243 142730027 4322593 418827366 445371912 34968307 880438970 977813212 169833944 955856401 673526212 340026028 750967447 418896775 826519712 722555519 313030748 880260561 494182886 252687469 237428068 266666972 153621433 194825679 552364241 148231028 574618605 958851216 172533395 604050244 243379175 633187086 488894034 851469291 660945413 289168917 124749962 475504228 168582466 23912973 51171024 120226270 84947709 307106469 477408352 818684809 640900449 501527178 169109600 122768705 144755184 958060496 923002884 47619919 327149859 604338076 181626112 484188756 423231006 383047493 552249514 864022860 75942645 987558256 327629854 991128152 752642167 242887749 711802719 509139476 584999378 530977698 316728747 793713729 761648439 577559253 688308560 580431919 865342616 50608738 420636506 427567827 401847209 895529534 712386979 212761356 732416416 938055964 106336900 57576173 369935850 698502367 472157259 817043795 37471742 295984573 440141503 877042793 751497240 442006974 777344597 602956110 555069285 307732950 400917881 307264493 782649623 383148800 992718099 757424606 831801431 264521982 394859573 363382471 571639359 696531005 282264769 683636368 959447435 978443532 747094657 468581849 83518380 652157983 711592523 991835654 279061140 395942762 734616694 879563459 415161467 372057953 982821380 69241303 176594169 835844171 360603783 828959956 862897853 918469147 308486336 16575142 495262675 125718034 948751283 442982396 449510993 801239861 647405138 169105155 79612445 507510856 88338966 421815854 466973878 907618264 362533150 343570747 658541205 987180939 115304146 736317423 278678733 438869465 842532674 25119577 276789057 350825561 467528084 830328602 436971862 256044407 282204291 12904815 185243218 916257853 148094997 419334432 388923837 188993632 424590294 665226723 203506213 150510780 65670356 58279008 106946384 585744322 888972284 943522210 312207440 777160318 285857700 614532995 830594413 516255341 797642797 335408047 50879397 132834144 873011674 561681421 407541560 702058541 204278720 546245242 265389546 705177485 252656446 892423698 57587987 877463159 447242842 4555990 800872446 131189178 833752552 251369459 318568319 781760040 621031057 265811002 925681419 769453542 307076379 832654947 933819053 450199615 434703059 726768819 683329346 232443695 134566090 168357636 54804366 945162397 900575153 559484285 461726331 522716819 241680510 294779760 870220260 449005988 747275133 718705831 689713235 719725485 989577797 863556286 736362620 46760781 191557304 461432199 287963134 382910712 833617086 133488483 463623335 542763465 482187667 729958126 921298801 735467049 864339170 195861823 387702428 258878204 424590777 575373482 504397814 712751655 998705475 785595817 547934430 581329588 319953885 838953552 31638978 83259254 795683511 207067628 84294082 247906197 75155529 160394069 317534026 288413272 93920460 282701093 140107816 593409285 674132614 767902809 435483778 536714833 416034512 968228697 376496388 16769465 206301301 766082203 351195735 176307667 193248189 813070438 413234222 780341813 44572378 743517383 306643298 587899124 162282234 678407835 229010123 450113520 437891844 5375611 356558215 456924468 805797393 494085379 324231023 205427043 418518971 112657873 379769729 997452974 307253313 194331288 883807053 633438652 729657671 167451859 766971431 206348020 247332520 783095067 261968021 13369553 293145291 348485008 941492286 160723739 729007634 129138790 48317679 688742667 388273679 255565825 687936097 503207976 661307907 179580588 165820359 875678704 433540641 800601970 662583927 471724984 274369148 71208042 759088303 781907741 966168897 60661089 262440770 919687426 946340266 609305285 673866330 698483863 502722291 138658275 797464675 979996203 774615073 361262434 725652913 747579978 242154603 650954686 340186848 458522394 172776095 987228506 892539201 190838347 626867721 112780955 320895697 11044618 278449378 121919378 88826381 193123517 252298608 295581187 710544969 884392271 466300527 705818741 51312691 562051531 507320860 464342579 667929118 444980254 441324545 217080102 845768343 734350809 749533026 742488791 667789509 662902132 496537449 127572982 204432178 128146220 480505908 41596910 560667854 66444779 757067539 244383155 524638717 515020302 82402822 118630747 719954002 676109574 205560727 21150190 852721733 973171723 676628497 389386185 186174364 570319129 803114261 700680272 129877167 722654104 146187134 545744637 570349668 627335272 731192933 934337254 347151321 372097112 115859889 784420536 808788407 530470841 495043579 63135216 458805542 242627417 522854065 412923620 932742032 216498050 555516754 293766371 964764851 498496605 699268902 798570724 628582368 255160034 827949164 728072515 148299076 661437021 990585540 791484523 172734440 131555496 839864212 117097368 193372384 744479238 347968659 887878592 456027974 793375597 313971876 895795460 421936153 593746113 492554555 25471987 989416752 928939618 954291757 511232390 745519466 345010013 294280567 988113201 181274782 867409120 855163781 729118865 53399354 921646085 711565206 226402605 809332621 725006375 842151250 718313937 760871751 20649093 742398010 13147680 759304689 203569929 667055654 987461872 418345696 203123639 294811576 928018509 716662794 558789974 375430215 939503788 525363316 917348227 364933319 797077667 830940148 405173480 72066540 806157675 261825674 345855059 622760236 899742085 780871372 147759396 274794745 898203957 20476451 292150778 931274704 21257549 431328173 57240377 865112642 896736466 973559686 821449667 282873491 89200533 125213808 403660790 310914246 559504994 912299256 361620047 513692497 733649569 518642312 839702873 66518242 769159446 3454002 932744641 379315809 858619610 235546406 21760660 955802735 705706117 719664543 761023074 29919616 77651100 150661208 732087371 610889363 871769875 648838440 402089745 38704368 170153945 997603572 158403752 861004039 108882554 362480511 136115891 702514837 123472033 950245861 650822119 66252830 923310143 137449238 79359731 675914462 429143006 119204378 641337334 315059618 88611914 834869842 107487536 241025596 792642323 560883056 764605643 8540503 572309702 973897647 244536534 368582002 102563366 160727234 539671459 233884657 624440590 924036535 772074659 809847284 464125134 886922459 70600208 807221768 821696471 2482481 465609245 364669072 474368533 81852396 127972886 113892902 286171678 61797193 229502674 830349244 94308460 276692210 565704763 86290198 570384883 72851175 151279651 578128866 918068067 54062914 782950537 165817780 138919782 140603701 822786570 639879778 794010677 629664223 903731718 172753190 581824975 204195363 691643202 72572740 905923441 436266299 58562709 73235258 87710175 894103097 641740338 706549044 572502881 8199252 961250479 512693159 468985909 630142499 361629175 221553536 870710430 617278668 391048584 323422558 802099855 639540225 536529599 515002082 489900797 763760869 727364919 549991414 958626068 994564585 548030116 525087185 677196313 86995740 807478857 99278481 674406850 197404142 214123611 689278949 99846187 119156755 858286830 554248683 139670536 57572786 658114046 479439677 831847297 1379970 161695052 425135589 16370065 961015826 66005301 948705398 274137437 702912688 288773142 631712376 180302881 230307532 598427805 622915557 214167321 348989269 263969674 329057127 204358398 260567721 385153051 937736382 864365533 245766336 768770249 343791548 963098433 748504781 277783983 690657248 300174719 912872090 279778155 49096717 704385994 716361638 468857257 820367100 892979917 230714508 747828857 968594373 370987112 985606923 185045148 114720946 904917108 756402463 293508494 103753891 734607406 429606216 962061188 644655019 451474815 604055418 420764364 439157183 2016409 493440477 899669285 966672941 699486 452924290 306125173 848997305 533858185 751948791 643122979 485714949 952444131 797756774 439282117 168423971 951872857 834710737 627247033 615131624 991501652 425632334 849654736 756744990 174893104 847135276 466747891 483089 601045881 878558951 938048695 668432367 150619508 401833889 189278146 824565021 402615203 740680608 159713848 269448939 550192405 807042948 308619009 152839655 33860042 779341102 375754516 825682239 436632167 908082678 320241201 743225197 406385673 488931954 946593155 293936854 672298989 754240365 948043668 229036789 189964043 97380460 134189057 909517283 789592051 953016618 125973710 740961705 236570046 313236895 658187230 356570526 455252011 636249375 920485894 898275355 215342576 769658159 247711383 825883742 829677773 194240951 692362184 927783743 216946822 889049641 701011560 596708907 675855578 409790651 359262189 841176409 15695730 513214016 120746331 333691518 268004833 894183927 76907907 770167680 10896782 62902628 105392460 514376209 536552283 853259319 584932533 556866815 416096075 517911940 436801648 819273990 300166789 842059318 504962060 84604563 831842906 219792499 797905310 899717795 922016167 916453172 265251931 382072143 892881000 156297105 383785110 58999477 240785068 559489648 449769115 316538488 364777438 941762026 825329535 642152148 120132604 2362234 786990499 140684881 586106001 264006079 747341644 707072293 512287738 586463079 739420925 272645629 634535460 347417409 622407975 304360297 750124495 11693388 372862468 531201502 914218708 201357443 899489863 387313141 17439625 708467036 609494833 575734631 472750877 574541713 969554163 430506580 126936484 854398222 697196646 543601305 96283029 653932434 540231811 409832120 42086874 669125118 93535853 952800923 446706618 944986861 853213277 114990179 444267566 107773729 218957302 997935286 75646632 512524181 117415578 611536695 113311339 863144839 483648803 683795430 225549844 184699334 874255255 184850981 402513933 388815471 704135114 158355030 29666530 931563446 507038031 619857969 821365438 849345636 34478343 800211427 886620146 74823966 307712983 558430844 141381728 201372968 469299434 94468970 773208149 32063314 342819563 5240512 910042015 458433089 265068788 313023568 902529864 145501146 543233148 595223340 974468725 530290436 648243502 194552810 401080554 188033088 679782878 620337926 918849906 402467423 808031699 160190909 405435016 324607318 964738539 806809767 820528907 153625604 810186947 627187757 61275516 782739595 313378206 642321751 617675879 229926485 399858703 662233398 324743386 765066141 287766494 516052336 243672352 249157572 724125720 630387860 711043074 594486616 826759216 181314445 248289127 973074742 495310348 525276732 204960203 614051287 694747483 576525590 169156264 802545125 77560049 886869382 151200832 198212342 767285890 19536538 399605530 509861174 339476865 529470090 610245710 71273672 501460740 558281044 230211249 708198965 541548639 529824191 433391124 307132245 593339579 468881175 712494792 808001932 159214270 271318418 418886473 236332887 476317619 617253011 304796977 383468999 236039713 982711208 748327991 808067605 673230832 862209198 658498959 419331035 381753689 90324643 381331580 588880831 45573404 524628464 783870312 587829788 306284306 877463490 464300363 27939120 891536155 977700092 263575868 463057246 841102015 487671058 963010446 870032045 917776871 671466130 31981284 613517686 584316881 192285440 113975922 379519703 574701037 542539976 475550159 478503998 243115096 650992412 583808660 535301710 277671884 425462582 792474012 941987863 547778921 955088066 463486593 510745414 677570726 796463582 31344212 604358580 259919700 148284563 746211277 795842388 888961710 960655246 350355996 518972106 239697128 607945174 590005796 343137609 192664535 669439695 773279000 186610911 725088468 144253471 661742167 49321890 21246379 362493172 932008793 964623939 315550224 282667155 540587811 639479498 606848148 773518799 843348241 555870761 610217673 511726846 208443008 350519129 714874734 636483846 327648379 816350043 594729413 515233986 135418673 608613973 889855488 45832833 839243590 931807506 490181580 385546372 947567217 957672941 509313400 620897184 118554011 313371280 466045474 545227256 507692958 252671904 549999159 700301029 754055829 950670401 65107596 700302216 14595903 444422399 933558391 251604504 117046402 53139815 855573105 23499683 152346601 761631873 652232433 521353935 855258991 424670722 312578234 869564460 422864550 424952183 375750810 852573111 841830766 99195504 16213621 606331238 678710212 83576016 134215530 526826249 717812820 793170007 57920809 242134776 227804257 323437689 629212615 667986418 574665713 305838238 240015541 571874160 666890380 845134374 77187546 156259856 240302528 507476848 405832137 677127895 582576365 847745302 921707470 256886275 617261287 919616072 960547253 123393548 384679612 332791805 372904203 694817044 468336277 863465261 244209980 655613794 566113278 151017817 517429434 185831915 962483741 218269834 691712096 349845472 774156730 721847083 870908453 682345813 459504564 961030473 297838073 586084888 211290626 144806486 111087063 326823606 448201756 962130555 148592036 469187475 44107996 483214161 794104212 964260162 188021180 378885849 26827546 710870905 277090819 976995235 398175965 55681637 429214062 705734549 187625780 134033753 231408540 398459850 21926439 550062214 515867805 126763028 829657087 523336333 767276502 260150976 352061870 313394362 751347745 858108779 338604435 298198503 863628040 726717295 369094748 925237089 872274179 793127930 131477052 217338032 584201287 81034859 632488502 786602038 642533958 486016773 729296794 300612617 526993180 224776086 84045503 814258488 196195655 751757533 406203527 161973616 377806604 100615800 551875407 795540794 937807934 620793135 838379124 501291820 189800102 277300039 427182337 311258445 362926847 404324657 271603551 803716324 788592895 682155825 720580139 176897529 156745438 480789191 911304156 667356316 12726658 350534875 794184100 274799988 844806211 351376144 767342020 691404556 761526713 435647070 152758262 956423187 658020495 170154556 944539728 29088444 823498197 443058481 775990209 436665309 404815185 240825340 914525450 684709418 109549332 899692497 383681068 356121287 52529301 704034888 199735342 554950690 508285167 956879922 168666646 732152197 48132410 664330042 506864653 165362135 714109239 555271044 907169188 481714117 267576093 729256965 398334371 690267348 829630803 107571243 602222606 112648747 814704750 724036002 786987225 904288603 161509640 281840647 388364500 545207726 302798563 131940474 919286115 29406520 963983743 314186837 673411955 654122083 80644766 969882395 439589486 605992320 643659759 670747131 261775803 865473505 846764673 487918684 559938088 558649947 641541586 481307564 487971468 113105263 189803571 670668316 9259912 399599909 122305926 419712067 684715729 916331281 20282645 468409263 361671911 966761179 721535404 998121059 78179316 978290929 526632102 676007982 624323357 907664901 580556609 583878829 20228711 927218127 201062301 977377410 443060971 70684234 400844008 177114885 83877660 443205394 642557117 773718543 18651982 770600854 38263163 236800295 478444644 759658130 352830724 352071790 293204824 701776567 501569553 69157833 637991649 987504111 681418501 518739263 36958857 37044040 920065183 539865574 25166618 336766822 622540184 173265397 692553717 43365355 910937846 827504772 720845444 281686530 880155888 339718952 351320665 176371590 623211980 125489200 661757885 730498151 282254377 276064661 773898215 559096146 211285587 575696260 3892393 104137069 604790179 905900505 951761546 506693523 922965906 17808177 791526772 917000468 628145358 441742495 448339631 508983310 627017821 766560244 171640745 456907858 582743205 398371294 616623943 444398333 234957362 258066179 682217760 370518601 257586089 347965618 898264293 634140045 860419331 788139621 694707140 804811140 104022998 60484999 363070197 285726852 286524226 431255003 993519929 517848135 954026042 221970073 248212964 92267356 328529206 558112062 659320058 912406578 202899260 418175698 731057536 368586376 586972753 362527437 148901422 625662907 174423215 107444212 549107040 401131409 959182334 131318805 513874656 329773957 152998649 51967421 736676963 408834507 51588003 727304359 320692949 632490021 322097168 656825070 908479716 984435195 254828091 401996873 903713575 220942591 291107100 393010631 500146580 904143691 414318256 201299849 534084829 952440928 258466703 576300952 62591985 814078108 616297341 530642412 252286826 895478827 697172943 98166364 170048231 902072694 541640664 552643128 665525611 962495435 912290551 854957178 348046094 809396784 726029164 502781296 657363179 922296555 288264760 567104311 963747930 382562911 477950273 108448967 21978091 713472375 230430670 853080296 775232071 363680210 671287531 894655906 499385299 233056775 232707038 7279868 829855585 401869783 518475412 230102130 946025123 334494754 495743762 486144211 89211105 581415560 672684898 832399668 958434951 200201501 788824935 355295718 471221917 553437069 645891403 639771556 436341281 949761461 543687284 883978821 713752462 292775655 103175850 487888679 333143848 421758011 526169427 871952415 716107223 877914575 806081746 804942623 969445421 247902652 780499669 934420180 711014654 313277119 407310369 122572191 87635023 262043379 394759543 414897398 36511752 207952700 86792786 125487506 399112720 736977094 691370747 915069209 64219623 263878721 680409618 935211046 97909699 893435627 771690612 427828432 986331770 902058436 327277683 44587281 898982888 16925326 929816872 243433915 814483769 646320942 90051635 919005792 432400797 826930947 973072312 272217658 756370820 638402331 654053599 965228170 883530082 532717960 297693959 898937126 87730644 233680605 478918010 191933568 316659922 418448347 751139359 594955196 864881180 431179614 285432509 227767262 47359213 19734802 734734903 388272584 956905767 401809591 97415590 51481097 204747592 300934954 852397527 194663087 481646529 212429700 303813184 640232227 826106743 57836630 983333341 54246221 734006842 935743614 654150940 488707408 281262344 67709500 159853338 169014365 122744126 268154194 863182814 942200857 774462230 215297008 860634093 970865538 943383368 846602659 391834436 325607515 344066522 419705834 905724737 170705528 365028949 701737929 637709889 723293548 835314848 434305754 718632168 278841679 546604470 888831521 246891535 831692407 343732377 643655861 647793214 628511280 516741670 7152713 631340085 220019592 129816176 457383060 743259509 275351936 945198142 329623249 817926887 46265905 304362411 336643930 999048436 958234103 455844963 617618592 232355713 910458637 383247111 582108973 635091936 667990617 384883336 751807887 133494669 804708329 686695985 155639337 572456952 225378714 176172372 546364904 346750658 323253726 738173560 83635880 284340260 508716931 203604820 404813268 916427998 26147422 25791826 554929778 787334808 509012580 555333124 838460591 63625911 769595646 973283668 209951652 812213838 328283627 948948019 177733266 982979710 842048081 462153924 400606127 430895530 593695634 375982867 983122539 939491861 898654986 265923563 611536836 851178622 315482583 741902832 879513554 20541605 989118964 25139346 722603769 214712161 292293039 685232510 615266587 289161708 671027620 314983376 547894737 881440694 214056270 306697677 564461685 154360283 311955043 217370400 392589275 195288082 486511487 332599556 971215479 4542093 155641675 988813284 157311714 832165879 189671321 255942180 138432782 959497839 10360609 256842266 785518158 875802808 663045645 515277329 862676411 522060933 909829580 590289204 186665441 700824470 602001315 529272259 996944026 329196617 795108370 383150051 365428586 751754577 562376635 672178797 853716031 98598932 337049552 193011187 281248510 905946524 422246832 454615561 368631920 494187267 102338323 343366062 40190338 856089150 274855425 66556447 309918791 392947432 870065522 859230994 13028368 331870192 486144359 68242547 710510273 138990677 615491879 159928551 902051438 455131480 328013201 199690592 670012077 695605500 693804883 673930999 937584280 423490460 118021997 256707638 928208975 434574971 285916564 778938443 217905222 904551532 646585202 667747421 17612754 927492869 906640277 987493497 852384664 810017069 44889620 79277896 556596693 535687510 308500297 725396241 469286541 380281010 47797347 547761829 474680308 740843615 983492024 699303593 633356132 782606830 791755774 67713047 75542054 147646498 654295400 356021260 114047418 795403134 721174937 610615270 907976083 472357653 935009733 164971780 67024985 380343516 737834128 742325607 906349713 302322509 999675829 917505025 592561015 606092535 183422760 742732969 256473787 472630376 979566651 897072207 6813433 485930841 299988334 996130028 793384775 76807569 285250946 281608512 819932843 906208 537763706 559956811 820445288 654368800 195180346 783226404 424183639 369142960 931831841 336522240 783784366 724862892 207769244 181786139 874936010 824027345 109167138 981881832 433486826 43088585 614011064 74674637 913015199 475918005 706846142 663078307 385127113 91324635 789074757 123307394 263201604 251563808 136480308 726715387 480669756 506147731 457665112 338964143 373757148 872600779 278593619 255234165 694393390 985555397 533980925 109326763 629385892 101429152 902495833 229099779 999931937 814561103 156187714 732703702 236015888 666259308 975485268 642912138 775366343 666052935 834467447 507173770 326134911 469073880 71456741 993478643 164762053 930096958 862214008 5996981 144342885 84755084 511304746 107671384 371845903 93966633 930620774 179460445 862957406 569701274 134032743 501592465 369401093 306890639 747927865 551547828 67829040 510902912 743072910 374008587 714012782 362670051 453659835 99065566 931022459 700868709 377320225 575318388 876003127 302307336 239973763 128389782 377259071 659516788 858848654 209902891 436905968 125914312 141423132 921375170 516490390 778522513 633173694 579220407 827212000 171023453 93227318 446074175 463383090 400562738 146257128 31807125 12386943 728989637 696350804 882970505 156996951 769829472 870279510 270899195 130449605 971788316 988668282 521514472 123905857 827020147 466911567 775046375 14611479 636557178 398636090 276123417 686454843 697307566 202385784 787473148 354364776 859505188 981159784 584779692 401127353 408173214 476771022 478458345 677536253 122637345 734387557 988684739 965995062 496277070 242863235 22999690 590946278 142835358 401171864 928925164 852023265 54612795 834278325 421410787 915125767 672608254 245747862 371312952 678405866 787806200 744526012 735737774 665336120 791573797 79931657 161794350 375774748 716030988 834377547 12261003 55854971 590720069 894946660 768066316 381828732 927196557 370968841 913666904 219522965 801118156 383054045 506653816 758490619 586759615 593535967 663952677 771690868 958660758 762556057 664506338 509117345 375359119 70491894 853698376 700419778 103144457 760344004 341759599 61902083 293067753 700982153 294841555 978113114 395322691 444205417 586742290 160732707 24069698 812580079 977473158 700434183 501731077 579973144 269950061 42768547 619311193 709401554 7089561 286757101 949613738 550674883 974620368 52506268 888523167 823095540 369913937 739256680 330634492 701112202 156070348 663614367 579411139 710242995 469865987 250712146 712868949 954525032 701992076 980270321 972355674 370711189 856117733 254419928 347024088 573150371 947908861 937413844 254065537 873502039 55692231 922777618 637413283 962582334 830340126 896801999 572084287 345494629 435457318 898049890 103630598 74790288 560143199 770441178 108722695 5316345 906546200 255728367 211942282 878943573 672310414 866558963 923483019 905019296 731889543 918544734 222136932 338232100 196790215 235741329 820759028 613297284 581664420 427744622 931356407 515417505 26910960 324715765 361751863 629165498 415702535 15121840 657667410 859071295 679592933 879157096 675900164 763934860 189698205 173372525 170677846 581393086 665988665 128652403 603217276 194211477 610845072 933485338 770183514 565393352 286596714 146595526 169640712 624075132 342409969 485627121 977645021 428362217 192338204 701853058 214342815 422171776 688232787 811347941 756269611 44819191 118339847 907837834 797664677 320006659 743747429 829673687 919138591 988830192 285372274 772497765 529699978 436592371 303820542 288876431 157709678 456237559 644306862 645166881 376941522 647526549 214099867 879814424 844446002 598606331 220679891 951940170 508049401 146886338 279859068 450763096 632332616 392094727 783371255 336725930 978581907 267566653 807931341 532737824 699050766 258146953 727088750 523028870 630579491 719657937 731074338 819877502 539009828 82319155 125200085 212549329 542432501 323048113 485705057 480711340 515489664 848045871 293841777 271907768 186004876 889220355 532218389 834291913 817595637 678092521 417006 26041321 556661604 897306423 184433980 666487135 226254257 305357837 745109555 824605715 675283492 656026642 318340537 722568397 985401520 895186924 748887099 618080789 837453015 503500294 746181461 54238711 571927074 654896618 363360366 652985523 403066878 434114888 9508757 629306027 47508030 564730706 135945246 574606572 36581787 195240250 94786324 198797923 644672951 418152912 363656813 224711696 512485420 662466010 578438161 486583424 601632038 208647378 519057998 59216159 988785744 851603816 394880706 737962143 62750411 697924138 237438705 557026673 792573154 470345874 913214095 690065244 316176532 546840959 218187138 404425374 921337434 167797711 912454397 3826943 164860133 795867601 195707315 833849620 151891203 133996944 224620681 427778274 386296191 586651221 330245572 20093727 411913828 400653301 381754477 79655745 712368480 79686333 86346499 945255248 511807182 961325767 483305104 567839015 419206973 885831938 191213480 628378537 821309463 131910333 618411556 893063438 434700993 804742638 329667410 56580668 575391485 282825183 420904430 435004686 837224113 524928151 630562846 105139853 517373855 507547718 455825445 4000863 204825092 808688376 671578551 648575955 327835542 292277767 746920397 325680777 369545762 974926736 998843782 417010395 257663787 362704793 203504753 940911182 574206372 567695567 162165947 661466530 511269593 931923673 57906384 91902859 148575763 738492056 714053041 325054931 84706386 919243336 688114909 525835886 440380858 535904180 69274880 755419806 899835274 48217002 408499722 677824197 300976595 381452938 984773661 603367001 96577582 686271118 261695432 892149722 663946561 758552852 57564714 272742531 229677595 529904661 707238036 537241235 146108320 959029192 107449509 170285648 734948123 817228903 462978949 595998502 674227457 177175736 185590703 290848319 403047072 488829540 223920811 611167901 42779024 352162941 184596412 285492217 952134119 633538363 460869543 385969232 60232979 292701034 464419035 30514510 747378894 62139324 918186512 345089477 639196962 86754603 63857774 17395190 245926613 307061881 266953420 85661521 488459412 416147804 190511460 203136623 661549943 412823190 366400453 61801304 711387037 433200345 526658308 671778039 406689729 320931400 602567006 265962868 565206570 397626675 354194231 897260464 802181288 540147498 639703994 550522156 551676554 136610247 150756333 442623688 772481526 262670052 449447641 678761004 132890093 270473324 497178732 943555636 796281578 938783584 317285406 365428997 189597118 638613100 32255548 164163676 524095139 165157085 198502440 331287963 112471161 331382765 293187252 866315053 144256314 938886424 132255608 534903238 776674917 135072403 189364800 911975435 495610121 601955408 971111138 237321819 398810859 606051013 664617349 18174521 227629516 434250370 201868405 54554497 10664036 645528572 845899624 995770779 237421602 722447440 983225592 318068906 403947029 52309475 942194139 971652366 62307967 775753156 901509794 123089655 474903564 968116107 221431735 930208970 695833887 558214373 860773890 578886953 998074901 899656300 311398011 114207401 389560309 198815549 563422092 507343198 385394830 992852114 511393119 103331453 422118710 845819409 209860429 374766572 719344142 971452345 123003056 150981352 309307956 942713272 538752068 505792680 913645726 34305328 662731193 458544451 716013905 585406315 635927748 909353898 484572621 648843920 790921418 353344134 983672748 416420772 607816519 572897178 312479393 92686788 197942775 234799745 893679009 982399498 377752240 96850388 504110504 208250243 562618283 747959948 953284024 360282456 931350879 434847127 380263933 753900359 862012879 877746108 318728306 534909695 70951435 533529386 262939460 256275698 309374101 162211599 351112621 391048590 596890125 579531602 257010509 335638678 573529319 212218881 843121929 578411813 143805058 511064464 370621377 803799277 660308193 291840474 733479019 175993309 579868171 994309826 525225577 209575964 5554642 938831940 546888063 123249833 172520436 989700522 960873705 827533608 763699044 117620357 877728674 704289054 606435499 560451560 277765739 7833386 631269023 504165534 252887328 360540366 820604917 542581126 926476109 661128991 999908070 862997239 259686803 763376706 316353116 861295417 289239022 315781692 690372617 356066846 550406422 724808161 257048597 478140511 635710744 666017034 28232652 849928346 391231487 122662077 872959466 479267287 776846128 625396179 995781201 705784310 538877612 753808009 608632071 160117326 512445482 863471785 697928351 43927814 226142381 937601770 606063194 421585587 358317143 428391472 776232116 936708596 792138025 35749314 540750490 37736360 476738063 457813366 358935376 61016118 202314118 553801361 906083420 430726162 351678466 115134142 954137495 554455281 81961988 704712952 604896262 621795348 703230987 508937822 764896170 856521226 614609951 528105020 719563210 544450787 293994966 824665662 831198268 72290096 905553037 611191830 22690246 449869422 437266240 664299596 802118606 688558655 19047962 42876862 224675981 323242546 379253310 180227932 268717710 465326269 142573460 863448667 209983359 753331587 433277966 276094329 316301224 992492021 810686228 859262482 80999687 937855054 739855431 910449331 19600919 334920918 714521878 390115458 400293144 402992692 257818575 481254267 743253201 909156967 686378022 523374389 518390821 472180433 630859278 222545181 382043060 574952597 950957679 101437694 296825405 628605140 899373261 732331366 839322997 884631915 237483371 275176280 363580881 436314312 728148027 89547975 629003240 451740576 47694960 136706005 447047629 318750498 777131825 40445733 545582982 331333498 810125705 370155164 298823904 968955213 149440728 25267150 788465728 941547355 311789590 434396994 815749174 990013730 62281295 693763671 40021558 510448814 604755005 987974545 138265029 764819266 473247847 592152390 487330126 388474719 422210207 634655041 527859143 313328312 217379122 63326222 10352306 92713470 191999770 354522286 146338159 9299908 348716155 721304343 3407439 792885786 557872461 384551364 292855310 26552562 534051010 42312124 178018759 145444739 589438380 668827458 871733329 754253286 37103658 864398876 123386390 684338908 739559197 487326429 383842672 647797775 971423151 394085722 184611061 331964587 721972931 320104933 423177819 553214898 528121233 422623178 452681789 903541651 515747639 769570456 918751387 466583753 855643341 157623367 273772674 162006563 530827058 631388435 639935962 38169316 963931582 177808140 724716450 21134524 612221531 376411861 518877984 690479708 951234068 776225819 235714566 756898007 440326611 694641053 70914378 896173728 650829277 507588490 169051978 811959624 14129827 753219935 135190754 572970576 939471908 762035904 984654388 1815182 146939988 733585668 718184767 698339347 202888594 340696689 357902486 334267759 63599456 993411320 731951637 964216632 706193254 921074260 743621990 754218330 926906189 923398626 303748390 684906464 522572226 328263851 95623208 670384748 748248410 728746020 539071635 696736714 942468910 902327606 478740042 729395994 711514088 92754601 348691007 729895422 646251688 923884280 484067266 201731258 157690781 757520761 586439779 345138618 12319067 165383254 443273086 297224821 319418533 746881829 940135620 613681749 493003787 702351956 685918527 237807496 218961111 699865580 939661725 803780218 460795429 666202408 480055542 261969711 588620257 220048766 438327177 841054939 35062163 335255445 918546071 129338994 205659788 294370373 678376707 308124753 473915511 890525561 966188539 862331695 554525697 121581021 382973328 737380780 533171554 943677659 182958189 528187682 382622109 221779399 824931362 998720161 110240254 451241819 522406019 74220447 91372542 883369183 76419308 72815447 458675252 681785187 973239211 392858138 599820737 698198966 366184482 489656578 851450859 719452179 538582263 664864897 529098347 473534267 797607135 8272774 586464012 969719371 12130116 506188392 505748635 88177084 7489115 156527701 266621820 488743016 797017507 434919685 43073205 342450394 969914372 386916711 59131640 362061728 35617813 356475218 637685499 438871189 749668839 254151280 363874847 252007407 771213741 552649268 515035339 772496260 478726819 693157583 228748277 37587764 205856104 517558602 952986462 159018813 228644068 336905730 458034510 763926675 425478859 351359343 719637467 752061431 70102842 121419075 22907724 100909493 818842617 860615530 128747354 194788578 418676682 757252904 408498664 578184245 38859161 865894214 484296662 332636349 2285781 594037691 275951846 418782495 317128879 142777680 230813131 427386482 440941686 753546571 748619918 380689806 475577050 182060423 266521360 785297090 761707520 223309677 250749735 157205505 680129156 683051020 643140242 558612065 369079791 941793104 168987780 418265359 990222746 387906682 250617627 689632327 768628837 944281583 237401377 609196597 337965109 333415141 368476080 181661210 512519210 739660818 105966447 115908090 233829592 841425180 149690676 291481400 503267615 350133326 457672033 558304154 101973424 916505780 648844147 626562420 199488000 80410515 945603561 211065889 149031554 471060209 256302740 698347147 529238073 45288925 656425874 161365458 602878663 835872123 944648165 666348328 184600226 286856530 122457771 864866966 919264228 969598281 360190785 925504260 138481862 413344277 826482147 57594274 732491923 773393834 234913984 478022578 724001325 812479707 963966497 661294488 671031707 407000980 224982583 739487114 609835239 175145246 97797018 164473670 819592939 806854273 682163554 62728831 849124869 248808088 674323272 95015023 378742265 742120003 599520659 841905949 959981900 696230331 169809455 786013911 804004278 386368680 134364655 452297618 786212243 225385944 388897250 980506310 362336440 747560301 43924588 546042427 896451290 549811668 352485943 157752070 678713418 892169664 233355659 117628143 313120046 339994428 816872122 238204831 852067902 734925651 860355024 859609757 372132509 195145809 952166040 629487205 251099264 788769324 990236620 216838424 116394821 69639557 915858879 573310709 273336986 40320132 704735582 225329305 89905913 923314872 696770229 698796449 51542656 355517901 408842291 415802925 172823047 20788032 858848041 652702967 179371945 665585228 404169324 238492376 920031652 55390213 900927027 292497624 152000133 722146667 331277104 619644157 537934806 487988716 810388836 390565086 151257616 459459526 820997011 807497925 167604925 30937683 632562292 513291105 535406572 327598209 530499515 202047194 305292667 307634949 356548848 859091997 227581090 496484102 893193819 850486025 757987982 392898510 921039720 7094672 794481645 312924298 23339984 142599106 598266581 288011802 975392000 765502141 864340042 234286692 786407625 179972833 361130855 115199793 408490159 316649619 661738041 922318642 754193041 96075595 899506905 730566268 800936279 154341328 178654144 222168914 406728019 733691927 591522486 769701346 777216025 888217219 439117912 808724868 79024167 407980007 317243149 825052358 866287839 705788161 511971348 483432114 524164883 631635178 212929332 163923879 438729522 843632660 552924259 783813556 106806942 129098276 185957418 443385915 360254638 990016090 197622807 598698694 619851480 601801229 886539566 611800378 76719432 501062973 387390087 42325995 799772776 502507582 423021982 421739002 38944952 280039759 169990481 723799501 991718631 592961519 224484753 632104786 384322728 439937223 130479620 161575896 425896516 848508806 810798908 441872147 969915631 31200342 456333071 15684904 209811850 869693831 886388092 876808468 853770125 236222015 462652574 560334341 321241535 760802452 750978941 26119306 30578908 106421335 100856928 670755116 360533862 697630067 685182084 549488080 982284043 774804028 898848073 157984149 82539534 542015149 286526879 894966574 239951949 388837660 798407633 233268988 743850299 372727272 707925083 878968504 606140059 135923140 156993839 281762161 641768728 183213687 970837526 899308730 687145331 793634913 361858225 134434770 706228092 100242007 181154393 209315724 964056965 476512217 121909857 590239851 980951294 551742250 424960606 233391940 63923841 57303283 409717777 645269000 598502882 992785227 670824288 117910018 358605849 327079937 633963770 147469205 226802141 942508902 592618710 643602792 857508822 160209418 670586913 235541195 32119721 150379085 377147715 751970917 719542652 893692482 611900670 669176979 74498104 750668323 417149882 486794629 145613321 648369038 842237896 237805552 85232567 686037322 99509032 445770470 703287942 259112138 723363289 663347803 514829580 622840890 752985108 797108222 252130452 410572840 996288815 654653724 689233684 618054017 643604979 53584515 688282151 698285949 291804375 577423541 82289575 524265088 135760642 694626530 670808030 883392946 748711235 723187384 361456432 748560013 641812897 84069381 622031726 817485682 965746887 308601782 224045514 400412948 800220515 282230323 206719900 731009199 845489906 673149248 274940453 508516883 251886383 69895791 126778179 500965508 221372023 647053650 29455929 511166348 469851681 540735782 513908518 956119071 421339642 235844836 414117109 857514347 817339646 932433347 355836930 243019862 496443423 944195102 182222276 549697141 415862133 404101853 501046856 403873060 143106892 559613767 896221665 401223671 751386560 163756614 646007761 58187937 265748709 772325984 335479642 880302147 418789395 59894945 930417099 692611360 706790981 151119079 403169178 586858355 53198666 867327606 176974653 334323362 351794683 515799571 361709535 35708352 420689203 811669303 517216335 135819507 225983843 787887930 466138946 194005411 161376582 148034889 617657070 984377344 854374320 751440732 644860939 867967542 254027383 115664555 801557223 409696936 868734093 162510366 368761932 10405288 229272050 317925147 963105633 545024948 478166956 430909873 65357781 602244730 266858355 796717260 336646119 306132092 964737149 484930336 576382548 185087256 420130513 519791929 978193120 455871199 247396191 234494057 275409569 807592034 315614075 225127021 121086607 635664545 538149695 398076601 392932324 399395971 36273352 795916718 491550192 666487557 230207448 627340996 250736481 572851490 693359470 244259254 801140046 331213641 555969570 823777570 519696485 439691578 207060374 520345986 140361332 875735869 396009186 363159311 787134218 289140997 472725736 475594495 480391189 649822620 286850645 734054721 365660522 629187867 296514879 147292285 462809310 644983 325747184 177886944 305691025 614538429 886382434 804848143 481483118 519698715 701181449 215444619 896803769 98492585 421040913 585763685 256100404 68006421 572801292 762529843 485339725 28888178 328339976 952330595 865387125 533953992 20138201 197675166 234226618 202513939 10251493 574363417 416934004 730600761 194091354 841889248 396698783 667107160 725382235 657889932 462439697 956818864 51015624 712504646 470545812 743754755 55688373 911611736 451401639 630414406 204835344 117501708 870112464 857816361 384331988 758505569 893468023 432827293 182407183 722976482 614709042 294144490 23492159 573059362 492875726 143994500 549826381 821013971 387395296 943765278 980050276 668324031 90594563 936999155 850893584 57805493 335624343 692551246 673033243 430099255 564012587 265194330 958041897 859359458 896767830 581342978 919330816 135660228 648667512 624726257 339323442 331958390 145568451 183370183 313669309 282201065 862915154 838671409 542990476 333862536 785190302 521687276 136228221 663980367 248061781 862322992 502631571 677252277 428852131 201932604 133487617 987792897 397347402 112298673 903509511 734798401 98523504 60529309 941519243 10778283 804358709 226538905 833330612 878990786 485646893 526318599 223051365 395119510 647442239 271653442 391607404 880304571 537432224 259434818 919791997 636399950 933039390 37948771 46739561 177626269 335918133 963654147 969621463 269684673 524114245 221299688 807980273 609264669 582157496 830405949 15547441 446951990 583025914 328554071 818494407 77788799 344579230 702621701 772524901 689556532 652293737 243832888 914850294 998022329 683403407 495027475 419354199 150865027 282153757 421493101 326125830 574170581 620476828 142717636 730829567 425306149 940792849 194477107 889039593 776273557 859731684 644483893 622550183 441919358 763612845 127599935 877171278 489361400 851087860 761447311 235207892 694666800 595646587 238621520 521557059 171044251 973756607 671963628 987647420 480544280 745435275 935077498 706462172 373079379 98300278 837467011 853115674 991506955 191598654 569249701 902215766 85326866 18413454 331602581 315342515 259054799 472772798 112264349 902670633 24144363 271822174 922102216 665634533 194590828 80901588 69762568 286300989 21533949 442725546 383105148 275390373 693671494 192985691 510292241 520214487 131265006 355087428 519392519 711916003 80494611 449817855 3447402 299134692 239193219 742438189 740442014 94756663 891643212 431833532 288405322 159161356 867064870 591600262 149738808 14277289 299739065 608812027 185051226 167354173 624248762 565982701 138908142 471899472 605603768 969251169 829060068 365545830 922413342 352463843 43769702 929733854 514065158 637844596 799011580 768499347 274029339 686767751 878527829 988967844 478617221 82768941 740854206 446141246 910857606 888022688 488169849 971451843 967087500 839824782 378993064 801877185 155636959 762387185 62830298 630225193 25157183 516790155 676286468 837701095 897667610 62934855 5991287 15978439 883473631 644319788 860758072 587899664 835408588 492921969 340989163 91622187 99241703 675479069 443213443 92045508 90855350 857875000 845039655 472396077 957301628 393429971 21505986 298992284 468617001 409392535 609774299 583307478 1936327 130769599 184712431 795763595 778713618 216361636 723795786 897968820 149956082 448054780 630248893 624852698 619493547 668795544 488190826 976224872 568000403 547919423 219321729 752599262 648293742 88282366 762536702 17016637 749281068 482240550 344216654 637223248 988607242 577020039 189837991 765061393 348462661 345780482 693017290 108253638 796187718 835670206 268066404 932455304 905038632 79512809 669415623 49321436 879890001 486728036 430305175 546480430 859025926 654787953 819765516 907638817 449405773 262607714 80496798 636676669 391304311 702114477 635655847 861494174 157975840 416756919 280772400 527590107 822261667 813964276 637605142 367922858 304769212 442727800 901624177 708018643 885774957 248273570 323462866 947133410 680381406 921134802 19582208 396258961 363957841 269533804 701405660 327990589 349993932 32984869 267622268 395693998 561115998 501493763 674281070 932367646 891180299 262419588 194778285 652194727 993495755 894134183 196437780 375239782 387322348 84006696 942658366 98513501 285677252 627150936 491840662 987227136 915829304 247781907 900362832 240756099 362345550 823796148 895855865 914605352 999351320 818422444 551426304 213573943 965766999 404743669 797007882 387127244 711815389 805455095 5631514 307549659 715863885 515986773 36274516 452498910 893401070 724995664 557570193 186738366 713708113 376352497 67513314 83809995 901381738 448303269 743072721 38646341 549960060 317606380 546569159 892131775 417911052 645533504 82474438 125742518 756468009 409371433 265764238 842778870 165584733 570031314 618685963 784557743 851257288 867292885 687647340 734409085 591138550 162708151 707183856 600927751 587596179 999342110 279058382 868204195 297738596 805987173 160565558 464547811 889669178 664904223 199535999 53186252 656282020 331158912 946162317 786697806 181548872 252434268 695751502 855243691 143131556 793305731 308176806 364076836 88760756 660422358 475783508 579787950 23858177 440545117 141716969 142555683 493535405 720652659 52468950 814988648 547975748 817998347 531568770 422033931 168753363 503942799 72974923 711534997 813314572 888344316 293862414 301313041 218412008 99138211 873131370 596371360 742896192 258365939 604653006 596716818 219413597 994677514 639217887 629164975 372277371 193186146 31067914 19608289 165680323 794409489 328374798 308271901 211670661 788110007 650741368 415623062 399859216 621866688 304466262 144900416 102645679 591667559 266647212 870359920 302807326 891558636 213886855 934876633 888065395 894708228 679083693 159065819 62859063 504524963 760172370 556892538 847508252 570678496 464102001 277670543 170413291 350197768 544431932 377421935 259774634 402370318 911727507 228159007 150980647 899302029 863131605 659369464 373662232 91236267 752007075 905209107 875809019 192183501 263215619 461338947 650196689 672335735 154471716 967234094 790807558 268988874 703965674 705810537 805934054 179263699 190387116 234280932 765040571 818693954 2752475 183183974 65527696 304609050 480858741 118051076 887524199 394459091 54022148 446453482 172324650 401559142 763807492 289952433 838336831 441404350 653309783 742582071 837796794 744600863 213452576 994165839 524688485 385200673 792654651 604794810 538035760 579436161 955035295 134830289 696810063 265813998 462340716 753238951 316545850 72184187 731840344 642152982 929000402 988894499 538571695 357615286 501141827 251429012 182834444 621260258 921890185 136866263 931350792 115822492 866055444 681781380 979657876 935686813 550072353 185176073 463813376 712317907 404209705 735865561 14173180 981046357 922085842 43472081 276176014 351779403 75009345 86347702 744978512 151546649 448203659 440826142 588959739 569900363 640339493 628602227 251700632 785235883 773307281 610871683 379781599 94864732 317161123 197422280 791553782 573652093 973518673 803349712 204810189 629659710 745644746 340832838 233723130 907722603 662124079 268715179 303548393 335178803 783431174 530217457 671488338 328031446 550245545 760569105 359756723 795328450 283360824 658246065 167030414 394516229 82663929 797569354 944835234 431407350 271240610 468926756 713063068 514167867 288550604 586486726 209925705 780841903 344146592 90990614 386958442 438505453 519505290 546407656 98627485 653916027 517997885 897788016 21424362 839760535 568833605 868395547 421691627 765579395 558325114 879812763 827694277 451780616 508879220 896163984 495504004 122767456 194427393 969304265 359186450 697591029 635618775 536384723 748833630 124356385 103905183 339586031 596884118 491698957 614008241 905142690 744579220 3310922 902200833 834524862 590092598 645516772 602255357 445836525 770883521 337171176 412606634 698561227 242483674 420967462 706637726 353359088 118541515 365875467 872305580 141415850 563074969 220203286 514176707 916618502 137376912 292853446 86292142 534781724 904308762 312172644 761170016 353615223 981455201 373235421 507201595 977265312 389930474 222630078 501543318 184454262 72539075 732988671 743158588 732880223 421857766 261866593 595902819 59722308 947521613 885516747 336851697 257978493 681708517 883487147 858586246 856167143 102058625 885030940 695505687 793680798 79485988 116043669 921936948 358055982 79567675 323008673 416886084 402131670 49315630 521141509 242146715 906231172 846211443 170436818 7209399 57189552 794493886 523634650 230338197 311295495 450426363 167366316 728067544 246408575 350453979 176311632 280658910 537586024 529024759 588259951 186457952 219920215 967881106 605786226 549820400 228668274 821102574 411847867 458753426 343370247 901584140 210672091 477344378 641917902 315525171 719966358 703383768 873255195 895883766 211278472 393506601 378639159 285863477 82189514 411556359 9475328 447229873 705276627 211513752 699461270 61872660 246717991 818692690 353542015 481133209 218740853 48926805 687738498 755599363 324141040 581485311 693287861 864277016 36056079 598196131 999108478 126340401 563672417 755173479 806973664 626282521 562275386 966515711 834885422 352273749 846280756 736490692 385481149 196959277 200663711 77329701 42600849 988643302 624065012 385371280 907946217 528592086 526560865 415131462 725776932 546864191 406051709 538423991 952264572 542212640 288134740 972077509 979728702 585508599 603230183 741339977 592428828 444803069 383322595 463562708 10897478 690919776 746949795 710482923 613225429 447954339 553080023 26634927 206873130 223834558 729740675 902439358 404816613 568788547 633818710 635441056 681080086 843916374 999880854 801023349 105959237 738790005 827585062 581276509 728778055 935022321 103595983 339571015 147916447 500016035 244899725 753766983 859893733 965926182 217510071 750566031 109849604 782274717 882604712 599868623 633160432 375677087 566354793 33430548 569398880 313525373 377724544 178357783 811350773 158866863 88421178 847466331 859601384 904821415 525986466 637160929 351638482 163593670 639676197 24670083 702266971 670395351 267811682 925923188 803873279 2798582 894335805 137740474 28921265 156539133 934384611 158670253 187437770 321071103 758334549 555027806 356065363 658929010 178425091 974876565 635284984 178953644 847324993 291997595 160416383 717030817 414962339 15485310 146137927 159765023 827640610 398485015 778346115 62387141 229111169 812726812 33780106 349651638 290946598 811241506 92366819 288060486 508716667 628836691 247975669 497722077 750511322 166578536 141986966 497768748 121337066 42213173 613639976 218310044 532499018 22117291 903361179 913933588 940595758 158883739 147987547 15135041 597753724 89253540 177562791 356696633 931363947 471436232 758636521 608036499 865645001 788797700 139739080 426919297 128117831 303604580 754058616 761349175 490940785 797651041 762301572 368040210 954705120 410315465 360238173 772948312 693304665 639156057 718416587 163825514 552541156 302603363 65311320 275785647 597535608 913070737 273527772 117700592 207037066 363513317 718371754 605422403 130722512 416730721 360910242 951912300 110520347 203101495 677439027 643839511 295882837 925200139 122316915 467979756 244721773 906478182 950235880 176325687 964777254 512651967 139665256 158920256 745658474 933104581 882743156 746195293 326712212 598330795 624425656 535627746 241517068 916740318 97370046 54115438 5582422 277046194 355172469 216407761 697934584 307678346 234807012 643729644 802566309 576610197 462071213 29854815 304022711 20230527 7062308 220286595 666447239 143500321 519454847 633491630 171943067 644609760 564601879 498412203 431534548 614269094 139033516 73775902 267782961 527184655 664509625 62068745 615373484 253680013 454194725 260322098 806437901 942536296 164640978 336403525 221521169 232271072 792993680 234048915 234553987 580182681 452213293 198585467 628581806 312186974 496415753 962942716 937375864 638585296 81572784 330801803 605206421 861503401 29707272 416033241 460049355 924825791 569047274 462280149 895435336 353602832 830524668 386303221 330316621 429536443 844471851 152396623 512802670 998241944 744941581 655720981 88091272 903153476 12978749 103901077 246394050 967718848 935204788 545910730 456620826 487356676 671718299 273447681 428109704 593689327 549226526 139660657 519274749 730898638 369852092 14869842 83422583 115608096 442436080 1787461 358390312 270860761 916109134 318566016 533313808 438598089 640527655 96582245 177317296 555890033 48523915 84897481 390987432 815235225 291274381 57421067 481043625 66054140 241259966 50019420 286377746 368489992 233736081 476285909 84417654 997470010 573054250 207626152 152619228 309485510 321435739 875352254 254280956 224586580 720032415 581406731 59874782 886678032 902686118 813879835 191874596 437059388 460105512 813715945 935680263 48515478 558713950 658232960 471215123 670376351 580544153 527287404 775165747 588396666 331402932 544635192 173689078 747588269 687866873 972686644 411756975 553113320 265302042 627681425 537915833 650062842 778515100 53231474 289143034 771044061 920276139 22800822 737228041 496368603 482335419 317757794 696213625 333647056 226123025 593187065 50414387 650893315 528641563 112588516 143974098 239878213 624896047 498876350 655521652 450050726 923856561 884347011 45953748 680453010 163368878 524726922 665042363 816281377 784783566 943278978 222774884 703828696 953530902 32538919 45715225 437581739 28094260 979661374 52527740 564174523 203255791 72859027 44061444 331491779 195729825 155986932 817488010 855277157 600819748 320969609 180083871 283297899 471735171 404081965 36244445 632312954 745518284 400447858 98364973 131185654 75019975 745088919 57222688 640781166 231905568 924359052 582406844 746730483 390465725 346717162 875447552 232461074 418265415 260748439 985420645 18004954 147269130 634109258 325424749 98320677 325895484 199280591 491073535 961353963 611523404 86201368 447429442 680287063 481117170 788772331 521759136 878580302 386812185 930691726 656552394 915686025 299003298 877726721 347019698 539203576 76469356 729536366 797896662 441716774 513138618 850780314 214778690 268613140 486601247 905083576 23912178 999950359 573618520 798046952 327883239 922648974 69694424 196082712 723418330 623899379 498964538 660197004 152142691 172741735 486044309 479988020 261164164 177478103 104970632 166080628 641019792 435451676 497538117 369802050 111744214 543611598 222085260 46377581 666213552 239509101 465496120 398651121 609780307 356146510 325639382 86500724 148058005 39754688 550073927 692485708 408753226 264589981 623152476 316221630 327173980 933302633 744158763 283688498 908220603 882455758 841410662 650287940 346268677 455366724 561542325 80856843 395990616 367929672 501319366 422750035 464587411 519764733 782379264 665955039 787021447 665019634 107720981 232528506 839690735 169960103 663758368 328522414 619860143 847968379 638575660 792102869 230699383 851078370 319969267 828819079 691447979 698009687 630049994 665371498 13777758 854190358 715492716 97949724 764771530 550102993 862622247 52313605 667939345 225785745 281780923 390019095 90753325 621615320 506112617 336749484 375849664 825056217 978854042 13596976 701010391 941502893 322532538 768043090 40917924 41200732 130548914 504225009 422726077 328393758 463787706 819194883 696610531 887461011 373351271 37861568 786363550 622476071 330495095 857975816 163542031 923725332 120762766 397167629 807582909 50404047 589159378 554788533 6261674 845698509 761681071 411842950 919415729 72111835 412625066 189218391 361116750 882833597 207279824 640709731 809591084 288966487 886276636 371557522 646878172 2608213 866529666 297726628 945019823 498246523 725587818 719249244 330195440 645988437 126060959 835832537 675907571 192960641 730090103 922090914 737141689 504856924 582043004 478076515 876763692 400771173 873213115 70596353 366229736 568211575 681092121 664297567 32997455 354923663 69267919 822332068 911323813 449024039 849633179 241579844 28901805 19757652 198996378 189991888 573631460 368681590 387680665 917968412 153051169 843506970 969733390 722625469 106165276 792435405 253785416 100627379 843343322 455726806 192134744 579770046 294654279 77985108 885353765 611334020 687659548 112337252 306077368 698394876 15123239 258390995 634041904 563489930 82004132 858891080 945382798 554953307 176409099 807882301 876842837 508727802 509900298 997387836 3311459 793324593 564725606 8729037 934322750 938712528 224696889 351836984 691244687 965365579 939863701 33985619 874048223 30821454 982193832 515212202 359489346 181017218 735642376 404607062 168407976 224005778 120673770 501779090 314830811 789743336 883637855 17968088 692362988 313958144 790375641 492357423 568697713 715199937 18904746 881403587 5741032 963337776 730232084 1746098 492622478 164795479 328863634 53062840 679854882 798175801 476081457 932301257 184152694 961539229 792456675 534710775 22138357 684550606 87394455 869767279 183151194 39301314 696374712 632580537 288435244 243135561 974388526 224029843 372861980 596411598 665599410 559066052 360299857 403050484 91683828 592326642 3618955 949471697 745451261 578968183 283759289 6986835 754825261 507892221 131161080 996161657 443081351 579218007 552961203 762531354 843644976 628446717 601938626 688241256 727028524 943424007 122386178 754123003 488921602 304882219 179761971 67166144 598009003 966257950 255196639 653899234 469828645 836573339 928063215 681114554 750128232 454233755 605136312 30586231 610201291 250104956 23200650 549815599 164580064 639908997 970662691 743510201 686831163 774589309 106085336 296356631 500762708 149472001 465273112 771767466 549152120 815481701 825038621 648264713 675365476 635156566 88733598 161170046 247608161 639929659 243930182 911239619 667606562 67566664 4628323 805031961 526890751 554614447 318977619 402375825 230978076 605969199 420181568 759267784 849441890 618861305 421805458 776987884 369128686 994233037 956962882 700811561 678615193 173628151 807781348 256784922 464076038 777858535 844338846 439672000 943424733 666564910 846733347 706983165 77498164 307877560 565054347 20788137 681813896 435116582 886623759 219105036 148956340 570368770 290805872 666912487 117078716 261088775 831027212 420426155 308794886 203534648 879241265 617324902 377039724 851053247 852996438 943907307 524880275 219091568 340449098 71558932 173013196 49677326 767460366 640932043 871345308 303515652 389845389 449317185 304068005 798775999 694507908 681745630 188717517 593091684 138605553 410836815 506110995 31218638 716972874 848602257 339514697 415065175 655940547 880612912 75041853 429996837 573575735 895942234 214143432 710611070 166091066 228712841 116211959 126099442 227878228 806856858 896500981 622758058 696702345 185449193 235936136 214334172 324441322 924625217 690435317 7788398 458006585 927563950 931978078 390725562 972478933 965324812 625074477 13933046 35068644 57475775 35172546 104221364 219913028 258733343 239727434 171310755 8686673 609507080 836645756 985538027 992529164 550575968 710866591 897037669 910237625 429658204 586362615 831374897 899440706 871276774 689866612 686808288 10303333 920444649 872476626 427343963 10404456 534244330 505662507 222091084 913936921 217886789 240329974 227879373 64882530 696336248 92190033 15624388 317966002 25127903 141359417 504134475 586600974 169547989 699576541 912687337 733639750 981458089 142887350 526304166 875391363 676115941 740354580 773188805 940094927 994406315 148440932 707328556 396804981 81294295 146784118 673197234 402192077 344240869 319922585 750767660 868311360 903922857 596664669 810888413 696234278 933086808 809111580 775878957 650452906 52297998 210876923 117191608 43232175 507935822 324859974 852335937 45299605 889949599 428919802 28476736 631869243 590487991 732380447 813182247 586328540 416365711 621639451 493980603 56067234 358212308 521510930 5129248 7234442 449750451 207267284 357143643 705669579 929348587 612136440 692397060 760632056 252900904 908207621 599367482 253917956 577788705 905068633 825184938 942682588 969995983 864361810 223164135 367368567 486827682 985246975 952773867 707220555 979550863 111115439 249387857 42743225 230681048 935646585 387488184 65396486 496357954 541765705 785743704 952904464 882221568 872940067 352083137 308261524 762675078 178005890 368428881 37092659 167911227 416924830 414836666 433322099 625309756 44422303 696981826 162628862 711051368 57479236 246032366 163184373 883609445 637716913 643463724 465316577 38297919 84750497 442138132 413816811 141758376 918081654 823642459 189621804 541436571 668517662 344042620 882481128 649059103 98767811 228639313 155771071 798095122 882327909 475236017 980462551 731150638 455351669 406412113 10308662 285668297 644471846 296859722 465289643 686125158 916965460 89904097 809540376 520426653 27545327 2463294 948499033 74373253 21445525 49698659 841537280 183149108 359603039 348713596 723312982 112059572 531666636 683637217 621322650 946257597 113900747 779434764 187072818 928513459 760939726 667884757 105868813 194711723 877592834 486838742 718859923 330412337 946559837 738088468 311334528 813109178 560292569 729803313 571360587 422887033 451028381 89975376 866217443 331948967 203222212 523040489 221362274 110592515 176372033 362442297 987412043 480176088 343217683 688297821 522662461 245928246 982121738 733792950 669066188 890650578 463793941 582876238 487169667 488990048 716558939 708521572 75779665 220779772 197577717 347149957 51016954 914871203 350139558 807129722 722437285 943839802 614580738 965104574 590464974 300957453 285582110 106694992 700875692 824078585 674057611 582384955 928358497 986035935 795991365 789259987 923175732 453452074 635913271 817633498 268301869 437974444 519749525 489560613 266022230 772275812 659398580 885044474 289665604 487953823 506216963 301607688 45480206 662313678 914881111 844009667 55540270 288666724 211782363 381168902 968619057 675367835 428766883 847440391 787208520 557450771 669013749 237321349 730886984 103785768 449684503 936759002 159419107 843782508 729210697 98267488 580911966 717533752 453938626 580192504 871533312 526927788 303866358 584524243 659012330 121873732 649636287 226797850 314979543 325855043 920306125 477136700 814454869 82672987 203433896 281042401 981192027 444031936 764106111 12966113 373863630 206293467 586701086 158398486 575399106 178919202 881992101 849796608 438945873 867082405 843786810 210900136 269529310 686634883 103482037 260599194 146546654 695168914 140457481 976851248 48880915 490211596 47371632 791097233 566785217 541545789 827135031 422123646 181901907 647955540 924973194 60404189 888037356 722923361 255080397 191721977 253730096 611146998 775447678 550881031 736989273 156802879 511923886 299024334 689448753 310578850 165585787 390856174 849102582 274522352 188890360 252412870 407790684 559105226 909958094 646527469 593448250 961556681 135351106 369118104 580790140 57459454 481336306 18772194 937000349 393698097 636709455 301743628 439643916 104926081 78289865 853659139 400339112 229990352 112460199 860670705 946470404 471650702 28400489 533516415 866208156 73491729 923012738 159998078 838200755 875860948 760253101 949601343 497520452 567604512 743313535 801438620 927184140 991190160 490869679 909096912 806672106 303247689 163090626 786631260 657116864 329204723 358741984 184834915 12877835 964333068 25571107 476631582 279401364 165932373 195329115 492483874 820515350 339465736 863478641 188237255 787682207 624291134 945677382 22808937 248579539 353199496 706856840 217675493 859432887 31088362 390846849 781655722 642317090 825176258 102236321 109845535 657484168 191640560 157710673 196386224 92746965 23450962 775461187 721818025 949686942 203659267 888136956 80804028 688929649 638857768 226651173 649877129 170323259 757399881 233830029 568548868 970225966 874996804 479159673 980993002 324055253 198964619 526832157 25939330 450937462 916916802 252150818 904176498 280660599 997262017 896554570 207158572 366758858 343278762 583290931 318904410 901405917 335534462 636650655 904961014 656109401 587712275 512828708 176600311 936787479 926236361 209594261 480755441 193728217 289114346 946515809 320114303 393172042 990337977 312004086 366535870 374765470 532125660 739730947 616630835 468112250 26800672 551316549 984406738 324998809 310771433 847729054 850510996 665373653 660227589 721291925 162769725 232181201 197834383 247765953 402259896 155551030 54078122 482596831 529872793 341352749 148456501 348209671 905330612 959242674 36021873 657332903 122386813 778795325 211923109 431484483 217675642 277992052 560663398 585255828 907841186 179277425 26748315 856050109 901426647 251044086 296764152 690616472 766106204 223994847 315535797 263845938 622922947 947678223 881094312 16140499 27374451 6900514 128196902 771313435 74121150 475319257 906745593 539291502 492067003 767434775 527581258 848243524 157522578 591434599 686531501 889730057 988421750 986550209 518718637 527004872 829792847 76620870 311440664 468983405 622130828 965237164 112375544 699642441 88042335 640268721 624952641 567350515 229052673 680601410 471460699 343813965 755114143 608049479 21049652 813021728 621249872 800398688 366252314 386818070 603297978 176886113 506874663 562535002 912167420 99648291 403969547 784710174 50703192 520549417 261167414 371539247 66634156 340260115 160409312 84613373 365418424 387228631 149479722 106362067 411185982 460609093 684429813 377510998 25073911 127751265 935064110 995546028 460769043 669489094 929149168 564953471 669552469 138814718 271859324 35632474 627303384 537561174 926010583 340225710 535425719 491615478 669335596 144735090 472691956 647777019 242637916 219799278 346323330 113184500 213564498 852823606 963535576 804778873 812009835 710865204 382607887 817238333 809604484 845078788 421740728 205521250 939689261 529114637 286308246 224772178 266467397 944967957 263021292 532894509 977276965 530434136 337706166 218431472 172177623 748309702 264461432 231028379 637553512 59588836 666191387 323554876 889329198 885732430 241083973 30462376 104198975 869220939 626989395 128618725 927787129 858828929 32383021 8099606 391787586 515375896 162770431 351516235 52544808 167051521 259075113 503985385 664880042 261768841 563650508 690979868 380235839 932804114 219728162 354354694 794434733 314622620 584045479 626803429 671594283 109461582 747837374 365309622 865160035 603490121 102166190 285092087 212772448 251725110 182924761 366513989 116812003 492666732 568066193 115194191 333223427 518449487 884922381 392241079 567973122 937561144 84551596 603450653 382265576 600993421 485142735 186401545 952642173 68024401 40666183 736406079 836166138 577282966 553375771 653189271 342897157 240992332 650897417 239906248 471782144 601708805 381308803 877346747 260004110 685351816 203804134 571658970 311525736 254488550 96163684 56727363 421318699 717925735 372116403 801152506 165879161 1377586 726709899 583887073 13407792 939140587 616948372 819026112 614084250 445650572 837715822 961327234 353479666 397274439 602849025 460352367 222275151 57315268 165884965 606296345 958159524 736697583 757075225 208032501 106391821 207012660 49710152 566203523 75134313 771909850 874802848 633885939 481288275 563573576 985336282 412787267 231107298 633151653 330539689 54313606 432443377 533756986 315316510 813288115 964680164 841981206 712188679 803369649 75078483 852932365 351857285 795652357 306914741 604903773 31897215 224787137 664409427 751765847 558170342 26457091 232837380 785293149 142518179 902137097 76362042 187374509 494887354 328805975 620994135 957385393 241115751 861195232 564594028 259714673 885663006 809953790 511936893 699688733 31958271 285910956 412352930 958683760 359621142 753025781 317337534 613638478 129883420 305296298 189485041 964145595 133148663 69131902 843552341 255444356 546513652 920897180 456469953 628304935 344847826 689517980 624039568 99368928 715296929 441388585 586011770 657864890 538375254 849328423 536545474 233855368 17354222 104935178 873977264 645372104 589509375 910351185 546968276 768139384 61786634 604992494 379257584 293468371 362523186 158673616 488396161 835605858 95499205 136286631 790078186 695998383 966983113 392752565 836550768 631163100 15385170 14151837 28771588 823460934 892668272 900758769 832757259 737206799 530100474 314718565 803555984 224540780 996533922 352954944 560101525 290782378 302343090 509655045 207726402 696784290 287505369 876252978 674724938 569062321 495678244 768821366 430250913 367198396 260375729 309116166 370256022 684781758 461614101 82476453 111107666 796312013 219656152 738855479 274333733 146521654 745057593 18185029 969444774 168675111 199002770 137934118 467141730 389858681 706565339 805041517 324755314 968817275 229116195 632546317 304368142 922915439 871391108 116203091 370561110 129713566 997283615 399985933 537388174 160201133 805743466 891645267 218074748 724187354 243824202 216043832 563403149 671320718 958626547 112431769 903975863 101558211 470781490 896368538 538724515 324472699 881655830 894496243 508285439 734598618 497731815 277051039 693600759 458661949 913369047 746858630 839365333 852371449 92357163 157348112 178587640 811861920 664811177 237011696 919384100 108213413 176163613 685473916 978524221 556441855 646880506 514096959 219346195 899906569 986335294 198484979 736508729 664736139 456534301 72632853 447958224 127293645 792940648 324909027 654750525 945673909 159582207 930539595 858401231 765922824 541393372 813030094 958872457 587377658 270689755 560641243 849194200 712770201 71035919 54218012 911280176 328034033 661260304 962455887 174680432 265102160 982893086 281050053 261170038 66497204 436969832 710035213 369663936 242692229 118058782 711138762 356693344 710967146 127522128 762399106 803617662 270513552 191949474 192446911 276906462 184941378 131783821 122883024 719056197 499331203 830381454 910961703 403609034 635405888 127184786 372124083 926946183 180365427 125523107 19409830 600485350 360339875 446811103 720580116 242047603 189730097 586895947 54839998 483571449 467186542 581677626 714792681 686854713 716170661 499457597 517576646 413667699 104234135 987480199 864362019 257711809 185491359 627685906 940521777 837587470 201387822 215026940 788247240 962219469 767097484 130374069 655670255 878409668 568260894 129143633 76238264 189137657 629050027 295742914 366563313 804818216 41169000 19298805 195903427 451246580 417698052 661539096 782947377 248691464 411705997 657777896 994576235 778531568 680881686 839625908 780444015 672580749 444442185 474255316 378286817 10334130 121916618 498779313 918275650 38073821 122246153 95498279 778986299 784761553 79041463 787597547 266501944 457262544 661960122 603559680 774758358 851249009 343339829 121916178 828161993 943270034 327723607 668819349 126648744 455832105 958337873 48567735 118638405 521252701 730881280 974486889 661235430 624992916 875404551 838541673 902354573 356826055 78795242 963666037 707859867 71286265 411488005 540010894 845232361 120687858 724319734 994049568 159127049 788853827 433325747 485361500 177228354 249471385 423042317 314749796 233193442 665357642 602614344 30056533 27143648 216318112 884597614 874764375 407811704 72088038 164529344 164948286 790430253 623852153 184746986 345280257 127283456 215550450 277856982 111456405 40032233 524781742 153082471 299829484 860727091 45988503 588191308 559963812 935605616 149240525 321696359 428766905 333334714 40283308 964168587 542564693 433184715 748164496 33215062 670739705 94419377 611911888 703563174 664754273 974479175 235875901 157956097 173579704 646639895 803179145 976595812 954391515 31980986 673248320 800751701 605824107 765926066 32127896 157263636 175899655 147070916 174402088 480388688 938323543 507458091 867545228 663839599 588529941 974109708 488435094 267980732 703782185 453412967 93056377 101642524 879823775 731354134 865516098 600252477 750919031 796561351 855491841 557540215 217417047 740742376 642544421 344476591 979942170 979458583 59881098 479985646 407562572 452082233 889911699 508147666 182672960 449517640 236455661 907830042 380364102 693974284 99774194 539224354 583629176 156642032 976171494 583197916 634628168 543147553 970101281 888702383 281616876 247712628 814895508 144099249 144525089 945960591 622611637 110240349 164574172 127653318 922682945 751062463 415252489 118214110 435222709 474842720 287940052 161815774 712171619 721589585 549861394 843339395 195713509 786301781 273889669 929167116 253491559 426221515 22851059 70615925 961722532 4265839 925676824 232781210 832127396 428991226 735289848 283446622 286696834 839591328 423261310 620625871 380447717 247384271 73754951 87510158 746094923 480773619 833082333 103116179 734661579 256016230 332859894 367691042 623320793 336718492 592825762 669322227 177271277 895816326 125478411 695676893 357214353 421624712 614143072 747108586 712526047 616689766 945567718 763718126 825815682 258635875 581869798 703440536 287616126 654306151 235373054 988988678 344174803 352234760 515478552 914900653 592684786 191387868 943085221 957389494 474821098 547515471 688828762 705337539 683896464 841720845 772601205 696552419 194992204 781667081 770060863 729762536 772875320 763085397 141560557 165292554 483905690 961787278 677724543 735985037 890466961 921471619 267203629 926543790 838195858 224621358 216320461 65138113 782047909 477062758 348630317 52561224 264713093 498322522 320767250 69525545 78457792 76406762 894032691 104830468 110468239 958530082 688505043 330526237 102469184 568346837 319331636 823914263 126955939 385545714 117164578 209831740 206555362 583507641 615621896 262388705 288599519 722378344 69512132 68431962 590442801 266370577 415630477 211796514 873636436 295932792 366261719 845686573 438409182 576159874 572982191 596469042 34458982 393099926 880524160 720645250 639386813 484353462 378780169 90586295 623979502 387424960 440290222 288739720 209084140 255790193 39184093 499354959 453302080 593297081 819413289 208746164 109005214 326978269 593856017 612501975 651347327 278238913 79660403 734285180 652185704 190393180 20002478 220976074 380598790 323857858 231775096 677025536 117080784 921764533 453552021 243587794 417521569 725367969 789040134 420358302 926616378 221944490 657172276 813030802 197082785 862278567 824938782 892458552 20989963 174675515 546175765 350763597 6331132 273010978 336749108 126547192 568435513 462759862 602469185 752506090 734590376 944641448 860543052 145894829 493643770 450139113 546238413 210157187 796691506 130931076 111209498 623570808 726644840 33781513 946955495 125453420 693887765 584734167 489436231 744629877 546347136 307546356 595626831 651043792 927675623 687143060 591531657 257554618 247174874 698311910 182170497 141851058 80028162 215721299 97713568 473522032 984838694 28781943 274956221 947414413 386684704 159869177 186693153 516087061 608970676 357162473 101253824 229118125 370608746 374993579 458802195 112721068 442321402 128638995 137449742 639672320 727777438 936659692 991498320 194394251 375981442 418883217 862087514 200280801 445604480 852650208 349016955 286041746 875188854 830473770 922511000 735169537 95610094 514718728 346759798 581513104 437440589 757427757 735624609 709551391 341230916 45268821 351076516 846305229 759727085 999668019 381244338 708084023 333804141 283557356 854080033 326275111 550053533 134810627 728329085 268110789 463494798 730385337 474974568 639827867 301259363 945655953 439307128 375864937 288489188 430284672 284631368 708667576 15953868 640657679 643344199 284432432 946954276 329613699 146277661 80661347 70294294 432290291 425357635 798477303 484724930 482820498 61694103 310445128 613124793 829194767 56941666 300434352 744343028 195228310 162129407 165083130 620061253 871270976 311993350 732658217 90622998 470227813 52553302 324377914 140295921 421482752 920036246 488829416 774253063 346384796 972474076 79029319 391956926 32982472 851764516 412224302 319705467 114636421 176582961 131426152 726959495 304717572 209049493 414509904 401474220 766032905 405708818 782814723 25779550 520027270 51471768 424141750 554516252 901111327 534172313 719854209 80667769 195856136 731779074 722804533 671810593 415409042 809831504 580137513 806042079 743888957 732817050 704255925 671656690 733510821 107514076 990157758 593752063 924491625 642656962 349655880 862011671 476725040 585919352 391224873 864126475 334103493 50687621 560948007 937937528 720580184 64955260 979221064 281791746 866955122 447285332 623049001 772566141 925926319 787874919 516892230 434719893 515300090 641216067 163343414 496668059 532635008 111714146 678820345 376383313 244079158 956952448 798964220 300068190 335273288 982598782 690874951 45749572 728680552 838698401 704437126 414332018 15257329 666090688 403345766 718975798 780695553 22964870 866175320 757521091 999421598 593095552 209891189 995332250 550062034 586953162 707933901 146858109 319759418 705248734 338545587 961253214 585275436 255888194 903625529 450237571 883991644 161072348 344674946 127909021 836517702 182656121 290865961 903768202 504142108 486135620 967050231 838244915 189779865 151912235 560381876 546887360 827623838 554331054 84452662 18062836 849618116 33163221 854096067 439272487 997460365 753133611 899622455 382338632 829786971 827366461 656758274 243109474 345063275 881186284 152158585 638237048 944598639 627207567 356579454 457381726 494694892 435021035 475725501 959893861 325459994 449801449 848624510 147472857 283873058 182527820 688183804 552885111 692833769 88862504 516959746 295131737 980771105 45680217 178612004 253909309 763482322 39718835 488792577 28327287 191159806 371588576 681600330 121760266 345654613 349755347 259698586 461733293 453179669 661473704 965758441 480995938 679051652 904259452 439883122 333269391 393197653 42223260 283004006 438598745 246414435 372637593 496219719 656326 987723851 87194150 707213029 586756063 565068431 793027055 274721290 972089410 743855421 407755807 960919766 346358861 278829441 736187084 285399974 678419745 861017510 286426907 772140263 724056466 896420988 67837306 445888576 168804083 478361722 667730295 928193178 450193507 225777304 105065833 504102877 187788939 484524038 904580078 885227766 477252588 350561643 993420388 814033459 283597790 769366943 645710451 602268048 692928646 631715511 841585433 844702009 969356678 872953949 591064269 333942703 162520243 6359832 226884123 845109017 586317901 671750478 95213653 728494242 623383499 20213555 478316236 825662330 416526359 42187590 393699121 459609747 614447015 127900578 196281259 518573685 608240393 38436419 393138334 320388863 927741821 335858754 169098201 862508441 265003363 114830904 763643206 834048641 513137026 851917642 250292454 77685586 150579738 530824230 418230408 874526954 988196310 349195168 316458274 787060371 237690648 549183212 186036943 837950005 655048380 723277105 776165952 982496182 525833458 388101367 687024568 536484627 576931880 124693462 54079263 63391201 739149069 192142629 455627176 832365826 355932392 371362691 694141537 575005371 47203927 626282415 999979126 269408555 678369028 922763383 83704481 189796223 807770523 884851746 525461881 599034925 104507834 57059192 293095519 382560704 36712698 987134181 497880868 711716424 568415004 984594107 762019291 105882258 647759889 331359660 806413430 253483646 180169273 736684191 375601498 945986054 75756984 79780192 14596295 408977165 79251749 352552583 353745282 650121752 414578577 293001279 564996591 73428911 601370034 22991408 523552183 389389959 816932571 710382025 30867933 97994963 25692707 972901968 738654630 788991608 706952552 479209112 774543802 429488759 96128805 508953325 177073635 250217180 549698870 192423732 692961182 94960514 895254198 997505208 812724181 156027609 612323662 905684496 44173201 697792994 364931808 769513179 312817098 212742830 749503712 734536245 768461540 835823604 107013319 966074257 170193836 775122742 510474742 863473937 142728832 849231089 447781771 427522400 286008473 314138362 130145351 79933479 989761042 620828913 704011958 435230047 202280295 764445378 698671456 355835967 981953102 931030200 707418347 184237859 521743124 980634367 871259879 542980483 59798469 477755223 113942449 184875626 623931870 296942829 252836877 124655197 940186990 88629062 932882071 634706119 407661530 793988367 778385851 716510619 505227151 144013645 490866504 342991317 639689177 97941956 779693383 23099608 267200411 358337512 497804889 554156223 376119037 940661827 635392025 824179779 107009754 926441223 870732541 212482713 702427851 670860441 496509685 691358534 375609710 79209156 629182072 189627601 242127503 213715241 831646990 93918764 791426238 491604295 946812777 143137530 724065417 209394792 187421968 63087001 139041251 181679498 569147556 678870825 890274987 761941286 508451553 595709905 665763349 491553086 794556495 865032653 908746652 830321851 17980592 910127107 548353710 512285797 434926237 736910355 607777933 891369566 130585923 368615513 925310652 794917128 252462618 796883544 25486949 382784097 224562178 694811985 709839202 93027064 995971523 529938298 613794453 9019688 283605639 38683734 425370009 99663875 242814516 483593288 914235780 622549752 601754032 63705036 478093009 153834720 289405788 416864200 31316955 967935621 666004206 566635941 99573329 602048402 404459000 381969055 174462895 437942388 879982942 43413341 710524110 686909503 82019028 17193524 139711549 345991808 104905014 907539057 144675245 778288732 776319565 198874045 841179394 859721527 72820789 471229112 731977517 844758509 910286918 764812169 149582600 5750724 906601086 407359263 136709605 207378354 923030865 950845738 386425020 660808507 789172710 600830579 943178575 702456649 407034076 901329733 445117862 584350546 944956692 404029145 907154060 830623873 129838515 586435639 827217760 266034873 32831646 6066594 329928946 265279390 413053286 190592533 277186516 532726982 640225877 947369377 189250996 622215446 832996837 921727660 612872305 195251516 473153011 162832796 135597818 876264819 141637988 778975454 120178978 283490598 218687077 289645275 862300777 924957988 120974064 833907898 153700004 540724017 802881921 362634403 57201541 363445128 6139074 47489178 634949349 105870072 842213033 206070407 859102832 848948118 518853775 415595740 33180060 13978619 533651209 243711859 166391672 494906085 203836923 362176328 913850493 345667663 664156404 651021941 924953209 224179213 200555922 398643062 580793012 975894138 186632873 745175834 779853060 594704491 295311800 414872483 674194816 841145541 699333794 190986370 84923916 643985988 630811352 821784450 751523081 460893035 21204574 787077769 965413494 869562175 565145048 545177887 576911157 694779558 935580566 281718434 326958225 669756317 286408863 893923939 975599911 111809836 289664774 512800760 947802345 889694424 742540029 597834492 668315746 298419639 707794896 793108247 445650730 751642354 176313562 885580593 364221211 259518818 360066826 816915981 278420783 525987006 733632677 351992239 649025817 592837209 825394107 521159434 924967909 558504562 688393959 94360166 460504241 380846363 606641647 862683501 104397196 145147343 473615386 184941386 294224199 213195840 836801320 94395749 350640615 25142326 952839973 611510809 396141383 360867857 96158800 403849246 592671277 642405026 846920653 710207461 835500028 115241487 478005847 624321365 41466426 700278593 158861339 704409544 460345653 493657023 125323239 889667257 844940254 867305884 622930442 232307824 393877957 61617530 43684057 793726957 434241941 806973496 270845361 934179618 598518229 339921873 838758898 870160621 942041720 521275502 853627894 659395257 5369146 809358149 671375920 517191719 684132070 872404109 471671746 705054371 463329071 922167316 823450377 304036607 460022150 450519598 238293584 11262232 225277211 685340210 612066186 175160143 150581467 2303529 426345759 425017331 343564233 947306617 454248548 272438667 790562016 499283771 8208021 965825511 618585292 643657835 971433283 859173409 633135999 340008601 626744118 748431088 735985896 809546465 839871709 35056789 297097558 615798807 656643014 500118777 388566600 755069057 39452948 114923471 953042333 654334436 401368473 131721871 641467508 488080472 458914739 977913218 929465614 129317127 783620237 615334885 859137697 468941639 566964425 810027779 885392781 325196422 244859668 883316368 200711838 540737196 372286832 917322419 337446494 818929286 29564015 560465253 841351472 869363884 826980362 33182936 817568160 483336491 401207624 710859187 710654293 731328465 630848679 221062103 585784353 686371494 317655619 577553947 793592512 939565995 503961863 536582229 223750175 828472593 496577419 525679247 403130736 496232758 522736167 28866824 514670986 629470503 414562069 782920006 350081372 560850913 788846331 333433599 111579418 228673016 954260813 761894141 270608252 849001247 636223067 291576044 632383450 195637489 772792449 870790439 149492260 181130932 790282758 590035224 48860832 824548921 811125308 385550491 524018007 811365975 52650050 903281677 659678493 415682399 634634031 53138748 323449223 686539319 797229570 567130006 763943071 365032699 81395367 952560373 14119021 122043728 47074187 629122885 651584787 985909203 138076938 688033149 564808193 402339100 361661353 711427556 69693142 330249709 91347530 358435629 375819984 344502092 292673192 694907603 486056225 344834213 818172527 85887485 206611921 596994660 49846004 258188897 797457967 678376999 126936874 536098157 363387160 480923856 249326030 242960764 596625622 865382751 645737294 556942868 833791734 871332970 269790591 638812337 840119767 66952457 907927606 345505768 997898730 217946485 475515090 727394370 404969066 504688217 503481291 272602452 185749216 232204606 482072698 549284922 114475937 918999598 81352061 937341685 375174759 836499256 169438953 843150204 346524664 932703789 849511935 998513399 770301806 378985890 921187021 672517480 804605611 172804221 235284176 361362512 191603575 504332634 469566593 933020963 110226592 752420181 591412769 685719015 760902431 387987142 652917813 327615490 220349103 849558358 774571303 268578994 299628313 542309019 932721296 278400605 233038935 212601850 164260265 314292493 652718104 969762309 817959705 110086075 659034650 160988897 126300001 583214627 89076084 955652744 253409227 335183980 854754448 254058282 703323739 390361363 174276271 293069343 919249688 593119106 146380153 65389756 67209182 647471303 511770439 367702719 589624417 149210358 921414314 257152006 477403481 332866128 8140318 482988007 617989233 452068492 738435826 357814438 614674263 196897374 929234900 784104672 324724451 626856137 573059702 489332944 878100030 949851011 454835377 847712662 126913285 958379935 684765676 821295108 828636404 900279237 417122327 262441521 638776026 131149373 997210569 884633229 633691153 546071248 707159015 820635237 995389420 627390872 360322823 597358559 913322369 692283819 675258268 310022705 355877438 726817513 653062964 751536164 303900188 887587261 183193245 726543857 219036048 184522822 585340729 805500025 18304937 442235517 585283413 375043415 438616664 630004889 212263752 265396965 763321419 123692671 86122356 577807867 712601975 606480049 151710334 713054246 125528837 919674723 894917571 354537213 569795696 408743025 411643437 389278453 571036729 696096661 342750671 989898741 906033430 400709189 658821859 811815126 758891202 892594850 351324093 713726223 650555198 300234672 204804594 555576005 132734297 500316341 192550474 919036447 991640570 50626119 853555964 953168261 41705779 70854904 997106696 587210485 607035190 95593812 431102044 458432768 355930206 196858490 43396361 797702699 584668102 11518762 395983107 488752874 498950960 378008163 260057469 3145908 406765063 971408614 600131215 801974933 787046756 943110077 155151069 623012404 968402003 332617601 146443563 587694765 608883205 301450631 157071037 94907830 76578743 17487706 951232081 150996650 848070200 862545893 305068224 212010755 117917155 692939389 725374364 841139831 306502508 787289029 630310909 434023833 694707035 133903030 355896897 104915876 622845871 311101448 136372974 300518128 131341706 114088449 49033772 446084707 731914495 533573439 547986981 714224215 746114662 101193491 843911952 412721384 673586952 733500166 811474699 259705543 358617368 409140883 218667952 523367581 526385965 961804538 989207684 632635327 694543114 127560165 244333415 42812746 860028580 523630501 339160988 947951879 269718607 286600482 514228252 566042615 57482496 393418960 91034889 466089395 602350241 534304108 209245261 382739844 653224085 430787983 527001819 238889908 318965865 417235352 292484312 907715241 910536952 698729516 263986675 50156403 504648348 542475806 844772455 925005616 612970201 733939159 402433403 79328134 543034665 581047982 680872430 254551772 577643223 772824083 824706934 916567862 247038331 683889779 123422730 114195948 595786920 971343854 415712711 102929579 949439343 758404054 961751232 14261733 562728763 235355543 288702573 977566658 607888893 231532959 376268926 812108679 314520583 571582599 720007079 278485065 760111486 344273874 291735482 484433296 413403608 986653740 257425507 89731649 980500543 994892485 799915242 30748234 947655409 375996306 260668452 608640729 987551296 656857759 467140939 868115720 258161421 53596371 367312140 284556790 464302391 818177133 237065443 455859295 888831679 431442239 304384675 768099338 300817678 500401206 433205798 939951759 714756837 853798106 831537646 335480003 832571266 772674918 218909361 537909093 882796315 542809349 119834893 99065925 2416548 710665316 195100878 696767107 619105402 603692732 694602681 130212974 384785897 190061930 902350919 859477372 613427577 580200810 527492569 143019370 21495037 762797384 698455726 672638549 629244280 928318536 533791451 685590360 862152125 712511184 210835383 620849216 736508164 399777885 733289338 172131674 919116369 641035161 495152956 716039926 146903180 910868328 642631672 32310693 720096182 249332007 278255651 256935287 673526387 974799032 262139009 461620482 535329862 837635927 582790981 703059419 202258196 114677362 776630120 533910680 179692812 721068170 915918306 614911213 91700192 34885702 231172693 466132215 154343925 105407728 947777881 943809985 946837891 825904851 163411241 832661571 423232604 350595293 267290555 655411452 317869552 687007064 757400565 192884239 28676688 213076577 475438091 416673920 676703319 980736054 923610719 47167023 881160749 637068627 369360418 303695060 703057674 304359267 622535779 906457835 673582946 515234288 371112737 593358898 933126076 973059077 594690892 438229474 49862350 95823875 510239175 755879263 449853039 700023788 3346990 177767414 27500978 530161618 390427639 574972896 218997729 599952286 334804282 946554063 151929068 540103216 62540550 986790526 550250375 467161451 72272017 577174844 697456364 4865054 247323348 909054160 913693166 486585512 6060172 595310803 330270054 212263762 133020298 291464009 776939334 277912540 584952598 171492897 985257287 707395880 366878121 597613667 145244952 271005307 645955512 963166879 4658692 157510598 839719714 133872977 538256956 204892530 841000571 8143059 400074218 610281592 889069422 150141156 748729039 473067037 41604073 616109900 129149709 24124098 676880099 462327119 874549127 18894455 816505886 188449223 324703127 367251607 101016039 394952604 801103277 719094405 949208420 670690064 56305544 457629161 220858291 255587258 907201672 358145979 187691813 398028966 55851315 534373936 114724824 157064261 681633094 325314722 47257251 678466102 776229183 447528904 78173148 364105902 973082387 804595062 728128869 367875255 630953821 483206546 336423358 390369458 510994715 105333573 756239233 237116721 700292333 837573793 599140839 552722431 214903843 385635564 94610512 169921240 373715695 932034499 537094693 649324777 57876237 261931217 704726218 716049897 652577721 153338386 14828575 822729473 675273405 149758722 859140573 652816837 359073929 228389018 291452706 385909917 471727184 847684964 76823620 317754534 151210277 47573410 231719124 524863188 425986403 900348744 117393569 75045956 863412047 953067756 236906696 473153038 924738115 212490222 536351788 183107538 20011174 49438238 487868356 807027585 597645407 297357046 979494086 115707124 651857502 74932589 488519809 299794049 887101758 391124319 918395867 948512833 982643828 386535151 423319239 127057363 745664717 661758825 50912606 738873546 283562933 849060652 473005704 930943509 354031518 244148001 15493772 23133843 916671418 100048644 741225760 229291627 564828343 294412776 710901016 788935116 155957613 680562811 655702695 922615814 250177756 376413553 852091409 738385689 16332477 723138243 433193277 5465284 638864699 362851850 724463805 665228468 896900499 914284651 471521275 568817488 704886577 235348166 71631410 674003318 17342722 75257679 523410060 533488136 469748153 82791177 532633811 26109275 70212296 19807469 431591318 822934088 650510993 583398084 456724263 378081265 220875660 567679714 369471410 235756201 278299886 237767179 478203225 68180399 293608323 885213738 480219920 846471123 318339027 944258372 447489566 693364756 522468956 218607892 586063701 213621980 529193818 406672726 641938655 402451771 8028267 18217783 3451351 488173646 214198295 167832293 117459743 830861527 667629056 903155670 383373007 494746851 556200739 617076887 804447040 744979175 976622616 922899983 983746757 115527827 603553664 18695032 840712334 806306356 730267649 354988047 324278223 234592987 252109310 823712421 854865477 172500676 743958126 660266137 50509724 44915653 869795385 642338738 248519577 796760999 284046066 759738135 555371997 255434718 78289680 993437170 141482801 975434839 138059602 894646950 108827636 462793121 861543505 425450775 86421023 893262716 628344583 522606874 220650686 554299322 903101821 553107616 43462390 954159345 846725476 221148350 15639152 557991710 500671397 664818567 70685596 91411325 112831520 470461246 369603009 670758078 181935004 222925258 472858551 642903344 876044907 185434617 588442966 950889040 94623983 284789693 138963771 424089391 141291480 341099892 597055641 833522467 777390999 203132785 71436493 824409945 555161465 521098371 67525506 12700579 539735442 257466712 965217609 152277134 179219644 150852296 62570725 552177829 622385251 53331056 63714348 334017852 914988750 353893710 252435561 255320515 505946999 655816298 215357739 59188955 393202109 773422686 397297060 728623144 498881729 733511490 600959074 173738298 840127037 101220839 466044118 720528725 20653889 353229639 70007700 532324997 412540553 573537957 345362055 63830566 451136048 474281594 975110732 872835338 477370757 308124919 709572108 975572764 888780483 331872316 275267525 987110824 506357769 726964053 19058166 605995642 120808255 5224509 139547453 639483524 542859814 207692982 125348709 730360467 75270018 931081898 376235534 978611996 545525417 342279878 2261856 147247369 296830690 344044239 567347856 195105724 425930462 987079871 973855085 480168821 826417653 45565649 422349280 199745248 852432005 612115018 320732322 190512004 670812365 370974336 253877407 654754205 881070841 106814882 757255762 573536917 802655656 99804061 435391820 263288878 729571099 891294934 516843133 444869773 790569004 260109942 447494573 253755424 259190684 319881853 817178950 405145622 338428795 351332736 699503383 332302157 654690756 146811728 90897315 402410706 601290004 257908755 694937703 144095749 817465342 551109014 530399961 680542954 850689521 290134416 852053516 146228779 814402523 726543010 198006226 83397759 284829995 761123520 780420166 898713155 80157133 423293643 400834320 742748025 342390915 174643887 184862937 685304339 648424242 850513817 847125822 917393817 947550459 865394142 614841623 161123516 103411811 317054498 556150518 544443004 579228643 340139296 711350937 314642223 222787731 895872304 442228388 612939043 441781562 375654807 350244394 806634848 677705868 648807944 836160613 741185910 621780393 356013341 69016703 458841770 689451780 327556824 653041172 557956864 57589755 640947690 373433984 783337949 969919301 59892016 854605747 332896070 436415401 398371852 217909000 616254548 116627288 104443401 197356779 359716733 647772917 362147339 545550108 32538764 921992778 298984604 523961488 547077833 928944360 842091822 998997667 213410961 898193584 288465415 152157078 820410427 886280163 491708171 943326893 926854656 777432175 91095946 826388031 532435578 673614200 437270946 197844743 69541800 6955284 54471326 679600256 907846851 923472971 728841199 367433647 419377960 571405985 179461582 257446192 996773002 593726060 573655956 76167682 748022391 530347758 426077362 515536454 317441890 480188665 708153302 213821644 185035700 110448689 307615235 568733340 292118510 155650640 207536888 322086918 254048631 990051815 338906164 439621789 666178116 177556115 748849834 840201924 178376275 193424972 904847938 264684564 404962410 921758255 864248805 667398552 359095488 143752634 729065898 967504675 806607116 826528289 452144695 193673464 413178809 866801005 401944848 60456061 121433554 876491220 923667912 272515560 678527732 594868180 483991238 110557394 669021981 550767576 709130536 368229344 121924847 450267290 199503285 951129501 636479365 972186012 260226105 637847382 643709977 634607095 67187913 254527996 357906327 71041316 877572254 495229747 960527081 481710954 841614416 61469920 262787880 754303595 315572997 962415926 403264912 912148288 858505345 676872395 748462407 27594122 387926469 616765493 363594428 39236884 258282172 683116675 40070360 965563313 988713108 266049410 581990478 92826563 68229181 476347974 967686224 671112419 776232360 491872461 981831971 699260956 666564494 448768594 614513848 264126992 306043716 286099957 405610694 997216515 427047090 64806473 699424416 887076900 127816279 82830869 857725573 286962331 270650387 563842043 529760167 544366030 896460596 856117559 912730432 238141224 827446079 837517980 211435799 790327988 177810166 729016405 244223918 240704071 399860180 987878024 887818720 167932095 600893143 354706146 268750450 233777718 628110668 384581763 87839333 54734155 231340215 847744407 479207095 567071209 715346052 821017519 744184763 420960140 789196366 36210220 272439216 341420057 367966397 643426382 558564301 806715220 17003742 563071834 690286392 784433433 476406389 540076678 123939645 631548709 143200643 919857237 745970570 646046378 179657986 703541336 864117386 112869678 794734970 642214089 620412925 857468348 644991623 437029507 79849178 659165713 527671661 829369860 907860094 176054964 164551275 277414542 346539967 808382304 540860638 281452433 223564983 237264166 556768973 229968954 738284336 340426655 566791179 831681693 203505824 352186531 176937666 56313144 766950899 126100416 588187750 415338145 883183791 174105621 835147888 851053529 468725594 916775841 293485089 910247225 653115934 501323537 750138505 27898257 960351655 62755309 272530597 99410634 635344175 133726009 194014843 69755030 51382502 931094634 360067629 116736482 29761817 869477568 237399163 855364165 155177822 404687917 1625663 963272563 646738902 923560881 485794034 146862138 718584824 895725564 326035999 535650546 799003317 219436290 851589677 184030799 547970878 269360948 919851122 546277755 623770397 126443342 723116783 226413691 868573891 841796066 901153800 952015282 907944743 230395619 943574437 841878310 155495905 263596490 984423059 848856590 833126223 652695136 394419674 919057303 597095802 559391426 273385104 923578291 991813605 930044316 616980879 908098034 663682661 982109364 536227957 406377773 231144568 718978310 533262264 212667103 174170060 221998068 582829719 463306315 115199957 173009982 444153612 514840105 216526121 665168330 307003652 890637704 227118422 306956174 931291585 638435915 686314900 998336485 667190506 769684864 241709928 628376080 775473628 182987102 884969847 374302503 240633166 96409780 439451536 999367458 502212947 987145832 471573260 496957384 55177048 128075741 213420024 755629398 470763980 191882059 573011676 954715240 649252837 445303062 763771926 147005518 950595699 570670572 788752849 555760460 774257182 847985845 226083694 985115864 206789524 911606200 987008897 229819459 879988333 462498267 964537310 374502823 920715497 913613324 688284174 618676295 661352195 118923115 552928822 668886939 931028519 36441199 597211886 908827788 928199071 146136950 903641624 331017164 394830149 234909454 339475523 946884336 411513729 853901702 353670686 916491913 29165200 688992970 202353074 125971737 753315900 277172218 293589639 976638489 581287541 750637043 4638394 299610454 965448528 853527446 306382722 972934958 266906233 605124535 509482737 809402084 233349795 411570340 371256433 602692114 450287321 708846057 605968475 773192854 999197063 482979626 607092642 364090446 461825259 715346511 312172076 100122258 681292193 98345901 821807112 870157456 80490875 304653101 100474421 564807147 37041546 270810839 737091574 358066768 980498579 74101223 14786314 401273268 26567220 381538139 702234987 137786403 40483743 445341677 16232011 388008592 895725037 136269951 564300755 523311559 111346591 40121151 993897273 168102279 230435515 953068270 212264039 328819522 448742724 422650716 148608546 492934256 4972995 252594680 465475198 834684070 833546942 82957791 40111798 237372541 273311079 647218101 61320351 427587342 449913671 314480377 889323487 798721179 134855399 289545998 274074858 345168618 468039128 868768451 767304412 947494098 190000496 228529800 661244598 770932146 60246850 238212822 276554122 730721686 303614238 712311934 463615923 612569172 218621198 19711115 967981462 705241130 351949626 725034457 679330928 436133741 7411504 828518102 878823684 729994729 294048596 34562746 408486470 146095467 524331626 783884462 151101588 867746830 548905437 738988858 891517019 806712905 890242373 544156584 996389418 668220703 322365777 934859083 922908500 697486281 599745803 704093069 529793118 978714974 598538900 241217922 633680401 336086226 620512741 233481158 773556303 249799421 29086632 121148777 456209812 382053934 987592927 405577952 552072022 671238648 818528786 259114444 602238573 666631841 77289709 831764952 946138615 286726729 853090661 139464148 403647276 483279359 46535146 272909673 729766333 420671598 573734604 699917960 245419675 281660571 99058661 480969672 422409700 845257930 531045668 676301857 239389655 9250131 247100560 803785758 555278784 11571364 496316410 289312696 345647625 749937160 484912216 639225177 939958148 679351067 916499956 898923318 669893308 695028530 490113020 143385384 52843024 158922337 898160220 794777274 529892533 95108431 888441461 259799483 725679065 654946241 209049657 22303520 353917604 301259739 95627030 106058846 101199081 374720725 641542112 366252731 223519548 801892460 528277566 741136057 877402171 490123432 544892049 564014310 135951022 175912799 892164506 107807905 618780718 453285702 649806543 743474472 99959422 546024611 391461323 998155151 240002454 958395491 495959060 29720238 32898729 28884132 613935391 796972817 407932193 491207089 379135721 443186383 635017352 784025104 940871797 840648279 431580039 659105328 861610575 553042295 922210479 925554491 395685298 247407928 62240748 372429167 730906473 516341263 43723887 349697300 409673534 176093099 42243442 391233914 225442746 415210965 94864139 491678210 294300594 462978653 281753586 325346525 362409942 872992386 823332775 719420200 240732507 779518465 521263975 570383218 573066288 186469858 259294193 728153375 442164243 176576010 550549347 745487060 425971526 396350003 737314614 322025991 276999203 94831942 787678989 481938176 593075292 236250913 992752833 165810538 943052125 821775504 627402763 24922741 793940295 180475418 508490674 68221898 995859748 77437482 725053545 717709811 118294741 371434840 760909255 418252085 69502583 345482919 87781211 854257417 109086484 198552216 528148484 605763074 968134710 256458219 468417525 519435420 150633906 485477653 981063039 622237354 916476326 398462683 918634840 920706338 327410824 162343516 860351977 438999415 488915537 631195655 366810482 861789092 107232898 700998888 517989996 612334871 25310374 636034364 114938281 673720859 996829415 151495938 845377728 519711268 510648724 396946769 728808981 777711566 650401195 761729474 455968171 924838454 806220268 824284691 565354347 251736382 256826536 489666850 6583363 318277861 975575469 135655761 543971486 880343327 254286603 910244070 811062305 729443025 565142128 35171234 842993802 98444463 159588873 767797372 825062 416573519 132423952 757936587 432607958 227744884 721780927 958783424 408362241 209524108 780706726 361388269 470442709 890787052 169011326 300019581 440216941 982150772 651701981 279422656 848618216 14334427 86423633 516750287 746452348 380861802 60287947 302431825 420923132 379911245 396791321 726310437 590384994 2034848 933350235 144743650 531830882 261662276 636344968 791226127 594682470 633907468 388004006 717126749 603049657 429695784 881663096 644341624 237292706 843132922 4381027 44981080 247600905 589687678 643966897 270052767 30626492 249662413 593628193 695039861 955403761 77187042 816919724 247681587 848607863 945068497 917176285 394058439 948562580 227244444 617452359 566746326 718169607 789418293 956199757 814582565 250029206 603892705 806548919 427894505 803740119 718364740 805399441 421706675 23397348 38263639 953316603 854364296 238787834 778947812 964564597 904818124 982386348 223505820 636057717 310062675 525016278 80907256 210073464 906564933 975910130 574469610 136835756 233416193 892358876 980693523 101722169 482784160 494824255 676619693 788273554 78040352 999190578 510880945 533836471 600087519 279059658 410288861 539127644 866460331 218393790 428502970 253462816 212966573 263460929 153449575 163932395 822175594 838446945 167717146 16129157 307835790 686565389 149135711 904134577 609152722 111216256 852803369 511087011 453279131 301029285 624156420 786532595 883259265 457121778 150188523 883529071 647443076 143216874 855607044 816824441 300455138 381409281 613505773 68671157 300586765 681952860 248601251 23513637 754474759 58096753 592354897 802269002 270149675 286332205 371237686 892233987 775783870 80530649 414766169 606709635 843952430 591038001 651483114 998951925 231572766 846526154 325341364 553122352 150127668 605986673 729319753 674295021 421926303 78015235 447970857 113644713 373251977 267656621 350155616 92227052 312255073 17423815 22146995 213752015 414107045 606620057 828734085 960668357 404860093 161397007 248679607 361052541 534950430 220500770 142168244 2975254 991690802 607065281 927477615 699888376 881148765 165916260 418434949 159454884 174507169 173154536 574625483 329354076 451997706 599382898 299275871 920712657 181221740 935971192 513799205 276953382 590801619 803264394 383655413 954787145 800380373 798553312 538732191 425614637 35166006 925370964 610744109 352852421 166293485 653241617 135449979 797824811 380854393 810356816 429241928 179704240 778901965 190135463 709783401 778041266 496562229 278580328 277090692 437594663 26292833 189190388 443266472 407383443 32400552 894475040 921255664 638302630 964269791 583889307 835724471 441551891 822255225 179867571 267721593 965947058 524004521 253236336 419829510 305265496 841587136 510481440 257933535 950518204 2655992 425551904 253469603 883504486 678938663 574191107 610493066 315510340 465420355 538025488 754562783 528413089 801088749 761566223 44205324 408113668 528105387 227468829 860906253 800488801 24400146 81155151 620502826 601720488 414882324 324967596 303442963 297201469 871517161 477680175 91619111 950766055 369837877 411522995 130130035 581059351 12481320 534007450 709534058 650065819 454665056 852503968 811496148 133415886 533023956 53326774 72325029 421362384 913841784 818570235 668535436 393275035 174873378 578436095 85605890 483013068 992012325 306688897 246384576 241604647 955375956 614629039 220718176 99974918 127312271 346557889 116920999 270870283 404969418 527410229 527274662 881469756 531074838 637337144 603635561 794927307 808931415 626561801 623791186 426165611 140931907 786092315 492951302 821516750 36986504 134523506 559179632 811354008 488280806 882722861 994707290 389140563 398074148 82005876 962361855 376177459 79898533 103083042 396830592 468519569 30652892 82148506 55436662 704179701 206543024 17924181 59648637 563511065 664145906 984388987 618203807 880749111 29041951 75317744 78398928 997755396 227210308 159409235 450363693 880530379 502028755 430426711 502780521 877346569 595304853 520849908 144633866 694974743 326702957 526614579 793795806 214079260 832231210 316010495 211630084 616561047 704907115 351873954 900697066 637801313 974441052 477652214 92315279 37200088 512633597 56620646 15297082 516584063 968337543 927176982 723967735 136331827 226478964 443545084 443710451 188911801 180143653 912813790 372213432 526223966 610933498 598401229 108362644 695280214 182493909 510259465 501231481 880504928 958610217 297778668 380188038 252190032 287187242 938560466 175336511 300688107 682238553 891660883 519578171 104938905 148702345 15600674 463185436 90571161 439736903 182300933 333625909 172621773 408071223 792760575 333663758 569042706 282443123 523725875 387361705 111391231 260596478 537447135 16486975 952581963 88485404 168149414 755863631 322219339 609889910 404706186 585168110 971308025 524174395 687681083 956966305 27392500 134819984 353182789 202735743 829333194 482066191 945206647 432072196 994055204 794849103 204948767 54971443 27746385 683921755 482294624 159594722 488774791 160682759 725500670 495818623 443786121 909773040 181397006 498332094 857703932 503991836 124366696 231986554 308911223 859135775 677942694 454323217 778823571 269356599 825841569 971971670 617645241 90984297 217471930 687425831 572715324 976711701 28120528 703554905 822699204 681826526 5955298 319449379 933663299 28618377 301358617 928755948 804942983 434787082 233562879 361456345 201199587 569785560 574872601 486150723 554246341 567393771 534820240 926653918 474392152 241093873 301292141 453419466 992882649 431545517 612136583 478419227 635232054 850338335 42009090 994283286 555905868 428621394 366984835 458857162 464123011 429698348 524854380 545158770 705484498 316036700 665821544 344366052 162171846 524423189 206040774 692909259 730386414 112818918 521756408 900015279 336958454 799087100 881428684 674980460 412176007 276735837 612746258 792617484 658854006 912426546 54742794 36278176 357052523 767787705 734466528 604954809 700903282 761122110 104994672 318347963 548082695 507551579 621802180 787570925 870623369 196138744 126897530 604108725 195571034 748947300 117009640 70338637 995293652 728484298 699188841 628462600 696675839 586683151 304577223 5017120 887982144 834345319 170330646 478760862 235698903 867563789 717594153 84875481 82151740 297179759 761575949 630368115 84051801 89063052 647749796 37999027 132633602 734814831 16791121 848595976 511875736 325718782 263776654 748030098 535637228 488461914 340798258 341027858 311118776 896472300 411376583 991683536 18685228 868654735 930957026 600459628 511051799 697289571 440566497 982129964 239092566 245039225 632888612 314393908 746001560 573956701 667174005 780729029 825787236 310464064 27568665 179063088 492312283 11870631 291707498 80190138 824497336 98253959 923897960 159105383 355541164 718475645 942362834 936482212 166444374 372477601 657244398 864661473 595096021 825899525 198196495 679114709 850466837 225856366 191648087 813842695 559565014 72359488 287932124 999971783 218778578 838434704 810453076 452169917 571389333 137538718 5363120 757580778 397382736 221322565 916658566 675374993 699077895 824467881 747200435 383936166 278406729 726767695 975670737 126212931 433538791 64415822 493176081 204494175 280571540 311600598 441896572 296875552 243098454 119200457 559080937 789370618 928073957 955952488 233801105 644475417 372187612 39748894 789138411 945284076 330280350 263417480 399356066 583422090 202833005 689960162 554385445 936275818 829374701 400265564 108848551 850087847 822029683 494427067 192101464 862850455 396608643 177669972 772647703 906757105 82904326 297850974 977153648 517210130 964133888 71368434 897772372 694229322 235430900 235702849 433976860 665601907 369021239 66467432 148531023 416087544 923930374 870879597 6411132 571655768 554383364 896448131 399533019 720221868 306631024 573275883 176959406 123528747 154444684 35513695 528005682 250911204 914940066 966994697 586004658 727565864 520189830 441373080 949473129 861093693 980045635 249985149 431918619 631673657 888213963 963156875 401499193 859149033 890960448 283039158 584952564 361056784 700264362 294785686 416524810 528072586 374478752 774941771 868926755 626153846 128880529 619592741 225509863 925682711 495668313 255076531 660215031 978223988 869272445 718646137 142224642 247699340 628711649 713650875 601428947 561782034 665971396 398960988 195461681 983050641 395133125 246104135 476756847 338542417 28087365 746274827 811651766 305086536 683712559 540297059 57308435 261202232 837140610 434645709 611539186 86336696 557291700 543468739 136210622 747918140 849309432 931795216 36048896 186348282 400599642 57273571 512705408 565849574 684223256 488819263 657552931 223313514 632930659 333672819 542855779 534945958 364878365 52550004 842539840 89152449 501608891 903141195 399160843 476455763 547593584 756869040 256605377 795059765 579315864 780919723 518569053 422412781 821353748 63380009 672684647 746522788 887379164 995422423 480484411 682072192 589489013 115948787 810268145 53592451 904875279 688510352 548080822 971625839 347217810 859446273 872333120 272557705 162480678 612906074 536471872 298714565 900839369 362093529 946690843 5432024 703571235 181167169 95695896 725790421 31581310 140612839 519945366 938957089 791115819 133103474 63416960 970758810 180662066 623108585 41851649 288918505 110736514 5541667 643137827 465094336 909782005 965217042 941053158 780649865 685493664 561823940 805382752 345863136 625805616 940650733 412110558 987838443 713662711 469142071 466907346 220240160 211416139 478946629 635969388 384498389 253976202 543123834 380870628 924299305 964514009 213593615 792746289 153768934 894669036 251203197 457228401 793243561 863911413 54639747 58036179 312276119 316485645 10014186 932324202 951032034 495022850 397516715 63533928 380158795 284207290 834571490 937369671 197381055 712482630 585406074 81042185 677498654 906239842 318589423 476415654 730613309 266679665 973513389 264875725 156097754 734350251 387180039 189188535 401137475 677353442 10057239 353133261 383570037 680625347 673138142 227733774 182250257 424070376 641664775 333546246 881191200 213512147 740826897 611355299 671055014 421396833 239957780 747222085 169323423 399688265 391122396 380547765 907007049 122521844 632037366 106644436 79310713 941974013 944533666 100850453 98214450 358211993 333856161 794082682 32742842 190232052 964858894 933310600 58857884 967535422 604666803 162927624 580240314 594709443 457688110 956208006 547875275 406179471 394007351 514207978 158068111 271354954 118736114 358532011 617658815 15059684 954240363 227988077 706158151 578684959 792680242 255780384 62403348 315151486 843565500 242599962 893460101 10417305 77701891 812402488 159177445 166710269 386274577 128836877 200855545 472575882 817079984 146083208 118884005 348170146 280800682 445781784 241501217 892851281 124407406 229365665 579392122 990717984 763040497 749137090 644180239 570740459 253130338 721065223 365646116 501891447 603577195 411594404 282439854 642819826 469136633 154063756 111075838 705892372 340898199 959097422 235422507 603588775 672855904 827770069 137823455 983100028 184037951 171167226 434543215 301536747 86234938 670228302 646270672 709896100 989621463 690882822 338320436 668703142 245389182 674618648 901227839 148643233 884256777 270710180 91218531 886011264 584538153 957156955 534926969 228987221 224010742 19333500 174678060 48494646 524188153 497835605 538267606 91714167 561384459 819849541 691997674 999301624 652451940 663576244 103920086 269643931 902360165 925233651 48558193 411348873 234735064 640256906 26159471 361624473 837845731 607849025 740046654 136512680 706024715 667223739 312082840 152324577 930840059 246429780 476355963 669451181 603408754 285326612 322302263 399847619 667362548 198085798 107481641 509718934 889142593 824171698 382300789 75681581 705025732 685906081 823507753 88766551 906566701 258012307 937456860 333760650 746632268 394227139 634961188 249885395 403959875 231707716 195263111 567077636 766672604 629927900 214359587 935500305 291529356 37802456 419157496 631177712 313981597 31199987 190061447 101863883 693870814 624361978 587070035 266965728 262728214 650864279 501027266 864335704 732472255 588286984 457486447 515343274 562939687 234410198 980053441 158336151 654220057 391265479 899164010 52998309 313014834 446051669 150712690 182115945 662443098 936182797 528142218 942870237 370013549 342856194 562163125 648709394 913514994 536690559 672362574 256341019 230093832 385354177 150226218 416103367 874972913 788576809 844810792 24806908 768715140 200359680 760710660 574024234 686726038 341280741 863926948 348570113 954853644 264339246 576252466 509184534 380527118 628745790 726332756 430277543 469442215 406685077 643138097 36127833 497409219 885753835 333808612 94145845 594418992 383378469 684016977 831497404 877167298 985654592 740808038 959624201 132872678 225467310 346377463 138754424 83103817 8067315 912862310 77461945 406935735 848437979 98081019 457568155 382527583 77908734 106726404 195942614 585529047 570483055 353921026 957016126 925203840 527720647 437374150 489573628 378021897 378408958 107524970 579208188 584310635 655642136 220240784 437173677 147135314 794597097 557320839 490115142 955779026 935618740 186779296 263422152 300548011 937677088 597565919 874021560 388653114 625163813 623825344 985294407 667600032 875003263 341354623 234560847 909644361 372280270 211646732 487357906 897122390 462581205 494253889 122136805 584796522 443027258 212013740 749953075 540758161 842075142 151428785 301167858 171261348 397932888 164305851 259909919 247557139 424086768 201332536 642255813 328365032 793670024 214404780 654554793 47597802 98343454 307138872 429846681 542996757 108211257 755200546 676685128 194619146 60799450 560044931 856768430 648204267 509343540 533111997 256474062 369172163 51566632 654466075 267290885 356780150 950300694 968887633 871467177 925903230 326421419 271526190 181797447 147069392 240398238 536956831 497348266 246267063 462730167 299373783 809159078 580887765 113179256 140896329 165182023 404061501 304312380 712127857 465579950 919271169 998657268 285881278 511544722 177960311 534356901 990761179 292536439 652181750 243100833 63720255 280833910 149751504 564057774 242665004 354497006 431580757 994253459 463906543 311091653 109652836 3941456 961025733 75609893 912241478 458221218 974536275 455987660 858573888 79038938 209890270 990883071 213102877 567779006 212168283 977254677 82552506 719375050 216146601 172521975 292239266 370499559 637074665 505637126 533332897 873513892 396242008 124802090 781647445 869096371 145087371 1804952 116574831 459424017 66594269 712402628 454976636 68120036 858451849 442949325 989765246 603878246 275877352 174788743 24917114 498380212 851177949 935969767 951566334 557834220 457047552 644188181 592429149 549645482 462039998 664495028 930068623 713253465 599742491 566045897 306043193 738819871 542653477 535226307 447612962 986106314 991567941 387225148 307529402 794837378 167555507 128246333 774184878 960125368 614080767 376382637 609267902 52156790 546039003 714665541 385788777 402474624 933939256 864519502 543815052 682069740 757339892 866200456 328372879 281880302 579110652 874531407 874001920 950185100 785380386 211939617 195758192 990695257 330517658 502018092 845380271 976077258 462323407 917229016 60763458 918538489 195536482 109322215 3992849 252203105 692989313 366597004 233482560 250026896 601833194 76086191 387265454 825860930 33364945 757248507 308886219 496863253 5108433 469917718 252060639 769848643 869156047 697512300 140607270 506692580 988765805 615574631 658845114 254182645 476279075 607839535 355112608 982721989 567443778 772481565 198121739 171319854 994985382 650228584 837110361 348183959 947918582 176664825 861654731 718757431 168631569 224753585 243193120 669118352 672692556 594615189 784119747 616248983 31708085 379235236 723494095 342505277 230880281 704800906 619443733 292893520 611279618 605913168 44012990 666233275 15519247 81038729 251117338 339494789 198445595 391264150 550839289 942280158 239801827 611257440 771321134 410892915 299053386 471168183 693903143 816418214 271030133 923188503 929103817 799145039 565551634 360803825 447247784 274510571 524134371 241480458 429534859 469745258 730885358 728099346 676785099 603653958 198749328 453523357 144578748 663349859 805911491 941545224 235842054 813765416 287767597 441623710 701469920 922928368 636114187 973229367 277216048 457295862 420940243 274750234 345691009 833226374 965203476 103156375 390757955 433974632 449834755 452000963 579681241 907667999 168481057 715024920 353603797 678780986 691686236 596451843 627912879 34541398 910908934 851524701 194753258 682490464 687428713 389083060 251731499 98546425 689065159 851230799 880509381 600679225 314011258 199021315 438860323 565853623 527766327 858354674 872291560 169887608 948843413 32309480 380801362 505379951 416626610 156251483 732961417 91803151 597923603 752941237 623587831 639547215 774870565 579474220 759666399 631618324 625080358 946776243 373228186 922778063 122182599 784591135 399452560 38114790 801050764 362597166 49178444 934029845 497435321 150521650 339668695 297340616 180507571 216201842 550098828 951100122 409696693 611022743 877889482 87302645 964964073 7609602 331109206 652171169 58069150 832034313 984784838 57569460 323364255 415329372 906102910 35862962 470829279 240342006 117130604 752232903 270896261 560042212 810148638 954629252 199638856 607769045 380886440 620986350 625794093 93931309 518984090 390768155 57534115 6295492 768512589 935604049 510151495 884590812 150612499 521464641 115185026 196579863 859977715 241720178 93266489 49136926 988301490 26627575 458733514 154084696 581307701 401578988 935827092 136126243 83598792 271434105 459532373 421642766 301623829 976799791 43136993 83391967 146203843 600457747 785948926 294961998 425648911 144523639 749994685 501716861 519460491 774990812 963839495 770362711 899548745 576190378 941037838 148611051 101410559 564790393 85828473 992196147 101272375 539728157 441115885 529105361 565743763 941341594 218298648 242105805 314869478 285475666 270654875 404971095 328695926 198848389 479779544 444088240 873527391 619983596 767285959 287996835 457439079 659966102 315173664 7422073 562426886 382725420 498628797 628857053 490879386 860305632 472816685 159060720 933464993 261817078 273992138 882419611 800243594 382338163 416043886 763489938 705166613 6691307 31772764 815905718 579040449 63272057 504229778 553216746 944685578 396401125 575020743 358100013 819585944 809428227 992573248 973930353 226499102 757258794 268965713 380130932 192728581 246863069 532800026 975364953 415972652 590734765 795977364 376385381 401632703 420881215 994916108 612128592 636580098 699206269 119901525 298321004 661949792 901118432 16558080 913690239 678149182 480888551 744377182 885669681 242838384 405903175 875922773 907777756 641698127 403481164 921652369 654333728 971234670 264679626 438125112 483251337 101928234 507662415 100349076 98948083 243566517 326868644 875123676 809897540 149157828 87855173 446867822 936873764 493329453 97592154 374051989 849792418 939841815 554092785 678172196 404500008 924511884 285523402 957997809 301070516 481559462 537571999 937678961 602463229 170096515 636356533 449023081 838280178 114935604 477586118 605660368 433552175 836182099 739600015 13037671 579212071 802841090 571116630 511530708 691011411 824308621 149601996 543494464 857954609 853087575 752149511 45365508 691575151 779536700 873588906 123553039 547163165 965073677 913764873 902137685 278934424 261145781 194322685 272735662 641392977 948296495 326405768 168613239 352560701 193031571 101810596 118598207 433908966 791652336 990336175 488748542 784987927 636179671 534703147 879332926 612881274 641620130 423635953 472991106 62383642 303391495 314717489 993993169 559075601 944522442 985059452 222259549 982590771 36078158 3845667 24743904 309227686 355246846 24774712 737892554 703757740 869826033 213172867 316338038 473678110 269126751 354420921 955710506 861604244 925700656 231863955 125864077 845369521 551536616 121426583 797494079 67152494 964167934 612672453 406642224 582999149 947930108 125458015 380554880 137828638 223834596 873359083 122084021 680976631 731685419 84654720 876006245 644572134 99645794 896298305 712449620 189900897 869312532 222024177 360829600 959039396 551496340 801117437 967228911 191544204 267104450 934573123 158221731 948613075 168511326 6186820 201808840 582693057 84289683 233627036 351641879 529716064 76048141 691459374 259441845 532841349 903528899 890198039 317154902 497951194 915553350 227422915 157263356 640899990 928268612 543436725 662899 379370710 118104461 566719252 932206772 338276843 257681768 217283982 119997965 973704923 737766695 380187758 727294664 855024211 133725180 194520642 254642416 312291060 590527571 61638890 895374220 105680823 726807745 315438872 929913130 829072954 807944387 738082092 554104600 273643372 385308382 623733330 799988975 954866580 600698131 412745290 41115797 708593804 565393453 852428436 807326913 986817570 530753629 206206289 688626371 703753061 989858998 883948288 750212763 812254370 75213520 145648270 886424796 378182770 426577827 384816193 553006450 602839297 834812535 581388083 292069867 928189817 854176504 947507399 178183855 570283406 690679702 588080545 501032383 115257881 122172922 166899218 126307101 661275985 758676420 863757597 254443304 395199290 591140635 505290961 269386176 215539740 809337350 243506746 287587167 905554106 180489542 205091921 792086355 159980622 746271520 964290779 325441430 224187002 674725138 711622402 806174224 258213234 697268880 615298785 425210449 258895551 626007311 631424751 350539311 604705090 162360086 421623229 266818396 803099991 472576924 741455511 148288023 326385094 946117243 249691138 364047759 572615162 615874500 256219202 316835432 597409198 787483551 321257094 994590973 820066939 94986432 962097439 178757200 939147470 156416149 136736944 261124109 425702851 293937070 253922745 543287611 327765309 271178679 858550256 876673713 537183349 554372899 258886547 872877724 598873494 134580995 930043570 461025085 981086437 953749550 624815715 185910960 522376414 146297267 486584772 15867497 242714143 591354360 281544376 52005093 891987826 367175786 830766207 147499775 774190464 168287495 445916336 95483020 448072332 141367700 533349757 575757419 892200383 563132884 476876320 17579423 77537033 622125727 51958091 561225923 861575956 559713466 850705245 482007658 908424394 336915434 992734794 315839737 196554443 900990583 45226080 108569537 308636734 663745129 594517532 752160064 465148107 681429799 444140732 897165741 754458341 996576220 966228380 960020842 400816049 424022588 699737001 934489157 840971125 235703084 550989033 883438077 721722425 369098889 851202524 878863399 173577056 715097699 264219806 339473995 142960613 89210469 486572158 246108623 912920271 960920000 809180368 479803033 962669936 357496663 510860256 825160183 16323511 394084076 620916151 166736710 930981320 865365016 590231622 613431635 865294848 687508750 608036841 709370765 976907125 326008155 292965576 693675818 818120251 964992266 921034845 246003733 804144036 548315164 27523934 350689425 318225865 847193770 987984539 681124129 631579387 722133424 233686150 797243810 923962020 545087939 977795470 936662566 535309572 368391053 742973138 121134571 735926142 478038526 843301232 112630386 413598185 848009045 858408639 475872701 46662693 781735633 996771027 416246758 297857834 768357384 178653942 237411983 211620052 158779461 909715514 166586382 105730380 3010962 703058822 400586355 467353744 223264282 182368532 661139709 478609192 172505594 833304719 956469629 34851414 493921323 409126600 840340838 748693251 7547247 417198756 187129703 634834794 752460127 11471725 845757459 575205909 905022883 417787658 207848649 744892540 601161297 953767949 839714661 200776186 147902983 834679867 324171844 893284752 983435059 472946863 941417052 982204212 984057105 291458867 710337972 725869332 638455404 113986037 545785451 417496008 230163857 440030259 459397303 423016400 193507823 48879544 251076772 255089899 622881665 118952358 382233640 883716834 842474854 813863130 617958232 300504109 342761200 233080966 209700898 172482335 624334636 658324152 979676529 432011502 443145292 672302874 188992609 207223747 479025279 922936029 155754544 692999568 232303650 462940694 217308438 554014510 346472447 9158455 411677658 980620176 253849770 380455931 900837627 551283817 151296047 405824831 35633894 567491557 955597030 10196125 31266677 482329756 582862170 759355855 133555924 980707490 551217400 533068651 818985001 396256082 702257979 910493170 151593289 719023505 488826303 372934145 746073084 412644203 19882158 474046572 513099931 976479673 756025794 263081392 662712389 161291295 641780719 466102667 36564104 92974167 318804014 346213528 216207560 918848983 124567346 934983275 694038250 955168494 665986373 226102281 566220675 228733900 597236965 212600438 134742823 206836442 691814336 93754342 428751910 847485116 467166873 217696676 242184943 525659219 258766907 502348866 391104188 821904088 146999456 320465847 979373953 132047878 197186288 168084496 751441292 712101853 394127929 325085760 880289977 234620785 258335641 155529486 893046709 377371950 165235682 248026524 57338578 503842006 943411885 923047295 992368638 847552630 205870089 34063050 500896850 574447318 365229234 732144553 936540143 691076595 765290071 25567010 918253023 393786659 837799752 836645043 164932670 553291063 859111665 434316224 738103386 699059907 87295236 490331809 30447127 308513029 28183515 304092231 305219602 357747611 220341127 956579004 338913405 108957837 565500259 425683049 794115693 905927920 641148717 536550786 9257358 501258202 739596691 705304352 885909868 331596818 575807719 705485915 422269216 152860121 553966827 230497581 781059335 367998759 346592470 609969169 663978747 295336479 617432757 836427437 806407665 271939852 644258408 985207125 838409473 909645851 207923092 827334176 940361112 428768757 654397599 639762306 636929509 449830023 135084323 980556523 85177698 616740493 119999368 445958382 914464401 471167518 970171418 952748784 711167533 69222664 775464177 379340637 510737404 793242401 483042334 272264093 671754823 591257479 103594324 234730748 680772186 374858447 577021358 170032410 546948659 326894830 39454798 852007658 400785968 141890865 249341101 349804135 546986856 294338136 674170216 127575045 186579037 799092335 191270419 906088757 951290713 908111747 155770630 905558291 375424026 334853222 624686100 845196900 355755541 641532569 873231970 795348299 112166793 353440611 66208490 354949082 523672843 658561312 315921725 542966240 673752534 536643274 504266960 190935262 472548413 889506687 786977300 928814991 477685739 10266480 31021418 623716869 520185810 840214483 554465480 987779785 661885192 752670986 398007751 740333122 867285847 147483878 61730678 559096048 117390082 671270755 822139067 306997461 748708204 222541275 719047345 186750581 587849366 849203651 391058239 230408621 485580388 616248158 655481659 386097571 862570331 437251829 109783332 840263974 101929032 594854511 143808043 306190936 469095863 964074816 425079446 806181126 337784071 709317154 770789419 206391394 79408669 879036040 573522056 786522107 174586421 443720127 656152516 861552457 567746264 177781203 746887243 836497575 727535969 785636919 144011469 345880307 356176802 150265417 456660604 982669886 787276754 128799897 141755401 519769849 484353623 729299481 495667315 467784185 369646917 279274429 35718589 136108231 31308054 914990484 189165563 976421199 971073453 25816358 88222605 701600767 404133378 647906528 325531330 755221693 962621244 287795636 254194970 374894811 885076584 792547821 712115391 418168710 131754934 805078220 341020970 348766290 761828532 850214193 612097483 654160602 497207446 604267405 948843721 415106723 312623786 495739830 362180795 489677127 114485119 628191502 205008509 862641958 190208054 961512308 300472276 584139493 568325258 537629336 112905489 942151771 556805331 841688144 941836689 421786921 408267903 768375532 584753585 308888848 565146905 918173786 939803908 486000618 67565614 507549236 893907203 750383500 693421109 905093547 111854421 164830698 234464454 481773281 63433191 732164300 961111922 917161163 196279134 968324428 269955381 683856917 636499106 348930179 254628183 39634950 389186422 621065756 193110751 700226394 729666575 595284217 667508090 783754823 881686085 868537949 486570053 646184191 567396144 93701833 604881948 972495764 567396146 713932287 382819133 608577324 673648244 633191629 628695242 533762202 414724848 400615581 722127500 474298284 519786582 947226857 681693145 467685761 683141379 901826662 10522155 589074029 662538938 161460374 396086800 875759838 547990568 915795294 829312089 479229017 494953647 280754932 390022367 199275284 807529536 62435874 559503490 388998255 943814534 822120824 975960932 651286114 736155655 94734087 141117183 859555950 861985481 647768965 229762348 877821594 837813023 460093717 895725771 928748546 205277657 844397020 680386361 58020760 211822889 354100565 939813009 527923609 879381721 720773954 439345234 191549734 162819302 368000257 473242142 741285222 967253031 68426818 159484996 998827255 53798186 705743252 679234 558549043 151010896 454577222 897521516 317931164 887636301 688447323 646422316 172244487 452810845 468747435 705737084 142391341 996626270 944373101 393741195 5775902 684592320 502238383 230102541 991633451 547868473 255121077 210276917 562043781 906621713 195068703 860223715 577996318 706464493 400571024 567698593 273542369 337224365 486340749 814822802 775736240 328022163 176569810 892101342 149366936 26300361 463664851 790558740 113802231 424908254 292832106 339289953 950199617 96890421 101664045 917594050 873580200 828587692 208769241 852801601 571443822 789938423 691515542 86192629 679768604 926300960 912264208 89712650 421200649 822624423 576649593 149620864 15498144 913065191 60860335 934163498 270290797 857976176 714169676 14365016 582759228 444374256 872087488 555518941 332766802 386283139 575053678 187947897 828938238 479282059 9081777 992366583 767841661 177254178 877861409 287653712 57456340 399806605 442811950 986388299 380406099 645763905 570275980 969426321 506391874 969732094 799721756 282577334 774261886 242243519 610866721 813418145 143507693 259227397 786902650 401531736 38677524 505095634 592170935 867177546 539649358 956622485 269853236 1133619 218068976 484298550 353609778 626460879 563691755 867040212 223294974 427959589 576499175 147650065 680661198 613966160 241258214 315141904 460869479 359626941 941433076 871011139 371710333 627953269 529168514 411834184 923628363 637946305 5502878 395823934 296164570 741530800 802596730 140423645 173375723 459660551 698886343 531701905 744296599 621025464 551252416 3169376 905407823 83819000 274224942 108822056 733223955 749081866 15475596 322871099 853981767 709082825 856172712 484329033 805073707 824900278 761654105 717444144 622177328 68224411 630284109 676581523 141013173 868055759 570419866 678519551 719047670 909151739 419340599 611217715 293381730 395431973 713285559 801704357 473274107 746881715 700704858 333536135 934241897 333027392 211986335 155031812 906317233 769558435 677187159 763789217 494217008 339419606 636824696 511346212 343031077 255820108 795341583 188434423 410258511 157159157 17364855 51386307 845959035 88798014 475537938 462827108 382132291 475276858 501494116 647977151 200033121 31017045 613382354 790535185 125019817 943392050 750872343 914749101 229521948 568028374 169034603 998494379 483338682 708742726 122665747 471748953 814177764 557502518 408294666 742600627 574473260 797172277 371638608 690326515 650089323 857370441 568061060 572334 222372577 192993047 369179456 611374862 743370773 406810177 74529151 731856387 625071775 988007920 388598854 42298489 169122247 550019944 961765936 502688498 777863269 474633671 188630803 527732031 230441579 412860809 125911918 490826187 42728854 457905926 920539063 73460475 294158197 523120587 773024380 823325221 990831950 522940632 200299676 411891386 358014060 127924055 188155355 351672471 916817484 986921029 974029091 603882103 594447998 522552364 558381071 697799703 274691283 856543746 555183857 558030974 127089423 618108295 61192303 664915451 392439457 296352874 282235331 857373773 86155116 844747056 789594272 33012194 713571670 67960481 807306527 936396148 221159158 301314067 690158497 812691175 335966159 721718915 990180510 187344600 265407404 727246391 153130557 882448988 313482591 64377933 662954009 380379541 139482223 26068731 824006899 941924518 227567503 274642082 347450710 574587978 93270337 549425724 899949507 460102839 455876332 770367195 951654982 548154231 515460855 140384612 549378440 547492523 202993984 405607694 395134292 95280708 857933285 283423593 539961259 266384908 188085775 67316683 321345849 754116963 716824928 466512357 912806720 403374112 523103724 867353660 228558107 544823005 230900796 658057430 341722086 756246664 774366922 34948214 388855216 160694272 379480827 22289906 527842055 802537926 941194357 484412048 943815706 11760226 376822480 822266528 577044601 130812137 628508029 928951826 37182999 489008861 30083164 866297108 133861041 750616638 787448004 990011883 953731357 846255615 714342709 575635153 402050893 310214690 668118282 367027140 990502384 637209723 689834635 589713772 904306122 18248568 375081158 363742332 47221212 326286922 36832911 482371258 898921832 564763691 315773703 920103107 383855454 533900371 856927044 868518982 821669935 652618579 379219725 983680207 654543190 41923101 501513191 37376641 407096056 999302545 500540152 149369212 453878968 140860817 188115263 546526395 667316774 151265186 503990323 911907323 578325601 112133505 658658006 958211576 960387213 676737127 699455438 836878710 855789223 98424275 228058089 552010610 301019074 762542121 77682521 145939541 505485910 27023909 642149723 389878814 118015419 477726014 457383321 882306798 958062564 96131385 262961076 314674557 499080430 197550267 41811679 481675440 767191191 422235736 129415998 112176789 503516688 871169079 715933702 739186636 670551089 170878240 281434263 541548975 742640661 899826590 991052513 586368349 843092592 957435805 47094645 282601512 789005342 479239560 373165497 565869432 298052915 794145378 465097723 572860615 873472516 126713518 454811922 696604897 269096848 279911963 170692587 286904655 478871569 554223141 27475838 154448440 567334515 121384239 732647536 618799715 285455364 637180228 963994627 785896914 768932107 347260588 48402088 378544504 797326592 555877501 5199952 552872900 230117415 671540810 379811167 587475139 871597127 103571202 24951571 69742251 632804411 934536876 61020373 918400986 928714180 975012547 973387081 696010524 715190393 129894992 821772777 935988623 809191585 147787850 864951578 204782841 820230943 697608734 432481531 345816334 159951800 961989711 783714706 104656515 217089704 973069808 256808820 500832732 339221755 99765818 117797469 667973089 278432008 399033693 928037719 258317504 55472371 412555566 665156676 97066778 1911001 992591404 933600235 240292729 751627327 162418301 147704130 746411626 202509819 232507002 23130342 763966662 426334542 786177872 594468131 725281479 563244735 492377361 974684529 218391924 267152315 998168421 305931865 632417067 974989285 437342657 341835378 20191447 97674148 136835630 225300539 633267259 29678785 842719567 563664005 548048875 845156584 81925931 384931960 411782005 735263544 468069737 508857879 999814831 593519626 281813257 144739658 368435012 408586146 454561880 766678724 484609046 282117318 726952010 351087083 741247210 476869045 553658948 698287068 837937102 299757256 608401336 899598777 143059216 357265600 271510387 9254140 108543293 964068944 606587923 57660629 755437515 733403612 913533502 424831774 523231055 176232530 242431555 297459779 494632914 667699655 576859897 350492458 763324626 564119038 847484140 346127894 663192940 183658943 780978548 310188545 245381845 819401267 268437512 814696011 816357158 953504565 248415513 9783186 48414454 503106703 314240169 128253415 835282165 56439180 378572434 674474230 712370847 581295742 3138604 896729035 650481261 709296630 76418095 368806910 751919973 315792041 172671011 512687587 424624972 293135965 515746140 735067973 959292381 194337781 497673403 350063488 747760275 254402645 109708735 389232240 276743365 360212524 422806822 741243833 611870231 135668458 48587155 621864267 527089439 367708935 189010400 255618124 418102034 810040416 751154078 137309867 78643608 577600992 845492849 487244147 969368262 65621726 796550369 380153005 948993475 752758962 383773109 968317741 84719570 164346394 899446924 849911033 98789391 953662406 554208802 343453680 827421176 686080815 270917524 590729469 95460772 590678027 413212333 743640871 404110859 966137728 227903593 72728483 695853903 520747706 771756006 852958137 817663573 752516922 142032833 52849750 833975830 505529321 902058230 172815682 91573373 428896319 897056105 363177148 902470196 989225147 114977877 910313797 152831868 978910470 883227282 277556131 900386708 614358921 110906516 25241630 344872668 20588431 978674439 72894521 645416119 297046508 593106771 148533778 978059419 167810281 693416272 873149274 908689982 753909240 19306434 63883199 603623471 416510380 314640419 479105854 48745540 500283469 494952052 199369218 679802718 138344965 763561139 224397556 376434986 108496836 414670061 558830448 609120724 834641267 612315200 951441436 118993279 292883548 494272813 728927207 750558609 20666026 632284065 806237710 381883988 800475552 575581682 79780627 197291520 202120015 407859380 225500148 654566100 406150474 735892322 759607579 419508958 933971757 797529859 140901064 670267234 980785923 526690266 386525275 409243756 455670458 340248158 825761927 201725242 478755670 699301519 289173871 238248695 306427704 969945341 716574838 980120406 917149114 525460324 719889934 474534149 513857579 445830136 201744200 475433613 203528238 594775638 125568093 533825806 432199921 431738047 209076447 632569395 405190682 723684644 978632660 726418763 873180686 112376435 745940430 953346440 507710157 440207879 101239745 365119041 892944087 428269372 89233632 657031180 526562138 836986544 577233645 103429104 533560256 272584877 529287468 264721310 959185298 926946880 476375792 665316385 630143549 275445456 536861197 348707522 228321389 209881370 100096767 147677943 43237124 998491248 913875154 458814468 600866695 390229120 582743915 500563129 598933265 283572843 360995056 134557659 830099409 847746281 13960870 853235262 49578710 687597480 193750455 424411476 244360390 779792309 154497240 750758951 325651184 865953686 669310774 3723716 507683045 349923896 979760756 862804719 264916279 856755047 66958981 732907255 184892649 533784282 634789698 163713539 327276475 701881082 739319678 257951279 989267223 493405103 643980828 293023733 794711824 456494434 738539269 601691893 735971019 647070040 757599081 949156392 69762601 150686579 748695415 241840197 677646839 93470142 916581295 570139453 957230033 419209888 546436455 46893873 203187470 381077154 704537086 638056207 422085721 164116644 571589257 67238980 167068264 190280386 922935860 815934317 67243955 120155775 285239863 677120460 247219045 616302346 842662877 316967646 426645047 938818615 6518224 699324156 90224871 923817041 386068982 228636761 575988390 113042138 744473390 431145158 367066512 807048138 317385537 167278899 246750398 909288523 128801587 584839881 812758274 236695144 353768794 600155512 266440175 473561541 195972505 193535674 447331501 513555266 329924093 52260479 105897143 527384256 901538509 333417614 495701974 569183701 430218528 32011746 221667292 142700767 335680826 705537822 253099732 659933693 69261705 259793179 244598355 854277945 365462469 65071555 940330160 257450679 82533312 759738473 102796090 185284077 244418506 27263626 914286632 832502415 589770905 386995855 318005619 433034037 66555968 823439123 742554272 813162885 818822223 308215737 320248358 155801734 477840898 255136409 772160883 219936847 432297013 453214421 975615566 777611289 988477569 966369875 279230487 897877736 146888229 911327715 156613211 389580239 923526802 873882880 151946032 176776756 270098480 805740191 975068846 691965181 747349983 658384364 137824342 643109860 362139368 230766909 532091688 362245726 646171906 937230421 858234564 50181020 87663447 515260536 12209827 952923551 812442349 337941075 599775522 823914125 765555998 330803812 58052059 855840128 790123346 167655879 894960985 825299615 476255415 112841 993128807 441987234 121924708 752837575 969094411 685301395 39214554 71873338 497355308 998457296 311889575 184146169 441632498 773084835 650224131 1910456 885533773 781795286 527708050 388099510 36046455 880991126 710401988 429655787 817499842 707908713 591366770 430818832 297693667 177276939 353387420 933740602 10618449 731726884 480501143 141177857 146842435 602472895 241245485 552661276 629916909 360711668 559901454 806195940 714501996 100227644 663306051 151607210 700478515 755055044 124675848 453190214 947118743 345645545 301692876 437068495 741824030 819492239 409811703 913732465 955143180 125854059 889542906 307044884 973715706 176044937 857151392 275232999 283065510 991864212 850335025 556344345 356874128 625380949 813391858 104260841 447026603 278151391 773361868 414551836 961831316 115623463 738385937 980807178 802697114 448106883 984625099 816504957 926194237 549574904 531492711 529195357 299794468 628751335 812050768 359376052 978419368 821819098 92979321 966401944 436817206 882265624 578899907 760255895 325749502 734229865 728036194 471145788 149595553 738543345 734899583 92925351 593123477 263782328 447135150 420954062 945043599 358490693 375248413 31822017 775177265 260783652 417135184 230713538 825074830 425270677 151012214 607615127 124730900 650695533 788460827 248668514 530605057 1012729 841411477 602499279 964447816 98300950 788479256 994858382 309756423 961865445 178220893 33291195 896656605 873848128 530882063 850125044 626420794 165287303 127742027 583832181 769726565 623727017 238565086 851364319 636935674 970806506 244858115 553172014 950755986 719509600 144987880 323004072 930144188 232520887 820764591 736761007 179730929 571797395 576670306 149400838 672769323 790605617 171266582 593885555 938304820 540019566 139774363 401432477 436596375 161032661 193976442 483288046 549978425 919804385 168367357 60879921 929406538 325886271 441769397 32924632 83808861 479367128 409554596 951744518 813095773 386168973 225236500 202536075 41780958 139693665 100067174 433629954 29381910 111767049 604619303 245806390 734366268 722144052 276286549 402302799 658170762 443386784 670056733 292706122 60689378 539552830 209129417 316677821 625317142 671713105 276144351 825292128 688401958 655408985 157682591 87394962 129997733 650007011 34814346 567685614 906519403 6048 820365226 508182854 401750424 550298452 602850225 543687268 918896770 740258560 707567167 139976372 711229708 657281542 454315112 823696789 482696149 883141179 886161308 346454700 250793408 698018186 624065786 90400532 103611658 525125233 51624267 547459074 601329577 577285518 938334207 711908289 803270522 593440243 886160025 682764464 322196520 38050423 102141833 169696622 599868813 704323759 735353952 807546320 954973444 833087002 272677118 654111282 715719364 147960172 412439420 671267828 993767941 682329721 657348106 394147701 387901263 397557177 201938012 333553707 506701344 893146528 634211586 197633219 618625925 913575467 674113837 347059109 166590783 739302215 251549076 81950180 536027246 64316483 800221776 280678050 460786906 872240115 502078024 980872744 256461307 110895134 79436249 402893898 576677816 327766815 644733221 611044956 494453439 804340618 743224564 556957971 148770574 806674782 583799667 905126445 523615179 540546466 462913373 297770252 946028176 816922257 882990886 68327453 751645713 101756124 705721127 107203137 63728550 315469404 320831290 76714786 19091349 526237538 948539707 725128085 925322161 800417501 119419726 524846045 69422518 113300431 673249412 349992449 410767720 559654318 965616372 725563247 126069162 291947869 917481430 631834979 127960053 217876525 5310857 257398290 381908746 964595591 93118186 61638140 637057974 132609937 61945338 979391471 738143874 994356850 139160856 325234744 68995471 384091215 266403932 949217222 876001233 617555389 600127785 112520739 962948367 499426783 680051105 60828996 240671155 928153609 783387516 412582460 600243259 974461038 472978405 84498613 644727204 93363263 284480008 594478875 533973278 812449025 685481410 509141515 995049272 399724841 105598572 123606965 63530081 813383392 404691880 35494125 94740629 369959245 457618461 854139423 69974819 596531479 456954442 163206293 832306668 367750274 994604035 304951571 994301718 238576366 165302773 982452145 307297972 506252159 407118243 263984546 755063295 68195722 866421328 143978040 903525890 737335955 481320233 138569553 351274607 835044168 895453848 464541677 927623014 515973473 884669599 915017026 627075851 938485481 689148577 975596066 815392668 814569895 534709148 880136059 704960406 183654614 891824299 591599895 377417572 614812432 427524188 66647216 447975462 420270145 885792841 78045145 602650859 551825835 585559790 805882261 963299243 786270144 691628939 977382665 341810718 80805746 881421450 668698535 902388972 627485841 488171695 127879944 394228591 404644270 770199502 912373131 254702340 738917543 517924396 296108842 509359638 915553282 61564542 222239349 970972033 115480743 836181024 298613138 854932701 603027618 963075693 639659651 385695941 736889272 282866905 176855138 492433510 41668568 590327529 4685684 324665702 618419647 564514913 688710800 25267517 975453991 982247278 865309990 536745302 771038312 132860668 381109326 450127784 716679224 664599919 742654268 165748151 798834653 389079564 883459127 924197501 992538773 361991151 519468143 801714136 454668619 24512651 645799599 999132295 77726153 280660360 685648722 865629624 875497387 329274128 146851235 501666859 804162245 13182256 968941061 918552559 701134798 184213285 103811577 961376851 416289834 274644260 882212557 307967439 803224200 547283995 220865649 105904792 603354220 898665238 183978523 116124152 257401463 461001350 372467090 365429344 808922047 473763828 637371474 268382700 31908329 374768015 910238988 836812284 264945352 144270453 637839016 743435044 581015089 402020976 768728550 331020950 607980562 121313413 938737953 279726538 432015598 695263172 629211580 791314503 110145793 575654827 355172601 397574427 973937860 428819372 441698278 819519201 307269285 730605015 871858933 462378545 514596329 294362204 385123987 738989828 470975530 464364089 466940598 564748842 952706412 380814913 284605974 511236527 730321777 929091522 147179998 45370004 671273927 340700667 63901526 78287878 218959044 496369154 59720199 547816373 655483141 795383568 969105724 555608822 844774066 329033605 247048190 572811525 72498621 591664789 898965278 611834221 409238505 375636724 377362208 130211797 742842975 478934633 489936545 698035070 403927236 737433157 906356738 941823449 21035227 421029136 468219904 202953309 718828258 962134713 94198764 763382011 870405004 948193522 685147274 540444742 162789634 644758088 904424549 303876957 976271764 231373529 657530588 3911838 39261219 908043907 887491666 97162755 346115303 543499428 189298042 639820650 403907887 703897549 788670137 812124883 125040765 4240458 862504304 71638906 542254801 434700626 985439138 732626778 277889227 46660638 251152497 452524954 550439641 912335491 397731304 534983955 523931127 825038803 32540285 284530920 35730753 997881070 891037266 797635422 502921004 778317917 563603648 794780422 161773296 500851872 214819844 371053231 568858519 697967320 240692453 5815866 398836177 840703045 218319533 516471838 630051255 899164266 360764117 643288958 702059769 516067471 47494879 149637513 328118625 305030954 448732040 337191656 510659740 636979134 127671920 296821226 726335971 22721345 902482296 972019729 863382231 633281941 439580179 200263599 305493946 358198502 704567416 135511000 745930143 76685752 345566927 408402388 723365085 292728998 606994156 382633692 927688011 668110237 607347806 954462448 991629367 160213239 249771132 768509153 411498223 52660009 357014365 57274818 466009279 970516614 529779523 62444145 419475421 64064314 621362740 387535491 728126856 939717463 178227773 396791309 149722786 825972152 134183881 228478727 704899826 336999333 876567062 94530283 566073444 341357044 463599449 981337408 889409012 168773371 94010562 177840823 530127853 654014644 119878837 62510294 711063374 50397404 601311060 589396585 256738672 2829354 394088559 817776069 380767629 443711004 199196863 515353951 3350173 946546911 986381156 362702472 206032381 189329109 44676936 8053535 541210513 183547437 912053287 992731285 964796571 508936146 39669567 379840930 859938855 132759537 793585024 138462259 634029658 618516110 997854357 178666306 875391933 201148587 742095588 402754782 5658608 518650808 116577635 205004005 780845138 617837552 176672547 477939024 733389508 865136615 838640315 508614037 687151343 696425287 989940200 953201025 959178792 404069783 498071510 760711053 896731485 652196876 596592068 364355947 998495574 242230424 528536979 633697540 788661862 791085401 427404556 784732401 929878026 819395435 812328471 305398640 418666264 268816997 562583605 331425615 962591251 734448082 440514454 111772818 898470252 585808750 70979330 153720829 622939636 624115203 288223609 713630948 250879622 46010157 870213877 967030004 46533419 726531197 886134640 466370898 370930297 659441868 90115593 603554398 847190150 271361897 556187757 322126860 701261718 835701083 675832695 671590496 150318500 597899897 330710818 593169835 155395959 550736887 685950706 922277712 329043380 223818687 101346523 858164620 288596730 796526712 867655191 19100450 784701247 584206220 434099661 993667213 208233819 97910011 599326432 703056020 247071276 472142828 142208814 381785197 110303492 25521123 149243334 922818541 621864926 5955161 518218133 739580614 12767201 370689334 252692386 529997862 763623209 449396132 264237756 561323951 761668140 806899289 495526025 670194185 275360574 378952957 107456151 462700175 318552922 907657283 144448960 784180169 356038133 690470350 750892949 743578943 654833473 845908360 808736463 651573535 834617460 934309032 107915117 799301852 195257528 24976895 642672961 191012059 859210156 64319825 141020795 386296422 446234156 933810640 470557444 734739498 644116824 556619987 853349464 296339191 364884048 744194143 907965916 830931839 509216842 93422917 321155209 401536605 396822723 900015046 209754052 551643418 511674132 717943668 518118952 758682538 359127698 355672432 569865477 428911913 693939901 849604289 157889696 498771947 806218845 510308846 702757611 911274749 865932567 804683207 738855848 7790480 432272535 366158329 172331911 47869014 113375750 916837943 249671199 135776596 659777593 353685745 493981294 480449481 836093896 785935246 532733955 709205470 284900889 207905611 958767074 541778537 869147870 141240795 770044550 798195563 572148200 638732181 344331616 830517698 583777546 903661730 762823 740491356 565634759 76016166 553014386 987679861 77852449 138993991 494295455 785316896 986250205 42914579 67505593 304129783 545746369 466088356 507895861 416952296 237208224 115773410 539048457 627571995 949508673 809266424 545301278 800783323 993452117 964575371 557513330 731471172 146612092 246156778 862038897 490456672 473828814 715278183 405147980 897671646 254424425 410682785 976404097 269296960 640056012 397484910 123865133 442131213 898104284 369983921 593419827 208018074 786405272 521628780 336031771 315363242 791751563 873855920 313214258 738367908 858057282 890217746 921026287 113005841 412429663 7357436 437426667 915215193 148952757 119631207 10730669 540879110 695325671 437872932 196376811 620246134 583000957 73967166 964271463 704428568 291889182 554921282 929175710 358872095 714293937 189988930 548957102 448310119 534962519 10935578 234909012 145070993 113923590 628882828 758281774 301473886 529654895 723149330 9221554 384086789 5993714 379473705 692936798 272139397 420023943 954226489 803689150 549315440 96412078 968743112 527306360 183330975 628241287 783765840 706432686 590972851 239055068 761189700 215201325 590545589 167519709 966449295 479171426 292720462 715051958 277822325 633090843 604034385 580313499 331214680 521595008 266910834 554859690 748271900 183930483 33574301 571707429 692077207 478215032 85144204 160927173 241838370 911853649 662144274 93068459 240901544 790291590 747534799 416991161 236557256 574671676 701164190 34762173 232081060 205365726 322539196 500802234 356331498 773374279 33824465 238530717 109328741 359950158 118745183 711279011 308625609 259489004 984021509 956006810 595627675 970236433 986164945 29668618 949963371 421044140 736185925 939283248 465832369 143690363 616492405 346760165 345544441 149616626 642438275 623122440 47862125 425501201 234023694 820240450 492324223 478519875 45754703 782810622 71569936 270067559 77446611 625057636 731294754 942397980 445279252 644056800 237614295 956187866 559647829 629462579 113415775 322969086 283312098 598543916 521673743 370504114 41677271 433520953 683513816 350933548 982199700 70944063 936513057 23037618 533909688 566878332 605206970 17076225 185863586 975302159 205186204 723234793 956883362 602967685 157185511 655476703 795427362 936874215 208614089 784672899 399562837 778551578 229874715 748587486 445916820 921914258 237062393 522941332 868079530 350731150 114259420 598528340 105924160 994273241 244608863 474044326 88768927 143635406 915631126 943322413 595867900 811283709 684706275 826161674 292994810 209327134 464211010 524856220 643146760 215758582 198018061 469269255 911425050 126442858 986369807 255310126 952230447 207901105 83856951 680799052 284860922 929223692 661717382 52244687 670118722 731291837 203008304 16031152 956754553 273267215 60740855 368188467 900786882 298286345 508811681 26672680 5937107 266681121 203320872 68554400 927298702 299052261 409770660 250296645 494603815 653195078 304947891 875596412 875214328 191581363 21548151 802526748 396630334 28599656 70367155 401127986 44463194 168853704 518519346 807364518 990628965 193298763 576165495 915658160 700869995 94633876 361678694 215788376 727505106 869204075 741898834 270850866 497153668 525579523 429126345 840557500 896400861 615228967 272276160 44500672 927913195 779017754 271698593 148696233 349962238 870695869 785768263 12470154 196899126 836468666 703776176 517291738 480733753 477624335 406895093 693790281 359021138 382872762 762800830 353492156 192363368 916552851 670694233 100335832 382033547 239482747 52239948 908137776 651329837 764385510 230973583 243492523 568834011 851447128 591075124 608267133 317053127 148933893 63151628 401208349 33649675 422164644 383720536 736159156 74640359 690912426 997687228 684364590 129377609 515921047 49711983 352200942 451135707 3829377 360244800 492805526 12988378 263585550 508799227 667558213 80431975 307074025 209612328 907161588 312380632 672443269 403827254 560750421 917083933 332128003 18446156 753628819 578141401 746507861 189256136 841197581 858503624 150283171 465697993 317708694 198291103 893856720 455279447 765478433 531244798 464069571 91915872 112316169 499119487 430013785 194573617 60992877 924535478 522643711 627828512 28264213 620584504 860728928 578474418 922642328 67002716 556054037 958022688 266444830 64577667 11449593 924330315 640815479 491881632 466302527 656123584 810241137 214738852 468610525 607304598 118119243 38267015 624251292 35182056 833160867 556630333 223225687 435168577 838532223 730907933 49839114 332364711 535174198 484127554 42232008 510505354 588872021 856942074 40117384 713947618 762813609 902529284 50722289 724569505 601065102 745582631 269597393 438358939 45690199 435641854 404016467 788837877 364122617 310341060 724002416 339377036 662574560 180876001 176567846 637865981 428057697 67651528 342859796 767139178 788747548 208282055 7362843 7403653 298950772 209947551 700048851 236511580 854966144 590066689 249693361 676221939 95709039 784453184 281864727 218062036 454422592 422094081 40780797 73016076 638775890 821749640 195572241 55046026 140106187 59012383 793298726 396633597 876082811 277159380 205173799 162356931 717768201 863580437 920890004 739566930 906973545 531618100 463744241 564389886 461785767 123598504 747473060 173010433 165086592 976963506 994676079 911126410 980116609 33209567 78250821 99815792 368315667 197599349 944195018 833415462 489927532 770911189 946161418 413648491 626495731 709466297 827482253 19211222 731063704 429730067 984988191 303584572 778330152 776738450 19497380 357630768 966875824 952301176 557988891 890670332 63587290 615561440 496069797 375277478 772276673 743663942 125284715 741760271 69390920 427830881 8713691 446409276 147920029 532732566 888603429 746843642 715273376 374463776 799187424 971153572 307309713 113811383 348351851 111034391 783445774 224668201 946211986 249098152 616771399 677604172 183474628 5822367 144577090 912211195 649632225 483263473 391045303 541615820 578204581 377456056 792417765 200008110 503920262 610789500 895245965 723226168 590535180 454759485 361614635 686056187 233493696 313800289 988761697 379628799 914768942 949628416 620855091 87138720 591418295 59640761 120693888 461661890 878722772 56881137 781823320 632184039 248599012 915769984 216790803 519974636 437395123 399081660 186937573 165961501 635308426 615671463 462026428 437282030 510223542 778379909 240279145 13166871 382980574 125370801 678514367 969073876 566220896 696275691 185998873 245842807 191963994 918651969 500379687 543023196 641188123 298559331 147688397 891868034 553013972 967713956 361742891 357225770 621835345 786759209 641874927 415199936 679974094 50539089 840518454 575451791 35455888 498514620 468521767 666472536 847010837 944589676 636356699 879089777 448657788 662632618 777295391 527109640 800042437 818183589 746024308 800814333 952939155 268394285 291547635 46052602 747442053 387236575 975617615 777048170 622710552 969013806 306271026 619303690 507393468 477923984 812689273 287518069 731193721 288675207 412454875 815920887 428944666 356779249 532559259 252496177 257381054 337084572 436920225 461963773 400791173 51817046 833257136 723473541 878086684 215360243 355605273 797829355 426154616 585551599 40723204 75828752 545208807 349326151 683019082 206963900 696621174 276273591 3375183 105863773 307424567 945132735 641729844 638784286 9861228 215415855 642953295 877669275 667059357 455499345 143816885 999753189 339827617 128758281 686173941 355679640 456807144 154133401 295897087 50783632 1468243 655145009 35738070 261392473 814894940 114095062 501161465 26223311 773118287 421892700 730325962 421816607 604162120 195614256 63242862 984125787 954894985 191612528 25941896 288834726 390901503 289760560 577171980 830708779 932851908 107725062 285719836 947165436 339809357 933982705 970764478 103649261 423780915 360845918 68303182 979694046 583726389 522429259 889246380 635318895 151451994 793627866 702723501 792731523 266444006 679626717 221856875 712284415 751674168 470279554 390173459 840343786 161472640 665538493 45765748 936926522 823173475 64836232 242056344 288776254 324330221 272697313 827217623 848958737 654266385 451534517 104628862 915821252 682681364 464343111 596123937 729332028 601139449 552000694 296677596 491351322 553080173 817531334 867135561 313667552 638497035 906561487 825239168 222079474 558877628 170487936 732753118 563347596 683481719 979933737 242472073 191778811 242699562 712864410 608993117 880084848 429540019 555147863 369378665 109833108 521755051 382273609 272239460 172648896 701256518 390723862 77028446 48610551 591245575 561130469 37171717 781378144 82301352 105120134 75984594 823528183 938185648 521981911 867494771 271318439 698513096 980512890 574499702 992843317 835172380 654252511 15635578 751431417 79301506 203449153 413416517 176677789 478168588 730125061 612204838 745207084 492289166 129492402 705216412 172136342 462203094 541773082 778651986 783400187 471619420 219898354 781438999 28978930 254163642 120720928 742045942 235396135 393479126 24561126 670110082 498304101 787051302 12287043 34079329 59227962 877870729 271042689 392548312 954275017 299908097 66473416 493624865 413592310 947360275 994776720 186307141 599613509 180744371 247663138 250417648 777577380 12979820 153983140 173645303 203429039 209293085 970328439 136986058 497738711 49196378 241980646 110249822 429859728 634307578 205869777 616817082 315528684 509267688 455011580 310612442 39077702 333701033 978129058 408223661 266898225 798335660 381747180 82960967 168748595 524004770 520300572 917462781 975698766 916239082 939876819 943929696 244815370 240155363 440985072 460843677 563787392 969814975 927723382 420669109 951605064 636139734 249376262 253306662 596371741 436638411 226871092 130006329 290920932 285234981 803277844 257593743 742746731 701369456 756072168 692054912 763441924 844265401 974690276 438419215 129553646 627197519 731587192 474919738 572758299 233842491 513236514 704934647 917639728 54709232 796474770 430362076 594410005 768985307 223555411 916527476 388128841 696438162 346816086 144714419 487964028 870161017 846235251 761065449 609101000 131228334 471880719 561442746 988614621 660138456 219894354 629249480 120259354 78330027 335042904 286159927 446149749 914081245 123765425 998595310 972656695 773398710 677590923 600725240 826426977 701723528 15176054 628478044 788825041 475061680 2592526 852758091 427520373 287928224 946433027 669767157 557167159 136753591 217602729 974661631 638617279 968467998 905613097 758818849 197666516 517287037 529511275 886798045 331268108 94208790 281274613 392527387 523246503 530450843 124920292 195400157 672157814 13451798 832069630 48755256 603000549 11021251 401382449 100130771 672996792 80634779 325772209 695367585 106441022 419713475 492425476 761946285 938561244 808571466 931984748 824168099 413158409 654394420 279195189 393416955 442288248 735125739 401942308 584263208 326477980 245905899 735351606 813214243 991248636 193037740 994697494 618929221 181280049 828374079 913504126 466259599 326527477 420798839 93130220 220263358 864889177 6887267 87937581 940774987 998216250 223147993 548581680 863526517 517482640 714221217 940139608 242348181 58355527 369004432 250730301 468114764 948364096 422540940 364180599 777456592 346664098 118306194 625354386 576768546 14281623 228295726 894127048 757116304 389723516 765791174 917042490 856412634 923735921 82432437 398685738 550939119 367197432 714632471 244999712 694948183 980993253 603349638 662971332 26383658 851841513 390240957 459519658 379954404 701396361 273839808 63820100 674644587 456575254 84267269 347597507 577388106 374633917 450515379 433585877 264970919 668088827 139475110 464189000 30086161 205853885 466755563 13492250 938661293 211881793 89918636 632298773 363644219 726338295 955215110 53018591 12613343 204591789 939351322 80859104 112797897 893111757 209762024 880507455 245643396 866147008 961853023 398663555 880907476 124448885 170968574 90406354 501326288 876760757 528141271 932815070 825384921 902116370 53964654 224211140 317681484 904680720 548416631 871515957 102676322 686261180 723969326 435082494 799207211 236549034 733462709 592067042 65640700 740052907 239049648 374258885 493598131 945689328 906754758 324729055 15731588 148790259 700754344 599273415 453311719 434026516 841490936 668767607 639285235 551202421 843607222 980905540 43224982 323349434 431417206 359219212 125334268 723565018 173116106 597335915 19797914 312982827 162212121 673713411 804253408 524985853 926153736 144678232 912198694 282997630 533028274 284362041 683029271 365184953 255960500 754239180 310568412 9122152 410983615 804943234 851293121 531463331 29421036 833950795 422216029 32014844 47121535 730215812 502539840 474407456 637054637 797122251 717576198 624391802 311820223 884090987 744919096 216819722 24131582 119509008 798250852 96369760 125520478 675482512 989056145 906165704 304592377 858521533 774090378 516664147 241568300 605108605 843299733 232355344 117940479 530104109 396057056 264347446 752241696 63089214 488523947 907051452 436143773 140171796 615177452 998342850 517099997 858204862 298262846 506860229 344116399 451114968 386021896 833979373 765997161 272073549 828159087 480036709 33067820 267336722 185122394 621284134 430131794 732456985 105858784 757118435 575989501 82349444 134627421 434238898 328429643 625254020 350294263 343859043 481803557 761634731 513566946 352063687 461067930 988817913 339555307 533833727 513921764 35501352 343437812 289123190 974300509 257352098 862576286 503829704 336247010 394798742 345576794 470503603 103221217 862051314 288564845 419791518 878481721 331443935 778442724 361057250 590245415 891754993 623215593 719391354 946012796 539333386 205635716 988807441 649434039 945810629 234827573 717523039 276529605 256279747 105621108 680823947 672067458 379983132 19573101 222788945 620724396 568262600 203199290 148411471 966084945 787180992 378772103 529787575 824212012 932427783 188239020 394665357 219955614 52178737 407058853 338746137 994201675 656781998 75224556 349395725 414129449 352478481 613174239 68962738 933198197 677801951 832167977 267734827 62450601 408957857 348537168 430607637 316106963 669488298 256356296 928837664 545784753 280604664 195712034 435020458 330173915 303451528 656955956 357880511 355129223 649219505 801854009 854818899 726474199 646670133 905076922 532869199 101019062 403543072 372426192 896357487 679778017 904702695 559503151 70391523 801530012 242402146 295720395 479344722 493889751 459067130 542345226 973738907 444635192 873987820 506681501 24021940 943322866 674365310 281414372 992877673 460993396 137271579 82621086 25243235 757802041 937086698 612282243 50849002 409842047 749405196 329433977 287272980 204716860 936750784 184976942 317462638 444432829 398444511 130046405 317878079 544495225 142863738 86503262 480267423 753633214 353659177 362791122 523350085 815156537 531633245 96459513 628422045 100371388 860594144 696969032 951857553 596027364 290397171 993513258 339815724 72794865 274749267 481499845 1781746 684752442 459076662 608267632 843677250 826613912 573288525 913074339 169780527 557828584 668250284 159138713 466676699 344948037 914881623 382840281 480059159 308232826 559269099 99516482 547602712 806093739 220184963 102957567 549526975 917531945 163636050 966568857 856875413 441989251 20031344 75839907 507371224 616751649 533517978 956057522 21301480 880158452 233173297 194059977 59852391 287783594 824566340 841700590 594534294 155554366 668106543 371789025 919119544 555847863 734899185 880194941 528816691 356256558 759539986 735264672 973545912 621972890 263512004 529368756 170972117 304270607 467398477 482398076 719868219 932199827 573960958 73545382 427424843 873204674 643705959 233327506 515971122 30255134 848374529 80252114 367465069 621088471 990197008 157928070 790595703 778347724 344282755 345495156 82550408 410799647 860441336 15458329 823063482 303113653 15500369 484393114 871163283 277271873 373564573 42811916 246749626 67364472 800420815 518299859 561630495 723693694 233464716 704443264 234893005 716009218 628362831 783694778 920958595 415262472 109158511 282787331 405296973 326857911 671917714 59799166 161643449 918675713 842750862 285315486 997574958 669302420 17226626 238458420 100065683 815031189 961268972 747955813 144748207 192164841 986981683 825283244 276275618 218023170 611466956 864181737 975897724 785414826 597566846 350534134 833833243 444953533 965746686 613698895 906938205 64384731 147257057 474532549 823867176 802510777 264086275 419528661 642117604 199477519 234617891 49977061 998732354 5502326 366228923 763530057 163978566 458956111 608847493 789124181 459928952 312746109 859860337 938706387 386002465 175099900 518288097 309300942 883809870 924406 361668209 733065531 281968679 780011437 231995369 402999223 415660645 786247160 8340557 969152901 37573949 371627202 878556844 262325759 951440238 447724450 844531011 83490675 522678591 156103051 781422917 201263640 228448020 249133100 220968034 841321356 179105134 388496061 934823141 74114454 39188440 178725991 989716038 727966096 125986540 509053262 284387162 375787962 817869833 377740805 677017349 509818273 261284617 505926902 49685485 746382636 545698098 83284507 463709054 285696894 59200694 383523139 815032730 734022785 928304348 781557838 175634155 257837350 216979359 776696796 266504465 334742368 164613155 124671091 731076789 65080863 544053864 328551604 999729963 552942324 432488076 841711381 292746403 185128990 814929623 707680602 174106187 592244536 846782428 277175103 825970500 887791401 656113498 913296288 294152534 467660420 940248113 389879894 681689867 646001721 338202154 301772801 396956126 817881725 535870918 39117917 462043404 407074443 63696391 740083617 472794220 74477698 823465475 50283847 3253301 618684974 501909369 569827363 885339884 651848478 797361243 845939543 70994706 745484815 144619590 249808794 71711181 871605905 648207227 305705303 577186979 95125736 350655174 697678065 645273803 539789500 749985766 307993022 526114239 286263681 489154278 155109971 366030421 468642689 628858119 758954219 464645291 281825076 528836902 570538914 391423889 22734870 934177731 413617689 804077824 527555876 718748821 505396129 190542472 878735750 867169391 387352383 295578947 40076803 907259130 380833102 963045100 139483259 183330325 69500519 34455253 909596024 205211115 196147500 781551959 242802641 66621220 174458081 758031378 361560253 721012297 494895882 779811895 91889300 291978520 159804009 571352837 533569214 378680300 411539994 841165861 656610754 156579665 573451932 274461474 177158478 37252890 23523461 931909401 468053725 478719474 248917240 380604317 101075511 353352849 999726647 58021491 201227307 46327210 615560039 518781501 285755115 482393883 316510259 547003125 577721348 554830105 275436972 78693746 716923904 128527955 167464105 934452228 826830201 535739850 174027014 754802939 208630776 194575397 599126151 505878098 179848360 307096320 436749089 855868235 258102807 630698926 956171761 943109979 933714172 833227718 825128644 132034108 406165059 981026448 608024812 364678100 312058040 329320434 129585073 928347844 270934699 558045165 284964089 683313815 927671479 143513291 42190736 666363657 100632870 820652787 24183036 153127468 613344633 575694519 110390776 675242937 625000086 738836073 338970294 90674421 74391281 288970098 863829752 841911669 221077597 646456327 195277764 176386040 322713048 961775593 96275943 571943583 17826487 6404406 528758882 607218711 895726316 817195754 315490309 691785595 38367487 471708200 43989027 770511361 781621811 25560559 275493111 722959137 338034651 869164871 978719606 636387814 667601043 160169935 320798483 95326250 977671783 380532621 733383870 823562079 318590762 307498673 680604782 778507792 694752498 934905550 366507244 232354520 500815674 896026933 741452852 444979748 296920394 765132586 922710306 420247257 855381845 277242623 621227751 146302816 910639181 206828169 253016062 902894080 317999361 4616890 600132004 156082174 425501004 601401731 988509168 851581730 22488142 130184889 567069678 526457641 622118627 603494193 185794956 995261485 261246746 50441025 325885554 258171451 692204701 511091049 145438087 614186458 218329332 253486468 789205661 998729464 258443720 534378519 132989879 948906277 580997799 48898661 669907442 817076740 765111920 603365720 924143463 502575128 163754579 806573581 992011236 279190218 855080946 402286016 952904794 767639053 437228748 283592438 414891316 170805040 218196285 93912736 559299523 387692205 671937423 461132798 428900269 491053332 196952381 71946048 429388503 654188606 589641523 75864476 123254576 774116466 804732807 891794632 794538218 359994958 278417496 979547719 33351975 315582113 246001505 758903407 763075040 406614243 9846128 132271703 939682727 531015546 669227489 905680815 968483555 80662105 821562049 522424305 229159228 269621816 583299968 851607505 439772854 133028574 502915189 769167474 22803816 507136502 116576570 247095572 157306820 246783866 459489963 945271355 219718948 114778204 266511483 973043066 359685515 364184013 301423577 228209956 627905283 726498617 945586829 487833242 918391293 270174371 783945855 279426438 583350379 856745074 120945691 884237654 14549507 888767477 918117218 310711536 45680478 760351545 670399422 806401514 324751060 485491368 766352065 27818548 939530487 938264499 160289942 645125107 632953764 947457307 492472963 630570514 287552595 383037085 146639265 260524283 569454685 240947943 417325792 873442153 574582307 481160360 740274038 398920865 151038978 607672184 702317702 154724236 418766082 66951745 765893200 376672389 566035178 52008324 957190992 849659652 268538679 342376052 244892442 595563039 154499816 859157081 897529203 854196173 324313315 958130968 308856006 724653980 256310225 400650471 536127301 872566555 376931705 613177248 226769245 11922226 371840440 547165190 413022773 322583629 262529493 190236729 316335237 818605962 110651428 399746630 485998367 679530294 557189768 533707249 921884966 13976888 912971536 675835241 272707325 558771351 214084508 532583761 602297677 863148646 285083670 175636027 293775005 856068061 796522794 198072449 130210641 517899451 69907764 45141892 662522713 495270587 332736971 747417419 384942596 61266849 227427092 384975863 620507616 343876760 286418733 934341262 836092617 398351640 115670764 923150850 6676317 723318879 635972275 835697525 654772031 334382530 679431768 386436812 945367814 713406230 868957689 70624503 969427609 97069496 893078952 254198924 516960327 875556858 192499833 650254708 101342047 960380450 766727969 283698042 445244819 676813304 772890827 553563345 259926846 695623365 60641760 953393419 366224314 422103669 315198541 774505208 952090998 129866101 681578202 49501633 323261446 918211262 162684061 226031256 33615491 311257307 812034956 721026166 336240443 954137639 860750099 676788701 369028682 814225974 748958819 678750610 727837760 457580357 29255654 714041644 72071498 671951223 112332702 954883804 328114853 875578998 852165196 537438799 920522414 716640072 575256627 868572359 150829612 45748060 615247217 683048084 777077957 676586172 965263438 597876763 786895381 858636663 748790850 136148166 309327222 919862693 94565199 47183292 810063510 269327366 435200042 638792692 22054336 241358403 82210476 505652756 504438486 58767234 235077116 941917101 557260558 211047202 524997661 564877033 725143096 104237870 802533089 320448203 36655742 296562693 782374777 518896464 873897418 749995540 243906524 131654653 423865703 909751692 544264638 16272456 281462394 845325032 816407258 911291765 476857013 699228469 695230812 320201936 677081521 153484061 396064687 304038576 724036603 898386736 180228259 379044009 486020026 674196813 530186478 489687295 873830232 257268701 319960992 220124405 225531839 241521296 612022132 541819879 790050796 590310875 542082623 263891450 938951891 755058754 415169206 78798076 184292987 263570758 146801743 672141314 807650701 4002862 173999665 360199442 452674828 422431168 47036024 758447174 595193915 184458394 559072552 361877306 419832103 511280999 820100968 484719722 240331029 421685791 503486592 484302330 485908507 28689953 150244089 339620794 133990393 894718826 14445792 176816760 956526719 683418455 397187807 742702009 978547253 379883433 587898225 468228503 419575784 90570682 309531969 291634160 786623096 551735034 877314836 637493556 477743664 972959165 799572697 474790937 593331339 947203003 825655673 923499668 200865495 25866671 626999608 362677800 981092542 596284907 599267958 81048200 675569149 919687052 294501341 955680647 373952516 551250092 328286819 684231758 438313911 104120396 830205055 864501617 990396148 719724091 889635539 729864628 338563999 679987457 245217088 140439101 65886044 342744280 420844314 630588746 362405871 798388009 577424660 645304074 368251312 489433640 396242882 21572808 631003109 603765283 688556873 521411022 158209492 877660211 64389254 177956073 192135453 92848947 348979161 424581360 491918622 235091013 6811403 987530496 73886999 30221470 944682281 316600899 535505555 341202593 696757740 141838430 855487578 201354686 35085808 549012376 538570533 274049021 202003039 589883776 330577742 237923893 830398413 746376884 491502426 536399042 132474228 112741082 437064558 627684482 766599383 635430932 217887311 416270942 807251748 297760332 789021502 418661154 153021517 508129052 614059573 391318313 201818837 211118725 274558769 379940004 407095107 692659196 973074600 992084481 653680985 3578818 329187784 551717008 823826933 723031774 986167189 680531802 197891243 301945613 901369522 425542898 875998756 939728153 289972482 393835606 328118428 265385176 482930013 862736912 461118445 335397593 702040486 24096449 441070896 37507089 812877818 358047429 168257891 58964279 366557170 908976817 378088461 937850104 115491285 634734123 404117601 552572501 944046743 250118707 763767130 527477943 149653818 572057316 925075893 936985478 490960391 693020269 450598474 593118602 659903967 85657781 81704950 303422201 755814731 710865945 454957900 69400977 34521449 223963897 110635279 778507744 912126134 633229367 774719770 89320901 706876441 865413381 316215053 23371442 337418910 787654803 253029076 254036683 857803710 466869708 72970745 394400769 14385448 159938664 345832074 963372975 194960808 725379884 699613266 668559872 195767140 761023302 674366295 238564364 870326618 900395328 90925330 964183536 317488251 225894121 592367817 199266310 924305003 350186820 260993109 211066523 185564349 614024048 146623507 340107201 25510642 354539684 660685196 734798712 844966847 590093117 838647606 877298413 832461806 756416786 22574147 538477334 946725775 98714698 155779781 108352041 64905074 917133656 368249855 571802291 642481380 144233496 872036619 479025600 970539650 254890449 953997438 671623978 353174536 220035075 650429434 549184457 132895644 429690747 410142249 795475443 437267999 268798805 112988577 926295394 918432290 825216520 347857302 411795920 27051011 313765800 441179230 164315155 42483811 227232693 809530296 609991743 840569603 751594680 590183669 836713173 113883467 613324529 210230483 539023024 182337065 110487770 879299694 521322673 49757312 994386753 16854395 581982835 503763940 140947946 235266374 915825657 150274501 763563811 706246855 112171201 10968309 896212635 697784290 167692074 695198037 626168141 604185980 865812498 188930928 716247683 917170047 469429754 134247796 536299788 558390457 868208679 288118699 939886507 171839814 538182953 892491838 136866595 912385128 997280057 585264504 715728117 470569851 883803980 960333926 468547445 314263054 879237484 353498611 338011541 657535458 102081444 522991437 539890781 284708589 623626702 169249971 520515327 484682286 59060251 17167625 927193861 535267769 996070610 136172249 674698501 521225833 607937105 903427448 335299625 415661757 890600961 742956427 5542791 440879444 908336393 266874078 372554075 301374071 234366364 745980551 543826601 2710836 246402517 955482085 950940840 351526009 135583995 907159264 303574727 285567913 972896232 644907274 354643535 536254183 473985926 140676278 474221223 829255945 334538099 97979568 932884880 934112169 481814336 579763161 197305152 376866943 360892181 91799410 637121594 111936490 872106361 189590160 174237019 752351678 250657562 614043314 568685269 196120097 935881713 288916055 919360962 225627999 341497784 459642520 916109282 179154931 173761644 579071711 365370749 44120069 112709870 217843792 582467886 810900084 846818570 706851414 285445542 470073624 319167774 438742456 991331645 852722099 234437553 344692771 370606099 798397207 326000694 879204414 881213955 949436250 631597558 921192594 950234166 156019230 985775918 895961532 251528103 297784117 495660396 578275645 429388449 537635855 772723921 428789728 786965677 54809719 95638153 697528666 387258220 146762010 50056411 466976448 503107276 870220227 756423495 996849987 410761300 333834229 121333451 973194459 473500962 447505794 894137021 658826030 902196484 3888086 49775774 839359486 678165556 377065447 441411084 980692746 382515323 715271501 585864 894102460 553386695 359250014 390301157 859675120 486791905 990490023 386083187 817952786 489503775 867979674 423657490 654358854 527445973 688557851 692392720 73205552 516669943 751049891 2692964 524810681 386722734 432259106 809893272 40447510 785200109 666465318 868394426 581436469 979733520 814044390 825557163 819272331 773661826 112987178 978231559 945723165 732319685 268091157 69557096 402223381 696322858 766462793 548970703 84329962 700593291 488677881 583214345 623249996 344415898 892300847 114762986 584222018 30314148 8649344 891397957 844551975 51838704 483796055 776690207 350537832 2739908 891051216 260041667 797684470 867855814 582012320 96042271 740658500 886215221 18308119 221964136 812499030 779340693 746579585 243980226 720282939 979573267 827697574 519305278 966024955 90851777 297082236 603676253 441540964 852228482 195910141 671880672 924796195 186314315 178764575 301097543 202730426 165909120 191935685 260196647 685946614 705258285 127807958 586199966 885976110 387095172 153323355 655092324 77757132 205583144 160831454 359551243 861419765 431150765 181821940 337532540 338852447 522527029 444753222 703424093 759682898 439295118 596101912 92970691 181711545 763065087 639798120 800752513 94527260 379660306 403848892 598154476 586011366 141018262 213119383 648415697 820165589 398571973 595293676 983238568 495383476 422007852 782335174 959709028 719980650 131912261 362825996 325852293 332575142 201284655 614713707 363196672 238450105 507844282 917848835 876027948 214837125 860369852 683320236 74910124 36583865 100604857 363009203 255100565 704198545 459683196 983664008 925987174 352107381 617103285 989163993 178930430 242234949 961355574 340394978 967773488 537185090 584166240 327147442 90894545 281456245 3734994 65479336 779867655 970017048 960805340 39126927 754724291 785392223 694609250 239136259 613252623 357538999 741160002 697245985 548794370 478748706 137242065 376643086 497372821 444816788 635924358 191499485 376559970 439712427 421024050 848809256 882413496 436276276 291307205 381437629 112846643 140067795 992324163 683693437 387683453 661420365 91042597 956993001 179693855 318798929 84652650 151703534 848854020 631059950 639903898 211823405 344678013 414176278 237361040 53636489 996810201 532831319 3856703 49772578 424927899 694291286 817443160 812561517 618789572 911100343 455799988 82000947 44859301 108602238 2839335 2896951 746814746 84003585 191230435 123400008 120287390 952209194 596549747 734693642 152978406 983529434 130736371 352075323 392128495 400208534 594176672 638564533 787834964 325443729 639351550 318022861 60836592 42601544 788973453 167779726 475471372 283578453 145935813 362040876 92751222 418685468 407597352 552999177 785193843 103823988 845048693 272181924 838385759 988282540 599169017 428109678 923689312 60488280 284311566 69799437 514951135 851846666 428689132 293480918 864782608 220086439 958169893 870338109 314554982 921289336 773976393 401865278 897903863 827011406 292093492 401954778 1960500 207383421 818780196 267470868 446823027 898889598 831909088 690943462 482582596 470962197 650497581 926593218 393578793 828223721 217646449 753565293 948011699 580813507 683370959 75289801 276320547 115298943 926376767 898891853 895159888 633811647 425579610 18772907 210198633 588259459 73261193 920293798 537527962 843283781 546574846 206478344 986361129 67536491 635399923 832660387 138839290 167098176 248433973 960824908 3980375 688989283 8502767 932655885 686972457 444764001 567161979 221957303 63100320 193512962 107975317 92049797 854495078 221550205 305396295 262466328 825346976 872640320 965816598 313284108 514930551 331701999 19016756 694824647 357222351 800661549 684465803 211330055 645475266 185635950 513675190 922272779 278758907 20118606 325879202 779033211 161461240 208149007 157219660 562051167 635479062 949898378 604135691 89322182 652278472 609519781 330391808 43623382 208201332 865477892 269965456 50837711 418480713 866289217 976178450 58633468 717555221 178490545 929567669 625240634 78675428 590736470 675993267 199881714 227940225 405719310 392964071 155956688 47057082 245440505 576586666 985583525 122652130 357202253 887744304 98747470 714841458 403402849 92323504 854141119 434305794 394573599 318865903 538790484 995220508 399949787 717178471 463260105 252354295 87734630 348061609 378039195 523137639 179084602 445153882 894479944 798921148 594135653 95378034 212366697 785958559 864288406 87366503 863435283 964959806 406884645 877887721 82253681 751057884 478366810 119431182 990592645 171320009 983459361 138447210 833838814 611004089 224111380 584701309 702093083 708524674 131847324 362250802 302461413 880076663 110894736 754662987 653342266 710386615 21344819 869043307 621611060 162864723 58218988 715365560 624355981 396328232 791230893 105192594 458539868 718173258 207675792 436988797 811439203 583863760 823990120 198088953 929181580 436502883 207360936 496861694 759460817 896147547 796926880 812902703 470716410 727102752 148864652 647938363 54299765 129369005 845240697 52284259 935165890 857132954 805908306 237227813 542450843 271219382 728781015 340742277 301187282 474521980 997064644 988045844 976526730 21866533 39236865 740402171 910434583 821950612 642260965 432043453 406730510 373167110 614875327 41124899 180642276 538291855 404796784 531522643 388021887 335929743 447477125 966574845 496732044 87847878 961354278 868085620 523175147 938267588 51354550 416875645 177096213 751204169 424508795 603367872 810716325 660370308 783196502 916445904 631750261 532831229 120060832 725125516 443987014 386924164 121513791 27039810 376103249 197456836 991965837 123465342 113779015 529023434 107795474 758027166 319645314 950499468 739389364 20677201 64673958 263809006 209052928 637132469 658583724 28644931 925512729 22299526 300528413 784667052 791535967 221073418 538055188 158145527 494176778 976357789 230410766 918611702 804115267 369520903 295076385 297881460 147785831 62245859 961290885 355169418 167860757 807522757 278357886 259184167 987658350 658910620 889306883 288981946 686516796 859340942 745828719 728858831 667599474 825825067 412211775 971098357 541159230 646713736 154050524 876726182 117739830 190069747 633634734 71681964 62253132 643506587 888265039 454131183 607353182 966112853 872746907 23893007 210502918 811388113 853615251 640952626 353887106 144907395 489021606 933851610 338485993 907841836 417068811 53781723 380038016 599100600 586456273 773285058 623987600 668769823 119431038 480657549 188510483 427028164 595186646 2467365 316162586 216749769 536511230 911860256 467367319 483478389 21549460 705732647 854857961 671698546 222311266 297842647 805063666 622483279 822551808 506076907 132458742 785754787 545502199 37750767 965635433 648941283 460785332 627749788 971244459 416757753 66684640 288726672 956899986 376582594 343794421 65982844 660092066 380306639 553208013 635227857 894688494 735460066 518041979 173959031 929169337 986609908 137782822 784818377 934727986 269449138 990381007 253584820 454911083 679543257 669898521 870268394 37482705 142529173 631054868 48007838 231777786 880388480 721541346 461497400 382735772 875123000 145989099 153759775 364673377 96552137 802765360 65299079 806665392 600131691 503198891 844675195 440881899 603939078 648766976 770491490 97248043 799368981 556202045 516962310 22553547 260418504 360544968 966889677 473013846 392587476 772142155 410078759 121535894 188218479 159529026 231095087 449718545 199037600 474351628 722088617 156086689 766172593 837877755 217135336 592392508 984291021 396457812 998530744 728649343 316873583 743553429 801377889 958221747 843270964 865905144 736330392 510387493 685259413 76814331 700970205 756669113 535661763 696057967 629322038 105073175 237060851 737424300 806124169 77426568 983138640 394476916 132572715 548005247 137835798 257853351 317105438 452292533 624629726 143289932 162211732 96655974 403977481 125257145 318676865 243641666 764115741 605155052 386925730 954063083 493716204 428601773 459265161 18843644 393509893 992905423 410526138 905019663 110062438 936735439 768055943 31308840 660315285 821715693 820695631 105994047 178344405 373517312 473712634 295781159 208945488 682151030 741044190 39194701 926360930 885916920 149695312 298587652 313093306 944652134 951928851 284700791 540638090 625189463 756659910 216028888 365620344 380880650 656454037 931279896 846873724 834267929 306868665 199820864 632158727 445513872 285399354 252203444 639128238 487358851 101801424 879188196 152386043 553824513 977201670 758551759 990055773 253403906 23715520 510910558 633435185 137819356 210022673 282832815 975846896 668453078 841150231 282497774 995847725 10443753 427044029 965593934 24813682 462643419 795289361 837958935 936067466 340046684 352967907 193651428 449486750 655960606 660090369 580746090 661612211 224777091 661438183 311688944 178462052 42710639 477094604 613072414 905523354 469471952 914906228 777014286 878029849 83126548 564070998 678890636 508516876 674582644 466050757 393594360 491965869 373952049 603276205 782751685 171054052 199816176 53054052 65706801 883818498 249495030 191927401 238389906 280274198 274912848 771241824 222132652 877195620 469894620 312859222 513722964 35957738 378396627 465320650 551169848 799194396 598336737 761279792 123203050 800377481 786043132 850597858 499937310 483895794 295185413 932562368 710619190 568094795 71364908 801778690 334858484 996747299 680665268 277908826 656708282 818008580 499138802 769560867 809656462 429426818 473711312 176437354 747437229 923622774 845001830 367424062 757830005 819862463 322365823 136296568 408617495 5653401 101948447 871007986 667183481 253557371 464249577 465591792 831212556 384276335 93636220 822730475 410674240 780510801 261143182 185302165 315327013 268500078 219714099 118544933 501812735 805766066 66132725 850811761 435894820 979920847 786790252 736729420 665530229 412854402 752503534 60348366 531221505 934897549 32404796 269238329 899110225 49342748 406895190 932511253 645830488 742434346 331679834 130523421 330522333 938675231 458354602 169940553 669185340 862230935 259164003 302378003 48339274 801250606 940453809 349740896 908241658 243777513 925381403 634636025 770901067 580916547 750229393 634351868 105750384 867565372 443347038 540918542 334625239 353259113 747400379 450358219 393530883 503359151 995943907 876137486 918822275 106390577 405925884 890443963 88258623 679461159 62899538 921773651 103318950 78730806 591784353 231263835 624074977 926189911 498105173 356726654 700235283 121109508 755771057 658021833 626609740 407704076 909388288 319934269 675522947 817706321 597326773 695115274 431337281 789147931 335127403 752435218 767957589 4389472 52909037 405894503 212712032 967425 131695504 371223250 835790128 222478111 118605408 874321718 801060664 892457551 713335731 313444313 186837011 810027822 110908700 551506924 806753265 451204404 38408335 329453258 311455069 667248491 713461026 214902475 951635409 524422115 643632494 409444221 695695472 268074741 390305148 16507250 343381580 424347665 809991737 154567924 772720613 616926008 903965894 939154562 271303193 472335206 328203984 692591272 932713215 494249778 638387704 234858647 900106215 988649912 822241735 986812977 180760420 547796250 469135778 309288573 764151701 502352379 710509755 701260761 679515227 925021596 655662605 729052588 33632175 879413912 478395939 654166892 953607908 711446538 834362516 103514343 418745178 761050326 121423083 912253077 145657140 9913509 468202505 651252075 396580189 792023249 188545451 50235331 65638823 228504993 416356354 164458768 200179127 706898816 718690467 25024137 696757178 346174317 920112279 695667229 860031060 469116801 56829938 344944480 93021646 556587052 137925647 736437630 943742664 436576356 919735884 746934735 189173168 587179741 100303843 986184611 370584187 177757965 673422228 107307244 353207890 661668359 379817513 571562106 950983222 683047278 758246977 103076551 225216689 61166624 287443359 970812926 511119575 239630162 300310158 79919561 589679574 854469514 138523037 209611157 837223062 232734225 202710076 473530495 344607441 361614599 840113936 948660116 652456403 598724940 65884854 307660681 572954804 347219953 250552752 295194805 276312177 976003641 447991782 887025642 481989736 647641245 7932433 947511428 74452846 179578628 804323158 814738756 832074626 443321629 315318035 262654435 138293152 895781656 722715205 373281659 165949793 79019590 233521554 594968244 541538445 653116293 868176149 491012266 680641966 58692969 354350531 333677901 89763238 325544519 443240233 631980350 708886588 265575721 513033844 620168744 782421419 338148477 685056708 571215853 909718471 240361418 906078080 653284729 51652870 961097051 810674162 454246510 112164838 509327430 794884734 610915399 966517881 656423223 495582633 720673535 67376036 697127750 863915666 125440604 721549388 717675530 634993753 157291846 836866963 795967805 330926923 34256305 524383758 216884993 979976090 579274947 544179983 251574380 239109981 409127499 946390793 946471382 181879427 195547524 822394523 313091427 79404936 334011036 265225458 375694382 790406945 891072990 501368784 457370717 392810672 836697229 993596965 645958851 199585268 790778342 379245341 336940413 706023120 579524076 622783337 814496570 217403274 106707864 785636640 673747191 961724101 521559007 523054383 754461474 149643298 73385825 595031085 212697809 907858584 760647194 314184579 332968821 342896799 228159451 344626236 961854411 925592091 3432035 352807330 355137712 984664770 81910322 759063645 204135182 322738128 430440861 324521980 336224332 412053591 720349532 939490789 623282164 856337502 873142219 491558070 590488042 888649867 881026699 980622920 348945895 482589217 338396024 301878568 768540528 29115997 64243757 640701158 284762715 584355684 518874395 946097900 387236208 663660610 856199667 751654812 402834712 156630128 306659482 908731020 191970349 698767158 426535212 227954278 117254709 169311404 933530887 975633136 194641176 818596935 523512562 814579789 986152297 29038492 870738440 271504705 991394644 430648893 283256454 563251220 620299212 70325069 295614041 232947635 242761308 46496907 321186633 279013428 118812697 114122183 214570774 329655542 364790947 430309519 109326391 635293245 809012008 724149039 991612588 749634292 438144140 952054780 862040657 824916497 947817649 634566269 620689969 566430924 31135340 834175050 75861531 853695951 871667378 32795000 838165448 639837900 561399698 686912595 370480158 517208224 889986862 844431947 245357361 600507241 514309445 884189102 774172906 116639382 727046459 289296713 333841043 831155552 799363854 500081611 936689618 673141946 735870208 629439995 985968346 933736432 990718339 90626311 258997849 750764803 216767923 648903536 79982683 311938450 783750774 151320445 66244214 572632878 91697919 126411232 101791188 506909719 300488301 917619335 886085301 355451473 379907563 559943222 456459585 621468030 812554220 11929665 211534674 892759291 661694525 413762111 991293695 28231462 622998936 362615077 335196706 641858255 923849451 239127430 495145417 653618692 968006815 76913815 556687967 168586796 966382003 476787464 676051392 436195325 943010759 343713641 876569868 38314801 530245972 583018672 78380896 600253127 306288214 274444463 874479483 529830760 875803338 898914948 251728558 170326151 775962114 171021206 185754159 707795812 980091557 153802839 118508143 16761628 149088552 141892490 98300313 643151903 951275213 929182252 450995543 857421535 996331484 318460041 985647219 374202781 77006667 340155811 598085607 990966643 508673589 523397818 513121220 623355929 491166506 485079220 905984887 972105641 752441367 265713114 166487369 39501469 686258154 176181769 25018293 561259668 150584931 27610372 309848680 584641059 250146361 969831022 552374709 249934777 584871499 226334391 907330833 145931127 625528480 639365564 953093519 122186871 51565941 721890267 228215117 11498907 298723171 168950894 583161388 998723269 408727192 787692863 356843410 158757837 482641454 149525188 534474366 145829992 968778439 128446850 716428880 772581937 271305860 353607717 753574578 475222577 705708621 979485592 150962473 172323074 141485135 412569730 987467903 27360759 146745991 179747967 789973552 637254517 420246075 398878855 564564452 921453891 198577246 543083216 202030577 316809300 560620449 133168582 591907447 114720952 437147904 78088695 119270608 571608334 762359468 857329953 872448671 747289187 754937364 924575451 271419751 326123061 730357787 551765788 929845774 601261505 268512399 616110580 756222642 6145582 553186766 463402564 109667379 970460302 648532714 651236229 42008608 801795441 873602753 869301831 384546533 103214647 97701858 575895185 185960470 355040728 732541315 194574404 166259718 649374543 328708569 622057528 279577830 857583693 818285931 265810466 102524634 219117713 773728047 558349952 550337599 121598535 158482332 593200699 925125691 508814864 759294098 54542857 891646177 756276741 189735883 227513968 213134749 828192952 576147267 753174565 682946645 27285565 769561666 854680062 152153952 390542173 372476421 918446867 751098648 343765873 456556922 568496396 809844624 189480250 862348812 634237002 708056810 650554699 688259264 908185431 395051254 261024374 266644056 860787157 555072502 226639316 865758844 188994457 976510169 848794648 702141103 152451456 196660369 447238514 909183389 881894029 551816314 140673776 168479093 997843575 864717162 158580531 442848516 71008234 816472226 681322898 795848521 874006264 67479755 751895005 129835541 252925498 368524225 50726541 102195630 614468309 69220895 87052725 618926190 270134169 594726063 210456573 545067640 877940337 319847316 365538987 369250425 282576156 408541003 344303521 280705575 977122623 342548604 494691917 406530329 648266842 573109243 825957120 537102075 749364211 33923335 925697487 807468245 564136630 194220118 875251924 482542568 278275012 922500868 433113191 887818227 353808414 508059876 805086227 210915005 416034055 62276447 931249094 747639347 111480855 495507165 301080632 479553007 290512075 361536934 939070167 278743488 592852031 545732232 600435254 641292418 27634111 263479790 589373830 118061795 296677926 601526841 96088355 483548702 399018709 973871714 949428310 25335908 111133744 361608169 579393770 621691059 628296515 344659196 237814123 788312272 470557725 980317629 884389761 840189848 556845422 676272042 331178864 520127564 745671276 469554439 434829170 673557785 468149003 408337886 42551258 538249500 210073947 294320182 147153749 42383470 655428661 616340366 429330583 843704817 15376348 234551641 36766831 724497461 161718228 181280251 289182841 369554491 496805386 528388812 615197045 811981294 629508750 956206834 76564766 698520345 433940054 131720871 515911279 535099563 546370454 831823047 993825358 56651844 8867391 561385697 369884993 634685697 607854708 748343975 499746564 414437743 270629267 365260355 597433087 985239583 729790828 382273109 473811869 775548740 626876264 485307619 395716850 77100285 171662531 925353321 773710422 121513359 970668892 543788032 208797997 649636143 730899501 215729724 231290177 984443227 156495106 852580150 838948624 494370862 849126854 694292389 401997478 516301018 342630530 875702065 461887888 585441259 931732535 479041275 61790782 657673382 534726793 791808827 477665429 367756461 442736234 843222478 395247156 392152484 178625273 594961229 714260404 131214903 355755870 479739133 579296845 290990305 822820914 831287916 341354448 325675803 306714635 856600324 347105461 243978631 261849800 773239343 215220530 32923010 819063030 999657676 972228092 639064371 777552127 409053478 396176545 476460309 634444063 463871005 968154472 999411170 708633239 795249987 720653150 990609785 768837976 138712656 311744583 695882371 454097989 502916828 878650789 251177494 464268799 159913760 586793057 966816097 918481601 241722985 298450657 366852149 177510060 522078450 522134883 854700421 452328412 304420617 855368023 880585195 311060474 383939667 581650017 899175595 494063778 381061908 816203192 487739645 150072843 978426418 5111588 40505901 674256319 907727374 220450781 21231773 709631419 160847961 826342462 653151068 691233032 475326945 837436946 464269560 811253768 787179775 456576992 959778465 828660769 934937016 623588342 815770188 485946101 157581080 83512541 920980614 366916478 980901832 43360869 157431854 376473473 309470027 377347084 900785994 821545359 844211035 552126247 216833177 324443664 269374736 767615896 301447055 796047075 231863576 836879613 496109912 786440446 575809445 119765308 794815839 881374850 838898050 333974887 488400883 202398156 124165979 726056230 293966556 623832759 680988579 98483353 498916400 870627034 634790599 784224988 58169618 691152657 435021160 871365298 834865512 326385751 819113502 44352105 232201665 665376129 973107866 197643722 175481299 592298282 981539480 622640638 479106602 960579334 806334389 720627115 47069304 767912053 60430772 749902390 753507197 121619326 145305930 348746133 674270352 805980162 433260475 45662000 249383286 571763740 554785706 976249536 471069853 895445794 447280000 315860299 226296147 265062293 366743484 715533505 166772971 89086637 490063217 314798878 480481294 275038961 156464029 994236162 273474867 279256138 14222736 434365339 619841194 829067732 151942706 407857465 745033708 559026014 220281397 498938828 987890671 700133361 989287754 413991074 276900781 811934071 926149649 892997175 720281728 524280771 270050656 566051069 728393638 330715324 787982794 598466036 239645229 723299029 1383131 844416976 868739618 791806828 493604777 275625027 42484774 885077488 381789121 273877809 294991153 755188389 330623683 617071568 653108906 347323144 108807237 317098668 74744668 845257214 758688746 685044994 884175767 728155636 895480068 302862678 959593356 126676956 749207329 520548669 784483351 754050560 886356327 568635356 133973425 101054420 25474886 872238447 134851010 382162915 329956607 921191659 837725552 558396922 835740725 236743163 678711256 944161472 515310097 922775390 161493512 910032844 346072310 895406441 581922834 233842394 782508396 249823534 758273823 845809989 173964876 919047156 657186447 282549326 639349484 365041478 197757426 591704901 225976826 385165975 87117450 592931749 544603482 810493413 708224631 322082138 197310825 913824715 907632939 681925272 948940302 882260736 823467125 420606797 758289707 743317119 937166651 701629859 461946420 755426066 70044633 969394746 79310121 95903212 121891224 511053813 470586425 254671212 661262049 824884124 5472550 91658969 484366603 282351917 482740866 113842678 416846773 33378374 744220585 121940833 402177761 956551571 170816618 917820024 330771825 972015742 946170324 427664858 996018183 249078537 428881142 815428013 285246683 286450157 926895328 707350743 735815295 532081698 593433051 96542725 934165173 3044396 339497591 290944981 817385078 855803496 784944259 344419673 962006226 138198170 28894172 258744110 425538850 783711059 759649878 472428384 375080486 943469864 160295888 621111685 125552103 359470788 81517388 447699899 618071783 651136070 823174645 575630003 345868289 31423209 982827180 540117094 274365208 757654616 822000872 793523369 782175216 178176940 126205904 958253563 875418531 491168780 356084770 685769902 339370290 58127591 762373625 325921044 438186337 979833500 861871567 325507627 640579113 75766565 325497943 62106769 147232180 522699845 147199650 110366387 503094013 57124462 485657653 959618827 564794434 205772418 431985496 955353906 85104122 995456658 56493443 681272531 544705681 923563110 593369781 294140780 405035313 948813386 549687248 345815687 303788984 674176156 722717897 852543686 471598998 942949327 354889890 403972815 621944587 32548835 931621197 926233028 894671349 657787243 34868440 975567261 949113681 880983198 130264008 302356120 572086189 702603515 693247831 685138129 552401189 947879646 771553697 432315571 487239645 904216626 471953212 962964130 545047810 455562031 160733603 541069394 168972489 868872158 220895775 359967702 645368802 920992925 747601648 554162518 536046040 476851643 694849097 518403875 904408444 691724908 295761152 379494939 890888981 988339159 433392370 70209464 986890089 164588691 807593748 861644995 215587924 590265426 363338103 282580352 850207028 528531444 411045878 883458174 973102143 603291132 407518156 637133320 563856735 256371364 555850260 901451821 926862884 214474217 634962024 474681015 804522467 226608133 958102560 200992776 109459343 860979828 73144853 687570204 549927110 249443283 91724923 181112232 754264431 191246546 497258601 389547133 247686274 701640537 776007958 392187417 569125116 879138315 515870097 821939649 93958138 551633167 476467526 999056429 19196137 946263646 313026906 140442726 409640380 945421747 722657651 831752597 42461022 335415160 835810502 83768194 437585514 928661924 410780936 867154534 431822965 741569394 738228845 627676616 983905283 852508141 875784892 283888057 716995964 633671570 349190858 615489170 903247105 925931682 293573055 20006501 263701550 526929070 767918399 770054591 219453367 322580283 351270649 881590309 728682973 94631651 650172431 864210879 877350452 736699683 607540119 277143998 370012884 940624410 221472637 294763773 260264574 446832703 665037547 39212835 553574063 361922638 3373201 960353660 507473054 657193968 560811792 617478873 336497937 535926839 375758173 515735845 526887771 584488286 727547786 585964900 766998408 948802961 339929861 425288213 392411139 61801044 239680551 936133026 783070515 737906090 460749126 414272849 676605335 513662906 863004858 537492949 337034116 84119183 976276984 529855113 214087572 507325076 283309356 968189861 684852605 477091809 351605861 228745617 502843235 898708352 65193456 970745268 651714774 275053030 681670154 951201923 343859311 189553074 749207962 479567318 747302538 538481588 100745013 45689083 601661974 587602259 957515195 556848412 662822857 162580840 237567059 900444732 106711387 339482282 490558526 460037179 205392215 592449516 377483682 428543240 720870390 786933379 93568065 228501455 637535613 968072466 989201274 22448214 894271987 37053474 715411127 476660067 589813608 662869938 314726770 529518171 751996561 535444841 491515671 843693438 478959818 578630011 5680383 543869540 957273902 205135552 879798933 963668507 973709866 365523498 359605685 914267948 523642025 869692879 395388585 739310353 763701449 302905982 668376645 898433986 73855761 675554497 173033325 462858827 62999103 988812290 204373540 590017134 964430910 715190568 145183395 145649529 82781765 66876747 144011500 125025168 607749137 666949644 728196970 31071339 483152563 963510147 262163444 524003395 251943127 305041204 909572866 101551217 513321656 102524757 202597524 455191237 312492771 822906092 119862715 574826196 447169142 871266496 596578789 803016135 516789624 383924677 964966111 326417576 135526360 256830121 919847642 460607709 946881784 330734190 91164007 112707196 170906211 751145146 220299006 457568754 945700842 185241452 571358999 716135113 609661349 583974484 525421955 794458398 81728243 474375440 727508130 378634965 864668507 31917262 165912329 494300803 807844668 492805384 562991089 555857861 265484621 537774568 14756308 346775934 274218040 129701842 134207413 253078136 928830390 827757730 510114412 538849810 655361691 239507068 236693058 395962694 844966412 672644260 955767443 525736105 142402437 38929355 715824101 399716426 807805089 373913040 159310658 820154765 971162888 172791004 751311828 379643747 21187256 651734499 580292937 831698844 488005206 390143540 571738313 657124474 934675033 144289648 119499470 801008545 776364492 746040572 453460664 795509001 269858543 991704607 80976409 807987712 894035319 134287880 919201779 997592717 929917090 793290015 524986937 964244467 353536880 995766626 650473088 156300264 671354330 350708258 336813204 784844879 876458861 246032963 781292147 536676306 518093841 761746120 320940895 860003318 666586760 631484576 294402527 212472869 202201465 383247580 206989542 509791742 67843268 662679848 975332728 93876124 990447734 559099480 88446028 263137211 345639207 174942954 502115128 141018255 480623745 425324430 244364539 421971174 213917445 644867884 774707466 771338708 685819576 730944734 951687436 942239187 475263444 745708649 149463120 302131143 493529822 104478399 772519574 376011515 708911390 54156837 408210026 342865766 760778631 36403638 286000237 84818802 50208241 777745674 394109217 37134468 151342788 761111558 156819015 600826516 901277100 932214439 653193219 160452994 105314402 926924359 478429262 307333039 582054462 728821311 859985620 415968400 415162261 745837498 18003615 511272170 527441310 370955587 119749206 801434015 828584903 194887322 543560274 431792224 53918501 795278278 130904354 702219291 52037915 962859720 39130558 376687693 643071782 727133248 848025125 40945420 919703363 267234137 520014699 634177200 60762476 134714084 258002848 483436550 549433507 506405040 524284843 837611418 395850238 978092800 406749049 907389240 349853918 475860031 870598792 190630489 91839338 393389873 19290428 636839533 836836122 193063256 321427751 413962689 735021323 425180498 123754507 354046442 528370914 648340737 422823443 606078304 778968632 753506039 686811416 884892332 875650082 790619121 964529990 410062735 164467281 36740335 932259350 804265507 587536133 743333009 171368271 657788750 122817073 157429788 181142143 409157277 582170601 936434614 756511172 201090386 747457441 438378139 348457264 77402772 271593604 167120851 858484241 692348014 874161369 405640952 688192968 426543998 70169341 712960040 980568380 487984695 907256699 685972566 390644178 347432806 895037241 918761400 377647452 389555412 225786318 447532615 155107784 673540374 997585245 207248272 389534329 101506370 641735197 890301242 416351843 432826558 686989207 345858842 777438440 841281334 470318544 259096937 37374211 146433499 271030208 84819340 6630122 842847197 307348959 465035247 445152132 673546817 825936487 803763812 279031857 580142886 16417337 308810462 747735598 544036937 50624486 882597220 663301377 858952593 722279498 760591434 516882265 337505803 567082962 544700387 162726150 686296721 996877842 622865529 674658461 638314473 566297546 406856966 798606874 177533058 651468073 220767891 675739011 577145152 910004860 628157070 378603111 605305220 105181311 112037218 549678638 609542373 947346651 534857949 909239383 88605132 684849573 106105952 183551152 464376746 717387446 345276926 374716636 277125277 863806356 911833707 804498743 562610346 509356440 368862434 765757382 818778778 919952916 811902876 16697306 478198264 742537390 323578182 226376570 696180938 516301264 710739459 433572976 104790480 678386953 735887961 747370898 346975428 164112045 810369853 335918615 969585761 659300790 613737466 149378612 761549843 573981334 23803373 575560728 437548190 844779674 796056549 927617046 124052020 179285098 175176447 192698500 986909029 596119764 391699429 328579433 837437658 47841610 236140080 286456811 440867324 671523987 546116598 723672222 388085038 279111211 128149775 807593860 60048085 593475277 981680927 446356135 757134414 423537783 174540016 106645734 122495818 428478497 264802241 845510725 570210956 882992100 11881284 997612262 379512811 934958859 484552215 283706385 686249097 361373920 733977169 817510588 794376188 285814357 802617375 646424343 117473783 276036442 398800772 764357608 381322951 608485716 438737047 130123087 561616523 532036153 529440852 62305120 425415607 289252921 486814628 492660701 643428611 190612688 809472493 408773218 376169441 871522197 480225323 853242921 118384439 977995120 868564073 166619446 328535391 810247539 495934805 575455468 623864985 25601857 991665206 234118169 15973289 615290761 365954365 42292457 101545340 233369862 789338372 80356344 581046522 553765435 574707501 544191043 512002788 654612611 320440801 100687161 280688447 912959335 806329289 236576784 483961499 131356901 141708134 808132016 499318035 799980958 211847629 914065479 216186201 69697381 918284824 72637588 674594789 122374339 448579506 478317807 939069762 527404781 231351822 932011279 762598664 27513809 973214664 306322959 765062520 242260769 334881108 109684654 222293247 708376937 907739563 788334761 446521479 466386099 878935138 959411234 321977591 932159607 455051676 580616964 776381998 282612652 548447926 777444060 417565938 750800577 548478056 207237766 527232725 339564896 500577404 679907582 557138942 304338196 273967553 228390996 623515691 980261423 132068272 727338025 691580716 115319619 337136593 8650648 598890184 428924651 590260890 554970317 898055192 872782894 82853763 703332639 719477617 69540133 39642764 190974814 84079937 24298539 266633735 630166513 18086595 800109013 222870444 160334740 769350449 381307968 795070342 143734720 343133745 875334796 142324818 98522404 535795975 357587793 142778647 917688807 458700178 391521377 692648004 283552291 122500083 49577248 803750435 561839998 603753523 126862121 149793441 9465801 528350957 411560855 643871087 788734495 130621776 385815441 167846067 363022361 506434704 198266248 266320687 907572760 243394686 738748436 953284912 22386666 465429707 853915069 138250183 677501063 40509567 595856313 566186424 934403646 421903625 125546895 987903945 850962471 275852697 262629452 365918551 753646499 439798385 529863951 118714313 553463802 156140850 671619989 348157522 158765807 202642164 427853114 11829452 979915357 57192247 648791274 681192032 538923675 392784668 744986725 202697214 569120400 651667358 546242887 997040315 163635197 4071319 697770396 309735754 654206100 388665136 351529408 364774311 582678683 813179411 536631120 398067042 520519860 694477673 924015213 360566678 245891920 532998838 766310266 846695318 990544663 378579253 847071622 245073729 762243085 102802275 492533422 830252352 544902810 607581987 971849917 265916972 88003562 208280112 66340767 336171617 61845227 936197093 968833577 803878395 57927725 728955511 708266357 626332379 656828680 500314450 667160870 164712641 602890956 792165402 51864988 413731455 49055898 370343282 428226410 764054421 889006765 279659344 592910545 460341248 820268498 178414180 798933039 264270835 638578472 252616522 676252208 211121390 74669053 487814872 872171393 612416567 392043054 242885273 96591903 977787466 472783628 177972820 548461502 443092592 675338979 388265496 367291910 27969719 748037653 694795952 970410614 776227755 42984173 788175361 39625491 10813509 219005737 246697113 245610707 167342404 701800653 940265962 673936521 346584469 288928110 769907469 919790954 75098833 249530262 869194718 747012767 282200777 225719967 760821081 117884039 434434544 555547107 753776228 758749400 195527713 631315309 260134618 166154599 769250115 850873799 376472678 997992016 822468767 343211480 21436622 172000351 307926549 431196663 156406757 894098435 311993010 492159952 210837176 446205301 699315973 787297867 691732574 709709256 811483946 60619923 749278133 539076642 885110371 300025124 734510719 636331715 512386990 140580203 678369375 990501230 643034704 448580291 306812997 849739238 602140514 321210054 845293309 570717543 172399862 380152487 111032945 507397421 298900179 25321820 773085994 89669202 380393362 265480411 771062441 844807718 382290114 659016039 515071558 453289465 387109758 601306652 709413232 99133780 842032340 433564441 642662065 32824505 7147300 265667733 567352335 598719152 427321485 639232850 276521633 323073908 415915719 584083288 716963611 24547772 454799315 605058656 915037521 91771706 68661789 422503841 405345750 605275349 515795596 780221932 422942624 572744080 866273786 18987387 854056904 396140273 637814254 295792350 648076435 352868393 147986139 853959678 924722610 311327463 561299748 388327899 773288771 754843603 575550345 282355055 638978280 506118586 252044346 366868428 374075567 245168157 624433900 478919666 782312757 692982222 201964657 757603406 309333976 813058653 307049188 202839645 715178311 302500021 612048397 974883436 166933772 950523433 43109559 278244211 164550551 830901137 437489059 966514304 406327083 621742228 474526004 588140515 151309132 288342930 5308745 465430554 763813220 561396155 788808728 729793769 639727778 182447660 374214512 864117387 591494166 717875841 860928668 760798847 821590813 689102831 195631817 316881752 513506003 90161607 206252965 88040648 730601478 648404386 171707368 655666418 517245688 621105772 865586577 478396739 333035733 988375355 339750736 710470200 192532505 351876854 310419762 402261864 845542477 291236021 925379664 464000525 946322583 41888035 818226397 62800904 107236041 47999843 271052631 522324952 100047272 340038979 179827163 871016070 640314925 193047412 442164437 449637391 259574026 149119656 849418776 346219239 593249476 266671917 879700538 57577887 402914694 314616423 870802869 81282066 159829854 691446616 402209681 345316619 186146663 19485708 138101966 207182199 18441370 755161485 525685355 470897193 895471695 431367539 724455012 956489612 850807185 331762044 946353509 512115692 490361747 687449033 987380906 570386081 835124830 771241177 627374390 337462419 921282907 584584103 431237626 208947706 313628757 427913488 946421059 279091567 865083461 443985839 955572395 735943221 288631653 262752778 499181727 185313788 814816378 573362130 449165728 594493183 746251378 214424517 631938871 649173310 911051435 789745070 657668490 648285850 284919064 378635098 829501414 505390100 576435371 756900749 589931296 799788281 208202194 479537623 805344279 836868454 552728888 291830357 659280811 410669828 81739760 402377470 707137357 555204856 670472062 900002515 628203869 684163451 885470673 36555653 841555790 572580885 992416645 992596090 718917037 238681070 814304045 56932250 705472202 517116254 203077984 393544193 711858028 356880829 516128503 756886895 514450007 113121831 188901735 906051461 559805884 989500029 993772069 237747606 336201656 804533210 448824087 105064975 22226068 888115525 419045787 694508273 565838297 632389475 228259315 501252054 360528956 369379226 712828683 711807595 741912944 770033974 50274215 33567425 164445642 995686780 629629754 214301054 631121475 559767810 727078010 967229730 10462735 357348313 159021762 380468947 222527281 359214652 2957274 869688131 992328754 110205238 543238079 538052149 725850121 201564311 359984375 863040826 527326806 295951390 605173215 440135988 609498529 850831639 171373587 579986106 245184423 990445641 779618346 697592229 902189002 67594184 576273912 289210014 530487350 390668152 19464186 775042317 886286680 818697291 122697279 179379407 682501530 406852597 139071908 291248413 153157249 16886560 773309986 505088461 780479792 26338080 341689826 18896484 900921529 221765584 822179009 559506413 348918165 183264037 358503512 226360612 653014030 430194909 386101968 682428381 22088232 457661148 828919989 78250786 670239064 565113091 182143449 747678565 563277125 107102254 423239893 479079587 532489717 375021078 316424202 454880497 600427498 173651561 285334922 247803381 106034718 699974908 255601783 423150597 10435547 932877958 888063455 561962699 799813215 934292863 744429939 310963493 848042260 588004622 481276730 663688087 123914170 145012030 460334703 844363720 634065219 980517926 710099347 975513173 424782188 38019857 890799269 734586623 702114842 853968069 916926500 833827118 327717334 160070294 149194004 915661773 657037235 151157694 997202142 10661154 252342709 99328683 358219402 350254657 390549938 532909204 66923060 489116122 169603550 587218941 364604965 844604019 136897420 734035524 897098437 6351820 963352216 379675043 845276856 443688352 453167658 193249986 295926394 912559718 877060702 350254609 807766701 419393931 525026841 701464666 973756769 321499272 187458795 887386743 634188586 830824828 25665771 632284617 297462143 956249551 709738467 307411346 935534730 679607294 338283584 102359461 317072007 958067516 964866998 596700309 916381424 56720896 951779038 165739152 59059980 618868296 471935499 415965510 690213621 955120326 170195362 756449905 530104349 228480690 470839825 542182207 614784654 140817992 557899543 686011405 560658300 424900174 486529346 132727506 609804693 899318882 70835060 775623704 39723903 208506018 606602635 600084213 120452129 421371749 889667984 168452121 916681489 741142688 125373836 141785787 872210788 675299355 412181347 340660362 611910887 719100070 436069717 857742850 403864720 892813386 562887678 210934321 392108091 683925728 943908736 695892547 131086660 670804731 916884251 228787954 377410766 777829394 662164869 848031558 982973648 575830909 896557022 758648646 489667236 380129513 983967223 965682167 775590420 251699468 922984403 9854144 370547143 233875470 854779100 64282736 677297202 738173433 933950593 446964189 572666703 371523473 885673211 786620326 392514950 663672668 444119225 992854910 66523303 868844888 405577583 849454418 361239837 669177532 297112327 613160311 208316386 101082601 671816658 377994576 364148001 340777143 386280145 691880234 350581810 915701378 494795190 66996117 286992623 937582098 118605482 351332964 107920258 486985186 51911659 954569546 224023212 326152297 967695296 304975530 591707348 392287510 802899265 106676351 46099162 660307612 664345038 309413577 411641706 976867882 655720755 900291733 822963763 172164232 36546839 957437146 542651529 256100352 354454943 456199572 731536064 399350467 344520250 578386590 300026536 582168151 261196828 379586696 413873235 344938919 41489768 944766552 66320152 455554472 580652344 707723857 267068655 608955353 128664556 714711903 756218062 497117721 663334783 609483644 328969870 50262189 746207867 8425433 24205256 532688842 350384836 574137090 993688646 88623249 261852525 53068420 16150814 160245644 781631435 346996329 33749106 85857234 512654064 909572881 120001257 344871081 386188019 313306462 944772994 975559233 454584291 489424675 244601646 161695250 782892558 434943465 254085945 650175400 10635896 134787299 888316890 377632461 310979151 650548572 599561633 739779901 966803608 473487642 352381788 709721781 434033561 999633158 415068693 105843608 87321909 59992740 276472818 590003354 339253484 195475802 71465423 538812536 238226985 657543528 793184556 623607640 280010542 129113846 617341853 106047764 624693819 615889022 51587576 316504464 583124238 23618152 430988660 154618288 472597223 858598987 708819010 500490672 972757279 666910644 638705453 977510950 924763574 39958760 341479787 952161092 513535483 2193296 850679335 61405244 862184752 125878012 525161718 696508487 79173658 923412524 857938347 577132261 189847434 598029711 944394747 892175414 696299111 569022413 247435335 942711892 215616348 382207122 987254196 514517963 406402288 362774744 875756997 276123420 854297415 747688065 219955664 785936599 427484059 810141898 882254733 270539535 494448292 568687579 168328594 163061263 541726123 540980074 626605060 908968148 258258555 513624854 669082752 683772337 709406296 266264911 930117840 242040643 978157936 729005160 864431502 85821622 955806491 617994172 579731772 926447458 422386408 813839236 922407558 406048263 851981224 110676814 7927254 321834521 807089855 567080454 685017331 975370553 712507922 542952993 163448940 25561725 775703592 81721127 791301464 306804079 143407000 960939710 722140759 864305559 866630573 577370631 751875590 465476477 892246917 255390334 485178386 374411087 52894243 357096299 532907107 943597606 176765468 108150696 744127005 70555988 996173763 30574070 662296147 68229377 502858719 925965956 468083626 995183446 611200555 303145990 733902350 20856555 651644819 942582785 40090475 414366704 793943179 420541180 691694569 645540408 525207008 456729384 682460905 218915329 291498850 128610771 923692670 368862314 11501481 936787012 91862154 556774119 885771372 682765754 291440317 206565335 944002433 496583280 712881537 30644448 184276644 505232595 891332902 107536405 727446796 919901106 660749290 125989137 220761684 610645787 510343787 13776345 826735467 502230640 463844973 266998956 549081213 106655461 309868043 474892424 504908930 986215504 840006843 368917980 89155391 134031741 744274008 924607268 127726781 706647230 973438175 867218755 506828873 129137818 482666022 969363514 70773463 465171357 179346027 210516916 659404873 437412462 412583001 503892401 720132189 189270865 298499498 393591180 61694446 69998534 9054774 907785804 397462354 996057201 591803812 843502997 313239563 80414185 129399885 72181198 857559989 12432268 410309159 292094262 941557731 471798965 286302725 286918543 618106225 236031766 438060558 949897057 65882042 215897499 107923005 13230326 111042173 462338500 693576147 194898667 605228425 367469168 155804542 832513490 606714804 744530510 688764310 133103389 717634923 952264878 448679324 89928357 682815557 384150075 361353223 967332113 461654016 75318044 268440807 572880109 522659485 533411680 218394357 385048671 899776352 736990664 702265501 480358229 846550677 115132822 621551029 33513144 190010260 600681267 863657348 489094017 596166667 747881586 8531575 705198127 859369159 29982172 208311308 128194344 600335394 578287488 865224956 934609639 633537674 866844955 740109990 778176916 884198449 840075858 322665770 188595896 771827026 450076103 59590169 124789854 953235475 890622459 534167922 839379890 124480934 834504720 225302417 298364586 439723639 634742409 187666349 888616852 664483535 674471769 742048114 704547418 281977195 52589138 531962637 282138046 700480971 52324953 523452298 528239881 863633271 776390870 493010225 831141499 917415197 738597788 230396914 79278832 866791458 598282330 56064297 716792109 588485783 732643371 235439262 813257204 105872050 730346834 553403687 802086287 737412513 881774024 268098756 131413403 879782668 547999962 411421306 117341680 874147788 208943173 775326556 89210337 58888087 471278801 108214631 905943052 983511710 100918050 143678816 68950911 874065450 246186495 511025256 196826146 738064030 388270339 553500709 492072290 333526093 755013249 109470294 102010389 138936267 564931348 705507278 145441554 507879221 256153856 574102526 48273377 552894190 420455157 422802655 359144717 121443526 53838194 57647386 207012952 502285163 146968520 111033899 454520495 652656925 41906616 963510737 331103609 972274610 711820968 608663158 240160486 438954900 535895672 211385895 492472265 168190137 438983684 671462994 629267370 388623899 342921122 150305278 618285311 3108488 286696338 823264286 60026985 482999095 300187105 777524586 911460362 206007570 712044971 748855395 519011151 577871016 99182051 231960871 598936306 514502057 490256625 763282601 825238483 183456451 741828018 869390008 117238854 345732294 45214159 86144806 832487947 39460765 255847709 220584968 248498553 5230159 697056906 367182833 146986582 867178596 286771730 164943320 97038754 520630725 418232116 858839291 832105639 462305443 849467630 376541776 168597720 535734125 172135691 348306227 487555755 93767848 652443976 388264024 426576835 182659621 533110897 927405435 544040018 883524239 976242372 218808403 671050494 957870874 884072763 117089200 862680525 760101378 866227934 967682371 100214662 180933137 974471498 324222584 901570747 533537749 113477410 48745247 625330693 174693589 12485855 908392672 838014382 615257320 665198802 891194076 949584671 960192345 736720873 884570290 703211107 952320656 911276244 792870419 990240061 368654742 348114631 753749793 526767790 62909458 703510289 400680711 399858448 769363083 820164091 715982334 770241734 119918170 984922372 226350371 21670307 945699829 151464923 63799503 10524212 658714568 523417133 260780163 662960538 723643998 921526212 154206020 543471039 131939596 961506619 871170354 130509774 971517877 730617653 719423638 413097397 887310935 885458392 998789888 83437688 240172539 522701995 551422903 4244257 601897100 254780142 465215044 956881769 200423173 393940089 357716479 934202692 214026496 829381550 252032348 775211774 885013313 403000473 929892350 449032578 630334884 270411401 395992691 361578700 396529788 242195442 339486566 177284327 921934331 706753624 147132710 585876036 73506534 17056393 577608516 190022556 726071960 106641360 923087433 66369326 865773172 526432438 321782554 637342063 577587829 581250946 820641515 809005489 650003987 270183589 520971642 75556144 979572885 595092345 467710073 552409752 8537645 542347858 58951355 241921810 162383781 264927173 61060487 897677123 448267595 636576659 37918259 507622408 863874884 610743103 324479172 648496394 715778008 311627031 267331474 772888577 222759444 169166441 372643332 840060502 840511794 274007220 307120447 160304960 138816068 895031758 404781844 378595813 843939309 954655483 911828715 403523498 224744136 406307647 699149170 449355156 887650686 544827454 143744478 305761783 471579485 849766094 624873385 605724536 28309079 17625597 887886161 173426660 372641912 234366369 732412322 107201639 353974381 424356592 997722980 247413765 392659696 96184073 505231972 64847656 88860732 155454513 299491806 77795374 740540025 500593166 620046620 593581816 48815446 918950357 259344630 584860121 301566009 469837772 361009621 344584951 653477663 467927920 872066877 452404310 77134720 158039460 901031025 861909949 94070199 728404164 545533496 204354148 774124057 459906390 819973633 971989530 750958001 652842631 392620925 842884297 633516508 85182465 232664941 712119387 579560039 200710802 487107931 665322814 952973840 116618115 162037362 526983335 503261034 330330449 295514788 346630977 834954725 374280610 159628208 434519053 194872436 905140543 748890495 119195503 618536055 568207327 165325495 284004593 756937174 685224508 115504868 320688337 152792370 562177516 871332761 204737754 815228790 278038608 308147891 143663173 696508049 953283603 42887184 278388217 780113949 927457765 846794091 357772959 652298964 140638411 745971567 591724116 90133236 562849189 217431967 260718155 411663214 729942459 797958320 45578808 322872210 522251580 369470826 447250063 250091228 248511917 169088856 325057281 564866605 133885287 93036256 443631121 836772560 543487355 467035873 333024600 234741000 88952520 16116027 617104229 662252628 674871058 361289449 670043937 949874028 779129083 980672533 33457918 235213183 907602997 872730298 165408612 158912027 546637278 902351389 979001196 407250685 95156818 257981762 134181162 154652348 963445281 900588597 726909047 330314273 815119492 956400847 424581194 626616859 304080058 697101128 383586706 940414828 738611595 449160456 508465387 945974064 977670698 722437773 791006986 681910587 739370373 895277431 367553516 508581719 602253769 776027381 722791439 409995324 376736020 365123733 739498315 505463796 381706024 139274180 613977010 928730217 259541355 797592567 560719905 223236493 196424743 511570559 988575034 84211665 740590384 664701749 4045465 111889177 911066684 185034683 863498691 94693385 109899119 45696733 37271887 406171584 306479397 732593737 245461167 221146287 560483803 295308553 911398305 91447394 380043295 279587806 791392155 107413318 493384105 313528060 129162608 754750718 938019086 527720976 442668220 65359887 479226094 978287598 634934887 996094265 315634753 273336922 204849651 999001110 944441992 436984276 276874803 473633851 428378009 891256862 218231825 944721249 35542186 928712674 455093501 959411435 839244995 242547766 226743436 444340972 893799375 473654107 149167296 495965398 694438097 944708837 343839884 742440929 301284822 752335145 157844700 307719760 192494367 566298735 1561760 966654783 509135438 439972223 374485444 865851354 106521288 54580684 999018267 213326241 344355844 49039428 965564384 677563660 173868447 676456353 280996001 904272092 755013100 537915289 36570450 163682024 808401490 571609985 64658874 851487732 838958803 137144296 161678297 999285471 832683396 121767752 684647462 911506397 60161371 748643069 206873437 463207253 928663055 814764663 373064505 973276841 865014315 252663022 660047106 467885835 246010081 382134842 514622131 170389292 647883313 156363690 393681639 467217262 882244055 387440439 565146692 176575855 312173014 247870426 487425074 994345446 835881314 905245724 439139640 297739032 317905441 867891618 85433892 280250925 469411486 243796508 536546318 257319823 605274029 975773141 997034869 619352036 18906483 262265649 746381430 769337410 145579954 86730421 203311754 522160522 917304879 807015560 265132744 42854932 323473270 983070343 970640802 439057994 701090596 767597491 622693585 14514947 816289510 359294351 353827162 337751349 717610867 62462639 85339775 269320495 46363996 959130605 156856447 378656215 831409457 939380924 896626630 69336088 904754571 273584677 383659738 470818173 377213159 761287158 835569232 19782843 375528850 734547110 867027122 239959196 752978511 165843197 761568649 652615831 64252476 160713243 584855080 102009613 305571818 571119645 733688215 876010786 923015608 112530261 420730891 584251806 598452575 66526958 269028068 56453336 375779962 547064963 871365798 88479672 878314808 265537080 455384755 754842052 529941275 71520762 466195893 794457720 629612701 141379001 513713247 483181782 857744543 735647239 838152813 191788542 405112923 566508399 235869399 58960358 256727592 79473305 921613435 665702127 158749840 759992249 564677234 256049273 749361131 848145918 696986396 434640150 680285932 277060884 125575915 315087100 848884265 148568617 549931297 266662406 82073864 899507663 755217004 688929101 120802743 595318706 554562077 748674779 880724023 927650697 383211896 501085006 512398178 217301913 36859843 620130707 846506004 995254171 186134633 886835968 333663266 530785138 678245012 376728559 456354029 852329395 599933532 301879012 706807538 338239862 862909051 525047344 764268892 601503186 118200733 950154397 874059014 741328687 476924340 106210263 485622314 879426231 400672270 948247645 945124587 333043777 577182607 832690722 899456168 854493709 169001024 466408919 865018907 346413641 832416568 603125852 184293128 332278779 898842188 900760529 394381552 27598240 126250750 856936328 892769090 265989619 757670607 714052376 360130807 738124802 320844709 688525738 406102521 636295043 808190397 632311167 779973304 934175162 940152121 551360804 81401301 332559536 443041688 473900504 776211422 395470507 24819703 498820523 39246690 335647270 841723007 205701624 634328394 197578093 237886473 218349262 917020904 648080475 117463488 132344341 694904388 470309483 242909239 806099565 399068557 826762326 834853514 8914041 573428153 359110742 852217654 679402979 492813177 910827646 657840874 22846420 618281301 447548954 357249956 399907510 932605648 790990582 994782969 144423508 747459789 740217664 271432120 181092744 293561668 261767351 674838377 126134982 345388515 532705653 702179569 176770436 331184902 755545978 246475159 441255821 149032659 487350035 872143964 505506000 487606163 757815932 329352708 658959110 11429207 19615455 89139702 93779058 541335875 316716221 320653659 432236385 339845942 945569994 853405827 213353686 460853726 555317530 705844430 205433397 56066422 268622680 236723726 317051062 730834690 585111828 954793355 886082262 158542737 80501014 731222187 155471176 640295871 53560431 474608021 530428900 425310034 99930601 308380159 736002541 14902451 795159098 398043106 248049298 41943176 163308832 869577490 553497539 638926463 394330233 183218674 841861828 237115211 104042185 627364877 543434735 61543815 603613433 86057772 658393183 153902729 210617703 819093850 534944937 150714167 497686015 902974060 522418553 804674934 434398391 71474438 778147915 244871738 361789656 339543029 290160368 801930567 155159074 95527306 453265685 571743481 327972084 684946712 888980243 467781882 920806422 958079968 600733707 918370028 627558913 552223223 485713133 971164328 44836958 401954949 987660459 729198342 335669923 548195916 471016585 5907832 859356224 858223641 149454662 195029534 879192736 371205514 542974713 454548158 264594002 889635559 785985297 24043860 174075281 463278427 626825362 44325920 589158254 274839624 245907738 118864595 268728137 508392896 780686068 706220099 650200176 475660719 448122542 294224961 721236415 90444046 12253013 652149375 655673402 99230633 500645879 180999835 923006101 863490893 983758971 481817051 939792406 50247974 938045614 789997495 106480669 425487152 46734871 525681099 96909618 164353377 845472378 912297449 472740160 794322180 440230715 518434965 831233913 313285464 334951071 690156936 582208954 309945266 983963563 109503883 130346224 991586726 955605905 205632055 73487494 452713985 108663350 899486553 613739454 801129356 377097063 824608389 734155630 656041381 360737549 308936352 194841178 840511237 582829270 290765928 161401265 660929585 434325599 192810380 269354397 163508149 598921467 273358341 483064837 709144279 496288371 229485689 650181113 575649859 836522049 445432033 697545593 586116300 227745159 827786361 488656387 843809594 913311258 710988018 651953066 784325488 252628440 871350637 77400539 202051707 42421142 647777757 819519134 211689796 825516625 814363 698068748 33565182 969113509 667923762 242776954 220194137 86224328 556091837 940472936 943388622 367373587 984663668 644236179 632260101 741816369 313739731 282042494 524731519 125160400 849843428 149612787 395841557 467232708 547535580 169297622 49747586 842528639 409873944 811726587 146675651 248397486 471732240 159202555 385819760 475777503 458411756 273013046 960738917 290232948 919993099 933781982 137434772 728963167 157981037 685171461 671882009 989060899 395822442 143554005 697082722 88194186 669767272 492991518 809418118 957238972 845468222 607309721 343384226 315225796 139817199 260992638 874124553 109322604 745661152 924807813 672718684 979215348 378790081 251911777 81633104 592253289 619134127 410445112 376387046 1680442 448540618 913317664 793040025 947240107 408321810 495183166 186644162 810611774 148903416 67532575 531576264 881524098 240225175 857806291 551708396 990634880 652055598 201579527 156352940 172797307 782845381 38736630 879680502 665066582 576674618 589868690 833381928 183418593 385200512 29433433 728972108 595412291 580165525 863603697 275209004 797662174 671324519 482039998 100450067 27256493 345395580 410078681 884493522 205576695 919051605 51107574 17731961 5772388 700726546 954625369 968465010 479712427 248676534 442361750 778903354 947085470 615304659 314624593 38662062 865645133 638932544 200498977 663171773 957303457 905331111 942694795 326166218 925753876 133499828 625591455 877576426 225724679 225088670 757344045 755594053 612153393 186039797 879629342 975927772 826992974 609273914 147594651 203236294 915738206 758437428 799924911 389712427 153849211 463758169 200739368 487126191 858074425 311742784 421239765 278226169 598238557 331481574 608911163 77037012 862893970 149233279 344454406 517774720 185804000 563662936 363617789 83303822 449854317 980266225 159036474 220893773 749967856 906687302 429160489 357138391 297196371 549153054 570114063 603211873 915367474 896387050 7982817 277150351 537624675 256154035 534647325 362300300 177560044 284914418 344728687 286274693 694436008 424585225 466813436 954919093 185391746 398514675 884155730 872287762 363310486 922272360 111357707 999221132 937557148 694378925 189531652 193251358 456625581 715889883 382013246 203994893 560792423 654193977 837566648 392967557 114736983 925746066 468195458 611464488 1419788 979919424 990394796 141123847 766952750 493736327 316141634 70060670 166977090 309890030 464133453 779389454 290057858 583109741 501047280 848973217 1277649 535852082 681724966 533967986 724271644 195027981 109548014 605408104 857530442 55806843 627810831 912584680 139536581 318741359 503645110 674380053 664497676 400654211 558864193 903459551 143607546 402943162 783817815 2080258 828624290 707998984 8504390 23822473 486359446 733319028 936906366 491468144 384211637 32793405 874442753 915067883 817107064 44553075 607117645 768163689 10356929 358370502 86131728 768684832 941447884 851506253 692496554 91231054 151874614 572016768 950717924 216817732 234738434 22582267 677560020 331022083 23846351 432903092 514933676 131295171 441959504 416183478 677995981 605562590 360472167 641645754 594347094 151715481 858366660 412235201 236124734 578438945 124323447 803432955 956363776 975073554 55922727 847322004 590893790 318990120 384845965 866717736 147674408 36491009 469378572 907208151 896779467 508357075 704165453 326729809 449732775 736038914 11440691 177034727 262011425 854398868 670483148 771146189 692277323 612594881 133533079 533318939 779108272 801565538 114431396 480341216 471873582 185677964 539937473 613930516 551636228 81509619 819964497 922446597 150665722 712048225 20923410 367669036 29395413 45213640 769699299 792731186 403714209 414611312 370338912 753764193 327105071 89371551 401193070 335905101 764835547 586789918 319824804 124947815 118766651 109336569 993458936 424355827 707537546 146615792 147671774 874440482 467817753 408496883 35167284 321615245 907042924 346085158 34131634 769715989 461139165 584714953 263476656 904182234 79319211 885811107 987455071 714339173 615966279 526726770 683465477 657263962 632317005 45356048 988486579 742463512 870573807 32778118 703652673 788004738 499403200 545182346 186655959 725470991 812582454 850771189 622879202 404542514 741783395 118482141 328104 736461238 430284291 233268537 382993620 54983100 13815964 991036220 100152890 442152820 87452301 58405189 422408818 650496191 379291704 291202831 112117268 634586897 232732513 998585297 671112117 445230839 48482523 200377720 11708993 613937870 53553528 209291957 60111432 823798170 652256153 81330810 269301516 947875093 476741459 351496564 319987656 890440069 634943089 462982567 461874048 823440469 690450664 688173816 20967366 599737218 83221892 449791424 27555800 857856512 673693296 736715231 260194700 621465653 128687777 456164912 792613163 653925856 711118875 84379426 286762404 705992745 7127925 256993071 214530487 741358233 127308455 640836100 273715097 236547637 456118966 188769470 810955103 454714182 608926893 868465290 353051449 313117237 565076378 555507518 340932196 197343009 552376898 196675342 379376344 390040233 434258109 554663197 82063851 22576276 89593341 783180623 525675822 435651079 538482407 138011559 328828108 608947947 508565141 405433713 94198721 973792587 709773358 404343787 901332694 846408823 277092121 890203976 750246593 599390228 990247346 968166046 399638498 417522401 143774527 881092645 613188300 723143434 981439543 126942987 417141355 927803838 460325206 805161144 476458748 935625785 600094650 30925491 672519101 345775028 128150150 70951068 35032911 900421205 890351605 828492637 28354409 800513757 155589629 237538464 107287949 318138899 168133814 609657254 138277480 365548705 909994042 329168723 266480916 303891346 245376188 227608385 957792670 869870827 151188645 569735008 650615829 39058559 875362914 349682687 509069875 179735557 966136677 548635159 886159960 867387990 350937152 524969897 470393373 626975174 860981713 170561908 99638762 606193531 206383402 233860322 844774878 758321512 819410453 657266222 63110308 655739538 958268153 436260723 167469833 862492137 686927288 789641622 331301997 79419250 866359442 868540605 559041414 131292157 532179777 541885105 213714418 504912628 169475595 414035776 42220148 337010873 423341432 203172433 858055522 100996078 768347605 288662439 719571740 39973064 160742255 524314647 598684541 20871524 311078184 592746217 863923642 281785102 112093243 708004523 661840072 803940555 404439106 193416444 357162760 652197890 302392177 967062298 233325569 210079532 918361512 597412116 829950593 723478412 191592627 266954995 542823363 532335714 296956119 394486809 255578298 73072927 798861380 592111870 482244642 451407958 637802269 744500475 764165100 995451444 752515154 600134497 354644819 500370534 677193946 62714117 644991024 816421777 976920281 879510422 173190246 208350351 708942073 4837468 102141101 232631203 639176070 736403949 979614903 330943061 949210709 468377088 566411081 324444673 69864014 627930423 899727246 318817996 948340943 29535330 28054488 19467157 865839015 228851683 445392200 726103396 590846186 445844752 100890154 966186481 633254150 677207243 994358831 245158371 497767651 51463116 252425872 290295336 229148431 30988826 944375494 692053508 841741828 393170797 714777762 347875581 78821857 976999366 995337068 441513705 56585852 229420711 459463551 85379529 948581377 944545430 50970450 599563347 465079577 808104651 160093225 249210121 285939046 779530840 636025388 259098399 477202204 738441761 263629123 843182518 360967744 561026447 980533485 932883808 865162315 721359875 7095106 149651696 747412823 835843946 627930385 960985794 621110988 628531122 329547615 82127465 193689831 639279764 699226911 336705895 269553371 865268299 808839702 251014593 116533882 581571500 418146900 296013592 133590589 219072396 384084306 181008965 799324510 870024447 708886210 554196017 797428237 86320742 220714527 662479869 984966596 656086018 658764594 896641447 377022972 725197138 543165344 313506270 596714207 214174847 685336908 351034753 205568089 400273780 420610423 320543477 924031740 623693675 26970931 883320901 991972650 271390376 912122677 188754420 534301236 743855834 854129176 667088484 10653943 613197081 54490575 950513455 681203986 701412907 749872233 818788923 35864129 628778805 143058114 417182537 537954500 219893981 461950057 356996644 114650993 12176160 555821624 871445080 741934042 571080851 959772800 432958544 92358403 758245871 885209886 799383626 447473148 788212570 399027911 30068668 845586702 201761625 303828330 269395616 269708251 281138842 559555209 696305004 804787014 972273157 232890217 847421950 851240500 162870278 370771046 833187177 302043156 985997806 550324230 583822796 949615899 158042837 147846113 35931320 631793147 545830158 725949133 376856120 798347990 526128607 652148710 28530697 981940556 446205068 8150117 978396802 548759987 402873770 381408666 349049574 689685814 130427478 88962983 905674782 3275465 943875344 142688892 308176045 151536893 886753038 865146105 668065204 505761823 837359056 785678435 290130520 34267207 919137750 307013190 64849304 997858414 933201039 817070732 842738365 573210213 622765020 506150535 921462654 562640419 221952164 514719404 778849573 367838958 968994938 794689598 945864298 852317177 983244117 393000877 327770324 482858145 465302495 22603021 102951435 327443598 685240295 750781175 251886192 977790102 824657065 531673320 686875330 599741574 932342789 457512529 802824716 952563082 100400157 255527252 269408583 866529295 828911994 980443493 981053472 153501694 338765969 994478741 616640929 13529136 480604684 915073781 933717649 510044236 527880267 761481139 742258224 371222171 495036035 499299730 418387882 95485433 670429870 680424333 444806108 863393317 322309345 457060822 217110423 759449610 750533228 174409857 780627971 331702406 631458983 939043898 96240783 298575614 96230855 171832624 833774387 550090570 4563971 525457837 629452557 338077433 898411842 681925335 327629835 712914572 678564606 734846904 639813316 303149406 683957631 45026177 860021759 3732136 913065471 993294831 979972493 191341444 602436426 714527756 479768109 68034188 817783192 979089057 474273898 365618610 274679110 981238876 105724011 809113033 806367907 467228796 163469025 263498956 340013880 214387146 200694120 95736280 237704018 401994488 535649082 350310198 120293340 562133569 447309377 954275654 283527383 526074813 510941737 405480071 678689916 960427502 137155593 729557700 785075779 536715243 341446578 100047818 709611524 67387127 611915477 684232248 881045730 870656322 630951571 82157451 357865850 92218258 859557772 919893879 298764341 989309493 553301022 780441831 311001818 509237669 741754157 854307037 353278491 580126070 412250833 329292952 833391364 385101699 870403758 483326373 81367907 220520815 645844272 904496904 180736842 533430203 842076406 152040662 46828721 8302543 878845412 155485672 871451828 249878109 589245837 817966851 900883179 290635700 210019392 208240122 333831905 935723617 581707136 330477871 879240211 938934924 347117123 16005372 904904319 655137889 724011880 859305478 810132856 587101670 375269080 210741305 366812822 298533794 854648697 796479299 624009781 802760272 611001960 115783205 87891307 906741438 98644587 206327713 865637286 996232242 842589933 638185900 582665617 131907757 968009481 845093613 493090824 798151810 157104190 485695463 663953863 624343419 989516750 282219945 918901300 543783241 978132562 794102165 102203916 667243094 150300535 279237065 198884265 280566020 825184389 78932699 575494491 385359131 934436622 65316101 892198623 28689610 150412906 519004828 344658816 685401920 15337342 459424285 755894857 382741008 649894165 576975265 828038329 784622588 3602676 718616059 270914656 934677739 426526069 575625959 212611532 332706868 289825991 893579111 988482904 818564477 811786729 431185362 905849093 262514683 517971395 216306857 392565323 713372557 610855184 325162435 757384040 402924704 678328639 442840239 88994376 372000339 359368777 617982355 20710115 228691139 663294751 807243011 626330885 622157952 741995426 524846601 452260750 706140512 849773485 927281129 8918399 43489116 970462879 208365769 226506199 361542591 338410311 650122256 120311076 898793937 500507861 707658473 708723916 203901376 706023204 362965315 889102872 591468384 8816522 775694265 387800635 776491793 23052895 961768602 983318605 891593049 317802414 105278387 722718342 782684066 736542744 586991786 476312118 373799447 790994615 606620322 612350880 892612108 416094144 882947481 313529632 102500027 534048031 651547443 359031389 366079500 847552088 636213706 191756747 576105458 292110540 793110117 746171722 991289632 188471050 363559173 846016650 865174091 778975171 346802542 640998099 832789366 449210918 156808692 797372523 390847289 742260533 171183920 339297562 931036242 524427186 120310420 563424156 647209265 157797690 868523575 262165736 24588188 702401266 371265916 216717738 788359660 531917482 519579915 326181897 991193920 851125411 848567096 217035863 306294001 646327390 663932687 5223396 851522888 148359082 294285779 580591725 690886202 770816848 707920649 946343464 522508865 587065858 684021579 533206504 590794829 139623660 598872407 149689435 163132110 253908554 253867063 217085359 241302275 764282032 930878642 924910835 396276851 601830728 989319492 360228083 685124348 852061228 425933069 295536965 476069249 430659606 5108919 436556403 881765024 840802276 830325846 903079369 301323142 218406545 705491981 933270915 596477674 353667035 338660062 209194477 458467723 815694888 162679111 896370657 818273429 563767598 658372959 811288748 800946864 632291656 537878758 443524560 174911085 541906838 597165000 640681209 158479730 672344179 696490464 479852490 31410160 175365971 700164603 148207336 11352591 851781342 912952094 72750634 580725621 613166318 9125146 162071570 941826428 809083849 175832728 185287834 764398665 25837568 38728965 14473685 508076263 749228365 813901210 360492622 97005204 393455728 604185492 875833621 164825500 840212497 803487014 437427275 807333163 759027161 792084499 408292812 549264659 40958850 592688166 664574218 604096586 648683685 855189566 35720434 995368234 418061918 522959791 96311375 191921982 615998286 7443991 54688945 744954045 477804626 78439414 108242869 871708701 663640410 310337891 877036265 607486576 513763481 933012547 379093746 922513133 75946075 580526546 918839262 633300429 156293264 217217343 217294968 754973920 179835189 401953462 389522648 727897110 205568512 566261755 790640889 963027075 282505667 718911019 307850412 385347602 210464840 433986186 890872674 274867801 865483176 372438694 866616807 467239422 959875955 767509542 851897722 101585522 255928197 305500340 437240187 522699559 719142270 45325235 325512261 388886411 483501563 290852869 943151617 129925728 303250897 855269818 337152200 197323598 125279192 223137571 991449840 275941206 54566848 238935637 583827075 595804992 470490821 374456575 801600055 783729032 701077618 288274893 123300026 356879901 740937455 885259714 977145927 782607508 688760063 123611734 929710332 809533190 325595830 878623564 58957793 550799739 877567125 738242240 391832211 283195703 54966193 212070208 970472175 624942794 721532022 485402638 838214568 101607383 344466124 594113582 194859862 664637150 695555094 551550134 509757627 389970767 28410396 604139861 921725927 364704403 856021905 454765238 300218546 562241595 306303934 858716909 594649965 117605551 943404325 757362329 30287491 501732132 20372449 736029055 878200869 884828681 706205370 375772815 543102748 919423417 199603734 897691235 552457760 272245983 309381660 253143919 445599590 982350638 503591153 599567509 757012892 747034803 871803125 304819728 66520927 685655561 769297795 240691502 701537129 370268153 627303267 477645446 70717057 308409882 996297715 137321769 550505448 762223309 849604816 994311853 918920104 940630021 424381163 610869345 267997317 896090211 609177452 683071801 477986558 900085263 5463870 39580308 768825744 950225229 995150795 931334198 178211798 877022982 414078159 275911669 955478992 933821707 278192509 187429815 411947183 233454757 34596730 438392240 886229829 325522030 802417157 469809955 235575958 597064409 614822350 319309021 444162036 591642705 497673410 168541425 497287933 519340826 741241885 883554266 818394074 364490265 196436854 309079436 140382136 277534147 594059447 207190633 607380496 333881395 452638414 658395112 476190727 910210644 501281893 320325218 555260591 725520532 319969284 119054206 266955223 379087958 538404797 206817064 199910688 85408400 746685028 104188216 560375050 594258611 424013388 166856491 615872199 854220437 292087967 777681838 488920940 694137994 205706052 746160076 370254338 428446574 338058010 661646973 837275769 992648240 839639626 242761354 274242308 66354211 412885940 815606861 758047828 554508460 597051697 650816537 937400550 726847660 703664211 477282259 195472707 764464547 525789189 445892128 206550283 859739364 299547830 112368108 25995110 789154132 524030955 365390576 998982546 908843644 268268535 642283380 52517137 509430054 935523933 22599265 895533402 101276077 545953615 603818408 566781003 603536705 870484678 581783461 908104778 584466181 846580696 253323574 980030922 869050099 964497364 882702077 731309918 598450698 508632116 171347797 987602929 790084077 712915458 692899724 991147351 976737842 729862627 435707064 394635136 230466498 694750404 685202268 910919663 614752702 522608608 868927321 995141735 504155351 462998224 786498708 929801611 411335469 269098877 987758857 297885603 707474651 711243813 348117934 547312538 838991530 819834025 460804739 442662574 542854944 630112770 45664780 39322530 814438685 970019136 727631052 984220880 311237277 845436019 687148428 409048048 857335612 176250410 204503236 960056915 449567502 456339927 650039518 893706610 898944008 216443714 721977050 528881994 564833004 363362198 492749871 237567712 345949101 192985020 766248845 238066591 236607790 767067949 442811076 317063340 433211357 432732943 527684753 863740904 758586328 956157967 79137998 328782951 641482204 872972936 657042954 200826225 392223043 905851182 557973257 282968976 246522606 400474983 780843574 243730766 42589495 882343118 200566482 142351359 107163571 603778331 528094648 19176067 213838993 76500305 807944025 583341385 435508085 414905044 379635514 476510572 367673923 966919400 576828867 206386245 275838728 519371743 581363349 24811169 454005006 77593429 912940099 601014263 529235868 482310130 509755779 523957031 227675153 649403916 957541241 529309933 174123408 122644410 194366991 962256121 110275925 153763022 727395127 514026401 240382917 227498415 449878229 664202988 606307465 39140469 338353881 682075227 247410505 442204363 728132779 281637473 312299601 763664179 842075143 201609459 241736777 959398947 146915795 240693388 604785510 123507545 698713786 144906952 946930727 721325657 744282992 66187465 338993067 981551200 511406228 859687799 784110826 555575774 2085146 88452810 299145936 760326277 544799575 461337638 57536460 928964390 834644913 406124682 9762055 200245835 804581574 705758936 194018991 48711846 13043267 924427119 952899558 902013182 757991450 302520896 390291088 756832717 414199920 51813712 81605833 919905087 748908654 709735427 409133818 494439584 30766255 303527433 972311039 137025024 452602199 599732021 746736744 227524357 983452184 856533175 879706872 458981554 311474651 887018440 265242861 766860128 512997325 453569111 546890070 82206021 274032657 568630901 894580317 636709221 280356055 521026681 73263883 335925785 680369698 758073466 587219462 558901131 643809951 920678486 917886481 678411443 969842841 973413592 304209889 981766839 787929851 231574125 633293098 587493990 5966753 259749392 13605385 429764138 888017106 542578247 935060308 459079316 854335355 567261787 639684880 32848625 291385930 69275871 748088589 189674082 865341486 887490284 329161666 220346449 570569606 240407265 942994212 352835555 250918583 510278350 198639318 819830182 509382950 189730763 288055317 744843726 556799209 166959855 240390635 19609847 914213035 471659282 796309553 152977095 208538784 509763072 329158803 200340320 827488395 935526406 657197397 43231131 257309617 502098677 36636003 753486975 136804118 944412578 244571802 789891922 6077010 194732681 511689090 620847747 527017520 651371710 121055149 54157062 521285805 340751610 10888924 15098591 206883416 893968506 627128067 285248467 49349727 494714341 471894898 447075041 232825774 699460580 910050004 501147769 288966711 32048370 326425578 934795737 130923004 946589046 725329706 22646806 28306310 683644813 91849258 715713275 865100003 783225532 264843889 132222593 17683195 608376893 167321337 165169873 810626938 619034889 154948215 29179344 385184797 934400750 74164828 702999297 585606732 356805858 453964521 476985188 15088250 713648938 668713512 546377579 465121657 248233901 554420450 611364890 570633611 360636517 756533682 725198737 701775831 66631852 466263225 126138003 942772597 620190391 497100200 654804279 579248490 718995164 722839071 547275722 881131611 927857253 121422547 106146987 882906113 85295824 200233037 710588953 58872021 825736734 661772373 594173291 608767395 62757544 69540606 463771252 161441358 17158446 133397455 937711480 745197887 717910641 279870561 784606489 132692769 316267015 972576866 106918450 976737901 95437870 314411884 536667031 930080474 775673295 153502494 387747651 875854470 877431969 764649177 47901253 456315568 984346597 408080900 697307528 58489990 187845494 423278101 721225644 713150424 910120357 824576368 101044639 809199090 92561614 830248784 14644673 792710630 521730184 889982435 67354041 523296531 118219537 870777468 5023228 435575509 914248609 811828367 942375288 361808928 516752783 581398738 193288307 41096132 763810196 23057180 926011310 907061934 589734696 6088745 517313174 982841763 901965081 751743192 755626361 746164816 299556015 895447963 831297816 368464693 821081244 178650466 729655740 465601869 608142998 388353811 375086901 598446646 971936937 161574651 918106200 558407343 262923895 562328375 702054745 670508561 848636887 134582311 300246444 442006745 836406457 335110380 506263623 791872933 610016691 974659933 49804766 1661937 143024880 901512870 607411809 147279423 318376370 288023708 56394604 467611432 843260889 878742028 232519972 271190357 608423770 504800160 811855407 793812537 318795322 587719928 24694080 965699710 87848862 837075127 775623464 931726638 11669313 354479634 477940885 349191885 828247913 713071047 542349731 553229007 18244448 140569016 317139643 300990852 167333158 362334229 422125563 483483725 654654244 820985967 841855985 322903013 47452266 830267818 736011015 368239683 673633711 493881361 933761366 606259019 654016136 52351999 794628777 667241257 196922827 872383613 992777169 189513411 340736319 122062257 917634093 122067199 766110359 755580228 45627370 860817518 646053051 984865635 922269689 199916090 768107364 860400630 313685274 701288926 262975537 67771355 43173242 554178054 43220420 952812411 112075088 121575970 319461301 177669104 628654704 407396775 791955720 421104884 851259583 775678234 113061418 985309061 247924153 211607699 627047318 712580757 45559006 182128596 136980328 680834877 524144663 989456622 237949355 896243913 728258213 116454162 981881404 817108220 730401676 795433495 253517323 760448552 975828490 178386931 272019680 778781187 366098548 772509353 224604291 338301261 547252907 312706143 175573364 556279825 595920053 402619803 115506364 391295723 585907103 774095229 518095477 736839369 176204864 357038583 198896544 878365828 972584004 301233136 49697704 19338782 707089471 521043351 753977927 58331982 534481186 730583080 835710948 848396465 698012691 560429368 699228577 997348347 524494365 603929388 572435167 41556499 318206628 131646777 3707688 804475849 253796167 682047808 685302101 512803205 1011907 985474533 466805987 247337369 385291987 938687039 395920988 717263979 987765146 881608629 728190710 942443250 140142778 418295946 889623618 364625185 713207780 667718060 128029651 818322651 785645614 458233188 713032385 981709219 103722075 12384569 921529094 541848297 991969508 227811574 898960273 577072246 137427183 268196812 757921404 524770791 571032643 283829457 943599932 152284696 797863330 355803778 356980561 905622113 791929931 373448251 370213737 231109211 359033264 559986590 903282317 449554420 490345480 616418769 606736993 423625848 975822654 970468791 636102725 784628636 793941446 100243749 354115817 367065428 729860215 23147939 319846511 315915704 931896708 379128337 768676676 144855128 427220258 557729132 313954811 246143149 344968828 740913958 568926522 621270744 878508150 361880637 587014402 189722330 956466504 522186608 995873441 570498397 284027028 213925496 774621218 9717793 37010851 279145351 248422048 914116049 722129719 166001171 763240040 604070018 51031609 737000636 36399491 604479151 234092790 380833615 259390551 356511420 714465304 237459587 767611578 10194064 652137180 248155162 864317924 677563097 892667878 87182467 35250233 114003954 515262022 670759350 85464783 272145484 642844001 193688505 106883526 560088269 300206343 379792200 482205816 617379308 370092129 633043853 418646470 255331153 952864142 652850016 778973774 933677053 400471643 397312060 356025243 227106870 558857972 132651558 720442071 25857019 874463967 3315182 645542988 979109965 428246231 472713821 761772491 880331316 306834412 437803439 773599974 555980376 507374737 347445437 669244098 720130533 598439253 344612827 57364038 77665883 909288451 135998451 500760520 266033508 744209793 559340939 199232145 691980860 846649868 672138758 726647038 37490066 737181392 423250930 916694581 810563822 162558462 178870209 947357441 180837054 147541757 218776847 395748145 246383862 267177090 303998453 582633946 781636629 265399928 568137162 783629437 770376477 342541940 906251407 108151220 482703162 114293717 39894266 252427458 629935317 298087667 50859585 73764689 509950407 819834547 879720085 896882720 883965191 649717950 544944637 641645348 790750197 292688894 33635848 80180323 734817402 57545684 801126995 578749156 770012365 531328082 172934233 4002653 734630086 787060864 337879259 580530556 464293056 658220547 435030741 563280979 251476101 624677977 398580306 347127466 114557547 373301164 310832772 185725266 16317200 726234744 653800778 985292315 795051016 618404104 481578472 573241591 545530718 310362069 149492052 922543454 26285673 608885995 268308618 890153391 345018401 237347614 890939039 69473586 464422556 482693666 659303119 825188870 503735105 438986508 724631682 247342822 140033863 18720080 456779266 442984638 14472829 212677198 282909093 718012086 602733090 522968673 875221 554600348 607246771 56925145 211382215 555927566 742903107 386192261 59969149 108023103 647742350 943249055 694120673 860456358 206168011 420454076 897730307 754931343 400890318 551086150 570369421 503199189 155482849 99295080 654162287 82346937 986997194 441256075 828018406 86257601 839469787 590793659 754884533 484936414 666008308 686111254 639060367 695142031 557818677 139574039 24292623 95391193 933347899 717755875 876205751 560559463 977886683 788283862 32314586 606928399 656912247 596639171 340004727 897149260 226027487 536835267 632580964 488906467 572325696 784421711 364572782 515153786 42670376 555337618 322326292 208678578 351496096 705624078 916038499 81860192 327364949 586992442 938104515 44758240 942931913 740867114 737625758 738635538 392147459 112379069 839396196 402833396 705232907 242979690 522146734 330002201 357295907 282151104 140945240 408723120 934740435 353634495 988333964 965739095 196698878 279986131 915284952 997969573 28824463 936742764 753947709 775495441 816281133 18044483 793921959 661727500 229898795 593467007 669710957 374539854 994630267 137827995 490640860 225566577 637541308 935894975 138503741 160314389 797855152 452508697 301232472 783565084 717905541 324693112 383729566 667462923 577399481 7206897 260643298 136582307 652735946 477299074 752296942 242677004 769590936 251833961 142238834 698562389 445327079 110636978 873760098 289645118 640839816 659845016 443534815 212211101 321085743 679162512 594776017 254030252 189863436 647120153 226270541 148346452 417016757 280613367 778494366 393257897 36319606 499914838 64630900 790385714 489563253 845189564 688999880 392734197 803699974 927363101 876731380 743021080 343200624 525511782 400716742 25879841 149893778 204550513 856975698 611854869 940217884 568359363 120607987 853033341 527022106 236935816 311752941 767398311 558465221 913728063 161069053 500165830 395045763 442404803 257530931 192414361 113154696 850890265 306780604 80976063 371795000 663439509 78834723 173820414 129752923 321190594 313746600 952198968 758416622 811774262 316254726 543421025 228827071 549870365 38473197 826321624 930859628 489662871 707717365 802886974 271280329 912320637 893889796 726779430 529860167 109641191 467369157 336799614 292833065 709020311 50701295 497020043 707307341 911529768 808694765 323133754 903282262 295960120 552093912 729209845 762701078 266539215 455117345 109066635 867583140 920374643 942778271 946291308 294695402 240572689 704976145 392370966 840743589 520980921 935865385 992453464 560336282 672364303 172593564 308425320 540553999 828957446 444612670 540120558 992598573 623164549 260424680 511373530 238105142 300725940 754618033 759727330 704300627 373139904 836547255 60744158 493094059 994513763 937344553 660774682 931009733 252755502 645981909 893009516 676740628 105760247 79659128 316307278 426386928 92271456 878004486 14494736 992875728 320489767 675809927 972501353 635570973 965489700 591807997 780842489 708162697 377050241 814195930 498755081 80411261 699826828 598044642 518284062 823964257 437918713 999886896 246555668 988898062 614383331 929491375 184971919 765980262 510492313 177801773 936986380 715867360 849816629 122414286 421814662 70548777 276277757 928429982 776873567 364551010 926732315 604554668 725962649 437867912 558765848 64079655 31933640 82076885 485800711 675740565 692610004 844389421 275590070 127090092 39030641 705768410 892630692 63634940 185829634 178751927 406978298 12752673 918271220 895686395 608441376 933818996 744522368 401155289 659288151 245027116 625673558 953626989 752734238 64860640 697611981 369384297 801909381 383308297 433756544 936482569 545436514 136290059 925985942 708967123 885798942 351794144 876874554 894195155 188719997 461219320 5650222 659293884 918833762 638539686 859314172 608382625 548904175 368862364 91064260 728914738 977121522 901575720 244567816 971917113 229457516 25480301 137723048 641313900 756144283 218056794 624831631 631258347 563493134 762719410 709336910 709699764 666342045 510175295 980739294 37370320 740302653 151043278 683939467 224089862 814312138 791394227 705610850 551803304 198259169 322603161 532970435 621248215 298745200 417781604 80461686 845825787 739996524 182662280 935205429 496291488 713662531 515150264 26154906 912052478 797188469 317860744 746632603 129504611 235498036 709693888 871546661 956940068 478707863 877802230 699272162 49667127 433700475 450032299 936690306 536807284 372136350 45268007 311649579 35972796 49654694 228215867 920328949 844077662 991883873 301861349 791683676 760143031 11715158 85401721 288875070 180302992 933502430 411391659 586880709 93667139 140157310 537216418 953329609 14488996 881873576 876654504 306339596 862549307 971428310 608684662 260792685 521779209 103523804 845493810 106062962 569881835 492506769 622229218 584948176 839999748 706806774 893184118 699959462 501390820 685895870 4810325 796991533 848320357 152750438 4541405 448916216 952372243 615448890 859839194 344161336 170386954 154828316 353813806 626186062 820443763 254728678 738696823 734510563 899540565 631656948 121551084 822638970 625300762 500105203 292051189 272260918 388329285 526432382 9952789 672373376 156733521 477722784 469148198 313650557 765649895 725389903 740001736 491915105 637659250 143033531 843912516 589131680 912288344 32895276 680021145 254262688 495559224 724540242 676778870 87112073 889938875 655303154 687964917 851522677 274672322 955376051 689553418 753436063 223043583 543909425 361895115 936583758 243678754 587311729 699275319 290226090 617609062 938845729 252938992 404197316 53061921 509584884 946185799 435846520 553870174 869822094 755574326 124766510 507975387 879355779 345900247 740075653 168918356 775912697 169954747 293806136 808908913 708293406 169833881 154939359 855019175 777076904 427028303 531479280 815506068 126816615 869036819 857568473 181809120 827495434 318916299 680337565 855342251 516156269 431793016 274073609 808946251 827108072 297201334 891560688 243521795 39558406 258221374 708478367 976547197 532300037 211977496 547891022 407426362 799528657 591942232 990388182 965812593 842344054 983555388 460888151 448993442 340161014 989108429 103280508 484692595 105493086 42414806 30641037 377816285 472649162 455808127 854112407 17125993 558053982 783902487 465266605 858026699 127024998 349730424 521867025 215407597 846928254 242598414 826831387 13570251 140881017 361342618 514897664 317530180 583394319 517511866 454963411 98664514 61079504 470245545 319969012 62849646 70583052 938211110 711264467 792168660 360528319 319034496 49890508 622228593 460783318 50861783 120177121 209164716 481303713 164787911 722735236 273362702 913967332 136515904 464959992 106387423 820656491 13804229 838128537 443191640 297295866 454792903 35023042 55412833 499148937 984555274 842070809 980251742 71602339 190784628 967343472 411680108 813884085 805235507 445835608 385309820 753921773 907145420 998980861 38234806 760294118 912716938 101950758 556699982 360431881 524914238 705621504 248359194 24180629 423812024 85704855 978957623 205480741 231094233 554712619 711387432 784300967 494146773 578938914 180091396 833628921 629157369 931885710 662669635 812794153 982277885 327468966 913360579 459318972 670372940 183219864 434108123 603314711 915293910 821554996 661135931 980903945 845491696 721367952 542986482 19405484 186426521 688937137 922835182 134112613 719877529 896053328 722208492 43626199 817893026 221464802 98405012 661732019 478121116 277954180 516398773 831817543 94410514 77675015 784809119 590043199 134847719 626420715 793118475 943763180 334267003 150814897 596038961 313894438 893925058 490541382 142669513 216523603 537407405 11862880 426455710 958628938 84219843 107472857 118284912 278780754 171826595 313969096 285093046 478434627 570120300 716415931 997055027 505750184 397877093 396438729 83992916 511648141 469379657 760177889 79805578 636215371 943161618 906549267 160576600 559147294 749867677 176687367 140557332 468787290 48115752 678461809 792740349 753523983 812555295 433316014 142902970 721857016 564849238 895305371 494199557 742393777 413760636 738858496 513980654 228490612 169892242 953672272 372419447 378731083 846033046 803086902 298477214 621255813 686003083 893617545 272351441 495884288 202213974 572156273 462255307 587564131 502814659 229826074 219216954 553623905 903311294 666319462 348241859 868363183 612770884 714807995 406656749 892075543 75302326 753306040 44548575 999285861 798459453 509304778 235172640 341056478 990855748 718676376 663081556 387164018 768240201 636819320 345312264 276602499 608881053 988600023 462055929 965162187 45781965 750557375 53841589 735017712 754259672 255004007 981043609 323172364 361024616 670903772 803336898 419509747 82652789 947897531 802001814 356711334 818536460 236570466 62007364 633219815 413846661 14982153 13711458 16096000 816366552 66194965 433105919 602619321 840256052 48635910 756563065 27882104 880895728 699096588 949760869 570146683 498161153 15568900 128321827 272225000 967517839 471941585 305756638 664652142 805969822 314190848 129676343 175750524 108343986 838823441 851226843 622028521 961782709 90870173 521500147 44926257 592939255 820041751 297798500 518880684 129100787 468590341 332478127 454570535 172238359 742310884 233299333 520808437 68252587 502811461 306679102 537363666 794812961 408402571 897660795 1047842 383910499 733133477 639850451 992518066 146488839 67728137 90254231 248359498 401859955 275526589 238882492 56875991 921769666 110335840 142114000 277042334 504235478 103588387 453376410 387295949 87703929 772812250 763348523 185325155 525474839 629584141 35269089 151079966 691400104 73255841 723135682 340405951 32380371 158694448 929776586 304051880 799330942 126215017 346380056 981170722 385832879 142777987 807949403 441678431 599862322 357712285 279798264 847403573 335344249 880194711 852325246 819009313 932265014 470803630 29208275 930902406 922148561 245266761 759543064 949768759 754552410 384156616 557538988 907257261 657343749 855230156 596207713 198915030 687123856 888143766 536486124 412456994 589966091 365063090 705382005 197745790 134878085 921411948 732250061 321527058 906648160 356754669 965129725 866879802 355333762 102794870 41616422 58716284 183572376 447102883 710549257 955652321 205662308 8797586 741858395 28124634 306060039 977366751 42662759 2011853 180959772 65885908 944503209 254030796 100896856 267398611 93346998 927283367 668961702 210767028 557125908 934127315 689926009 209414918 999699697 984223740 546974101 821690389 660055722 263597567 325628944 954783731 976415883 968384662 505743630 351303799 194716197 176904583 569344341 687382063 521663514 507669695 713010205 564801037 461935041 950684862 764435158 266264764 907372861 106374178 739871599 858630686 105464454 594273744 226669292 548179573 398287330 875648962 853564061 58242646 802795683 740365175 922911785 283568290 515964141 347655052 620250809 352774231 552614727 844114338 372135293 24118256 651888210 364732853 680527654 360459531 730174952 470165429 467148433 954019086 46373506 102266299 520507457 184099042 11920475 113888395 365226260 431174072 536653484 22535715 564553910 5440831 335236619 97763462 851591035 127806176 969587706 805138539 97404096 66195249 543824476 424373735 61869498 20668658 665110244 686328575 838213182 737386635 735920424 497344631 719042576 286804479 155437126 941210346 264792135 834710755 778525222 392178668 718480125 90974275 915202698 850621279 39759660 916564907 195051648 552730473 984055424 63372749 60966360 743886527 518729440 877111268 323077543 709605272 536069102 253618451 216855566 384982018 438650187 221258993 337223043 829495691 68071394 792699959 742964232 843280169 811399884 356606961 388438276 759501294 20389329 100295076 894967759 3827382 183550049 561401421 536162859 237788906 53226635 622407490 171256056 331445701 587012908 351669549 339776367 509645030 932208191 624444061 125683528 844007731 754161614 970943295 399253235 240501386 52725748 558302738 817997930 309103431 914402493 585233029 592313154 12294510 493053436 739132123 294481595 78180787 916020098 784375111 85492023 625662023 165990636 280936199 932013900 341035182 252889952 352565963 543751764 420275035 967336811 597009359 66655994 512046930 279033771 321425191 842507625 394403706 167909844 778636079 785749760 422746275 40929420 213867340 361439748 712131239 751759857 852679942 84874212 720293546 457199916 112946259 666944237 974546960 503200252 98100172 56675203 890265733 372845975 590370947 877415987 898261026 848806794 621712906 562411603 219445418 170769539 250543631 703864375 958653097 299680241 263687399 425071176 967236357 53146003 348765382 832868834 679991308 247213461 949850335 405587094 495011952 468979119 316787130 674591641 44418527 689319426 430576427 136026809 828830134 570472095 196544764 746266623 239463099 94982648 652195924 418914474 645037805 250350832 375023163 106678166 85156141 382879135 142555399 70098675 886630133 988670052 467190981 522779274 804423482 398176565 49662391 986067151 591832634 772583811 15823820 832341292 584903857 336873071 137473989 809069204 516835304 882886172 481486398 531302747 334980378 689980244 268606761 336980541 583365363 380369337 24742744 981090431 524851221 124965958 969751672 671883250 88226729 935591950 647547064 406571960 785595154 803389765 447811992 410321995 31056538 708781423 794907766 943136762 195368019 177956288 591459943 725859845 742103600 906738165 574862430 791451060 385982517 51698525 267341795 706256644 314722106 236788198 143167999 79216066 543073080 467198968 62008272 255849273 97042014 163925909 74385806 252315634 597438536 425967036 207709481 4227473 919837286 749728898 448455645 198896953 461177988 198962631 615431105 441691271 54642452 45200055 895995729 481660634 251923768 246732206 176992303 706886619 816378022 304122961 959211669 8078439 584814043 696686491 656105567 294756540 490290133 41771036 860345405 822839834 428061773 468101554 275023055 100785900 199761790 894763373 450533329 915092544 110235632 552247864 530738770 733674560 887758589 176197957 946484077 57209357 704831769 276711976 556008301 415321567 783882785 63651004 141289724 797982273 751524431 395740619 221715809 655097560 529158560 30482945 63596762 573002398 645686244 730489264 758713986 995409975 80708476 356294587 739648091 580332194 183340323 853357657 285105656 555722636 343003484 795069088 449443379 366546369 408936262 121895325 433283685 872582517 303869648 338034525 478734879 126347933 449668004 910820536 945480946 399167219 63618380 159643428 991810028 336020926 713332001 38344964 663297571 537302350 811877233 309977292 802609056 400235510 807525869 898470853 128803392 23123003 850041225 207543869 951557147 350061437 297352590 573019376 228767591 681469195 252755891 668044791 290248100 260171116 763002468 928367452 111538627 802224670 358400007 75548055 949320711 280883063 948726888 382626338 261353086 639805350 355075530 117022271 760516102 798391173 274702547 923374460 215713685 945260914 547405645 426522379 954086127 948122038 35729908 789197512 151888846 738127532 809614660 335490031 126144786 278015231 390433544 190465494 35961042 55958660 482642332 852501389 624602850 164511140 597950984 990352001 643787609 221982481 714657652 365218566 853812756 333416084 829449929 865491325 888692912 940849194 800659685 785986499 143949481 617559134 673611673 301605717 552245486 494408081 63098328 965291489 9947603 848103972 848521622 791854324 419331866 785523754 720085805 255787070 176439955 957695163 642545608 870992488 547644947 90757197 321108652 723000002 474901870 955456776 893903822 111701546 114214796 80411402 666495495 700064786 651358216 314080744 162684921 607007740 979873801 201679355 717130489 12763227 935618061 49471073 655203502 391693650 137477232 310949166 373366266 567892381 810739392 403521966 869053216 323601267 590418853 271612351 354029883 118140824 728107695 680938865 305195601 796947998 895246900 253357896 863300766 940482473 640841616 462728572 502660991 563935424 488692897 778508254 896762813 81864481 74393789 328201239 225537671 102027621 738947357 674219915 350117877 414486166 838730254 44296869 234705083 58591233 121109422 895309785 622906577 545235181 128598633 71771915 453674711 702696136 454739202 877274293 334894113 203281046 822903886 726204170 778957125 739746553 11211112 685511312 490388213 723290966 800719901 612401560 697091746 473947711 397586890 168842134 254969 966745739 378585413 42440892 768238319 155837098 266796956 310061982 327501555 642174947 285512264 727371596 578071756 278675031 885648463 832164427 946313054 853510008 866258863 932342885 513643592 961534155 331978193 74264567 581983336 982631932 446649084 806075413 958656052 744423055 752624264 769986126 209784379 218164158 465663384 829422406 980776973 382704565 122085691 213095815 532869134 236440356 80429510 915768667 292995741 736257951 158522395 486254458 801276531 70611607 190284859 906153788 878931663 630827986 652571406 172883640 915526985 793333747 603780117 785706545 967742288 212559127 771866217 151280260 83455111 859827144 832968306 817285378 588146005 84754760 803093083 387794 588715305 191814663 293263600 470259242 462361370 314207227 862840942 168820117 362095841 150277736 488548248 916533100 597562181 17867957 290656531 6699147 382345606 296389012 475334426 939084803 219674278 442625751 662184303 319902667 509044883 61804537 348395195 617033644 182676769 658915680 311750007 308065681 854447522 733202289 334567585 16670560 863295316 315210524 431147572 552608367 719986358 441683737 851918227 405395354 828748596 17475795 644860542 811640865 50059120 6336507 53089047 653985250 880727153 125821842 936257642 330357369 97809545 910848866 963739708 361175448 751666956 265272341 34615586 818624202 765083908 395645414 876884565 197577256 600604907 835134991 970135527 674742194 749472998 491762666 17530785 425402745 309790337 120835198 85840600 357771230 136938139 462153716 638024782 780295338 2856140 575837001 557645641 174618925 726767522 23332278 840902554 808540311 128688198 779249819 547266498 902959917 244669709 731131739 300452279 719257173 584256947 641031140 665736677 802174669 214080662 386817272 365118191 370865395 660776485 966800399 27648822 972763425 88841225 629773787 284048711 11597097 741155778 897009845 192849357 126724387 760609260 116651165 884607991 352456977 525047733 584626647 567556095 380430404 804648215 220591726 74317573 763142574 168762371 159559135 246134070 735828485 196128849 548752587 120860101 13259357 885576776 565758138 626257555 571427887 723797348 515191234 974916685 993809745 799051174 793721954 751275235 540903559 989111513 932169672 331850385 301872193 468253322 236813537 701742258 371302118 29151064 514301487 814909120 982617020 361835057 162886391 301842809 318972531 202450937 21451254 743699250 538093316 810285817 447206464 554649579 374480820 813011798 379156038 567537538 300057888 693805419 397540368 612880091 980974929 867818287 950437981 484494079 620877724 405295054 835122290 399508388 232255207 145314109 784846257 786919166 761529776 271465332 214938292 613499681 458164299 451998800 823119582 69578343 523819140 398685976 122319952 324907442 187330097 528549743 568350332 206521797 160936452 594743911 154603004 547311744 590767851 961498683 857281328 731367353 368504966 257686198 264132135 121275694 636258259 833350156 97536450 437724405 700795214 260262232 739705554 729956411 650105742 675604656 53020069 948921648 243871158 569623538 912932051 557394191 658466606 287624449 778153506 779611061 32425425 898782160 777988426 319434363 840211636 756665890 207192208 423233898 97315868 307677390 437756519 539652892 180426140 352534999 790768485 705766334 997126590 136993402 427893891 4041551 85024058 570024549 922754620 528374843 432997912 290210614 62580382 413461961 12677016 13826296 94700459 626294997 89535573 327337636 624927419 657266572 445022750 328420883 602489124 231172670 852701331 151844444 447184998 102518830 809962012 686401843 289463144 781596755 609644440 782718566 723355991 793700454 171803064 588097241 733106295 947052074 308366845 166567432 130698534 572208466 52869492 351522685 491760539 275098569 748472217 305879896 180214944 882496704 542897739 93200139 211879627 17011876 579439893 105439295 175489672 467810971 402139035 692791686 333945789 1646207 825258419 661169314 86650157 812837731 947188398 259054422 315650073 541598399 548907111 144530354 108971307 601648531 397420492 301616444 54039666 491433886 409817792 964100812 342482044 601502850 52097817 372675798 380024312 586748975 496885772 275707329 966423080 22862555 863954760 305843610 429842963 775134359 224919095 777048596 979409917 627108157 462426351 638209914 723496930 972673785 890587205 840790340 554302780 276609511 688990830 426492860 66333500 574947901 799181808 637787898 267642094 633856250 169047676 351415850 399242396 490712448 155769618 443377280 721127989 876933126 593935780 54785025 261066918 238063074 491837238 431906981 484137887 912720675 749706219 35436696 501629116 21972472 922637932 287477881 680057489 216828549 493721306 239017769 739939851 82171135 666747050 371397229 561348197 55879506 142152823 335552084 493435790 450295454 64203312 283607506 647972036 730779301 413081974 729087086 486077537 294471196 480996299 784670742 937728008 56265157 255586753 603795665 155235432 111836659 559455025 200481690 191064621 438952738 638879341 521611946 255312705 954563125 692671888 744313771 985256761 228240550 721968730 687420372 743198772 95506927 597813261 621707274 872539096 320105471 181519233 526915584 592838830 460324819 662632619 664163556 646625557 327391061 137157047 660797707 87422253 277133261 564469748 785524359 925637104 720240536 501104939 663260417 806609154 899395886 105885557 936163826 263573138 783677932 56824914 767769400 730364247 699449181 166243090 306131070 18445733 849274162 312817514 479656297 339283433 549256784 961290497 287732780 842984704 184162463 401369308 195132981 358126172 822399572 891615464 908459972 6406577 23900766 495238982 889275657 144174124 832900446 566339465 37119022 675573627 986031026 154941199 670003587 818477064 626543479 40605541 91523103 214850108 854743077 274757254 662730905 458241476 768434991 851061430 952249928 478539734 318657612 682153411 601039242 186514222 592110053 484540476 655745510 966341936 53026876 383268692 345747800 239512972 252386747 663445511 874113506 309439609 728752243 793560922 148251564 293373615 926915668 264712802 632035555 769257031 513804355 653993629 197229911 241930402 942751800 176086132 406898278 464595892 372072339 209308967 573081302 651519499 264626562 761817586 677853889 383238061 912966280 304015260 675675218 512557152 433513582 149576369 870881507 67393533 612491052 208517404 63878910 727255936 663992548 150498725 455613079 225991949 516495944 869040513 127055489 416250678 456809998 957883004 79902604 194799473 837884512 873889604 657756938 52433092 537123897 293255844 640097252 836412592 494283948 830581994 645898266 56757983 188787766 782574936 403331579 24558576 369286249 754773691 708147093 57297064 142808022 211070296 830808980 104106041 485532508 930607823 153612111 92482753 590472139 817914125 414725546 187514867 619625454 840886486 398011739 481111168 257189941 181107916 99988547 555016538 236164567 730804101 381285175 763061511 526572165 558651065 425930187 280809199 206964812 843694157 992328500 891530508 62712612 7046332 225678524 602748476 50101236 83056586 285525971 295739255 494205376 809498001 821924046 834066018 714310217 171823486 750889534 300058837 101777906 152442121 497317660 943147579 759673859 67569350 298129137 824285474 956617852 459422118 607879931 326100303 893702657 949497217 51467890 219367823 783594473 272755519 711933836 249128544 573104430 394419895 799499111 720743597 486706256 568422841 382925754 910455218 767663865 368623378 812963601 813461253 240273115 491671268 241022792 348588974 42262857 328127163 881023338 685063754 244240663 319004320 264301096 310454920 417981133 562535346 831454232 295665235 355561518 979153689 322036892 518422251 524563286 721073534 362462522 641734604 890562078 474861122 428385091 233690004 700875865 829350694 4186809 754298501 556580154 353105321 968016427 329201176 493955316 535921682 922998576 524438624 677398968 625639098 453673462 822769344 583749799 73175563 143048943 146757232 855229766 312536686 292127707 199627644 49374077 820815539 597567090 810318119 793831008 335448096 662658497 388879992 168376769 5490144 86936117 915479037 561688593 829384743 830785583 152626834 405421336 276445519 322292697 154594433 147144764 157598178 867491689 498810099 547273431 76359313 932524171 70032833 993536863 859415389 187291637 556164396 691055044 101438210 220291087 288435784 271885453 653016896 593713582 23802400 516207391 985049988 864469656 26038002 463276096 407218296 783226385 30438715 350610944 746285381 877028011 195529084 838464886 959036144 609628643 404846533 339306780 56716529 923496940 897749556 677451351 995090347 581260761 179230883 287647562 281302264 803062389 343829311 311466402 684216636 729949631 292081223 58376984 140736017 588445900 187322596 700980928 789655083 643255261 115391372 950591542 235726177 85019701 556012995 715519339 91016021 298698330 660684676 771779679 533421886 513913805 182731243 486634469 316180487 992969074 872677737 177643483 894744959 508530210 21258907 627639980 713524958 151106029 979138580 382003409 130434783 353980442 253061750 960466651 993444303 43112429 739268307 728537187 367421505 94473970 687335930 729980347 510934847 109419258 795772216 669947446 378906212 132389839 487049948 172664807 640347677 466271743 177013299 325431424 414993520 762435072 112694236 105178612 287134943 533122213 275467083 573136725 411883708 451051632 386240411 231368464 83100558 546873685 351671131 485079513 363148191 758700957 156701341 551950887 863422109 771062023 677340924 95286509 314054667 315703481 275295748 106168791 912991564 864749465 998560822 439722766 242177735 257709827 500406819 339084613 816683102 369252563 184987813 852679649 413251482 672296203 785206436 139249172 62540972 59063389 808819979 508904516 487223302 900333556 683486423 945957399 106779701 782090216 973915627 839874786 466017538 384071504 661727176 997662251 427391521 216758396 760894385 768639994 1599446 753604219 329981492 92270067 924441273 287137750 133218100 152693999 669691986 363803443 923066658 233152785 386760581 726088099 486898489 457208354 220559201 437946428 318677657 256047922 187187101 211698438 131931236 336060185 221936025 743957848 751993105 61493878 396006252 238324151 86488311 204110277 220172893 450840144 30665260 806507883 164558174 484902345 216094933 792145048 201116314 881633641 303828693 184396420 821770070 535447608 9841619 135988660 414522416 613082092 218178641 261582702 799763258 294717938 731917627 198212575 892342778 829689740 947363980 376569623 920635860 156497176 556892890 865386212 6596319 31384488 93859511 289329660 80696515 741004811 220689840 160789900 312652668 227381445 463916674 68659152 568572765 593572816 194525542 671313210 884259512 69510991 501265746 253121058 892956026 89272950 683007865 150059456 540143025 869705492 706851218 630477877 816034101 60609279 395501128 422939056 209266961 735707240 980372858 720061565 873573962 581800685 114682526 931750340 138220375 28409187 489945233 403111106 586178859 548710282 385010194 390523132 58998643 478923707 978204757 711660530 242984352 349952207 608027288 107619471 593420898 240894888 672884531 98815919 602988693 783187215 809392755 669750397 43738620 553137700 673694415 921994042 425718973 685593637 608868330 573311965 660946057 132643210 550850105 287916239 890258561 668434045 127024569 620521545 948971874 10155483 61885466 27070821 728127570 83872211 627454261 891169580 515685312 51923051 761217484 584412602 465231793 792115700 953962307 303385041 893766825 596350438 117205361 501944365 162340810 887266234 940927124 889087867 618552568 30148605 634907548 119040606 612648172 456346596 712672554 673654302 486632946 384488637 904188434 960987871 810340606 847306907 885574984 344310781 464557430 98689001 230972275 560802571 866055483 872734480 798452019 57150477 702988670 973738170 408572820 454903795 389216805 606672109 986768914 301341681 785606143 603709546 942554254 355740692 788952829 618599347 835022100 465120307 630106507 388662955 427436244 417127957 44257682 295792485 136607382 194573046 84001758 382900690 465525217 527989760 801565067 448796990 894170798 51617774 338929091 131053471 498778581 183978664 475296916 217798388 800941046 552695374 517741029 751238734 707308970 609606177 843440804 810926667 414532386 615461335 662491340 741070884 820944022 223276921 342489723 374111 815403393 948452854 554316690 432948308 152370480 835428730 603922360 527191841 239608977 904574345 751643233 649997962 453073363 27946442 388089784 378060693 272153465 164532824 852033121 385509445 599941368 482522559 304254512 453494681 351524564 5413715 862088465 765524523 935063417 987082241 816691357 83343887 634456395 300899246 346238615 205125055 880979124 978935827 838341787 205917424 478330956 692760210 623690081 78706497 430020429 629648963 140877016 982063429 350217923 358817976 844535268 702233075 722141793 65932098 40430756 931041762 231671093 769404837 797022297 144081649 144250508 803046883 777849219 795219753 365227146 817275476 371742016 828208836 98036872 847907722 841108175 811347710 753861595 260381743 922963787 142094319 123992545 62627845 459396483 668852964 130809204 655011944 828357173 182584420 963359273 476730108 686857253 15172596 769010923 863200459 849163249 387677445 617626366 588222151 588157564 40650677 295350324 154905187 600302916 872588256 525546378 508590100 815100665 653595312 855313187 245821068 936333553 680464778 384183161 803816371 334928843 469674098 312841786 87548148 80285953 858954788 272938483 183114770 454156534 12163433 467498695 459972050 718043071 302826904 743516817 975836813 224999102 969981983 751039771 558103789 695633028 559369345 194685724 745257116 838493100 930885644 448756448 720600222 500939909 399452303 276249005 752416975 728299843 742208977 220637675 288445940 417828592 354433994 397536074 173442825 820955074 740021354 812385524 21905188 647976483 682628683 295680079 968160549 128562017 329369908 846196281 888094640 95884127 552594480 49474247 965772444 695663069 166569253 875933795 599300058 291762702 899938750 635541023 543537179 449541072 567894756 863696606 446579001 504604588 474377103 406842366 654667053 568541146 796675281 677586484 100079498 979012106 492231548 304581975 714929333 535312852 590123724 409467932 873418072 316514954 7556440 13209856 387005104 694403248 25066436 653568492 416420422 226345479 151243438 319221542 136377548 127882326 845969967 891974404 400067129 277126753 33504242 464134336 742214669 492922160 43203778 722296507 483748150 890293038 38247058 175620758 366128183 302872584 59200618 922461725 18778439 809700335 830712733 994563094 901896102 240303557 208934652 223015402 490600851 252122101 247681201 138612343 975013641 878569516 730186345 137194855 28194860 392282918 133883181 323370301 402412249 558534555 32143537 583978487 939273096 643676975 482646552 104937769 734182824 670433527 373563251 156085203 509305633 776874047 548162829 442353475 757131975 101333388 476678532 217238686 473475914 348304498 922296560 983524925 329042852 830754898 50097226 60787158 23441471 864626326 593138638 18239664 617442104 363527262 995944369 134531934 649758728 473326837 498704762 456568074 906598376 483908531 151210673 145007699 860297597 877858079 723494401 416640983 858938950 499746103 224787618 160478662 880621151 116105017 167837062 971047141 688547857 63676275 768170156 740879912 779247698 541109893 843833040 948016303 343599805 100101243 697476009 797520385 35348697 9624972 874982235 393197023 198024949 280239830 406338841 327796712 296475040 326878989 118709719 900439273 685698941 499953422 158141699 952171901 277993355 875565693 452095936 777476402 438844714 272732335 875502366 726001504 739031124 299686861 663344754 351068750 178785310 556079242 792452882 401258049 410366683 753860107 96126575 375346733 505248947 880349629 46432184 316775523 176278885 682099938 666469113 17597726 866839889 370277010 353143897 362043883 247789151 162535708 974680640 931902703 873982986 563104116 547403825 487546457 304447396 565739569 631084124 629766714 184837058 480843981 644880443 742800256 694868879 267614767 55707296 183897763 302944664 534748994 739160244 207279231 989277982 947330315 174188600 245081931 566152932 588588045 501018213 272151269 60251550 636058992 827121934 460323561 492045224 127572211 247190897 697704833 420497200 413881744 63560242 162839862 42711600 130757288 455316181 986106751 936295078 868925687 8478759 354146473 313570754 159022024 37207519 747524547 370322404 265407234 1021302 320406334 114983278 337771694 883701054 93848431 151228505 171897810 497490124 833667948 566355014 20403441 535991932 415045631 385655770 113105469 487115279 485635917 388135362 527923296 508372765 670136077 930638662 578229182 273539155 136082798 653499078 714457775 611029703 748795613 624567038 316865604 258148741 720724850 410370872 566627532 239123502 90430398 186220491 712962652 112374493 820858895 331888418 655573781 419436386 684131794 843394233 677905158 146519455 676491212 984268481 346245092 266234956 866549526 335921967 9932608 684088415 499360277 505879506 855090998 806288786 936473867 366809073 539235036 696708097 703077438 115065096 647443902 949611324 419532125 372525666 426622112 795541424 549186764 614802156 683353976 287805422 552542729 997833701 212382574 348344708 999038816 399650199 409689592 243885332 641102420 931527746 204047100 474467623 458898524 403677180 790415841 330501295 937012038 297529343 531152962 953890138 893238893 902986941 272720628 134714142 853450482 67173523 264276321 502852652 428009737 166626389 314077170 304556707 249230307 938498166 191593527 681447090 997815663 856719362 551067078 28592182 817066054 791063678 716870754 300135816 800101652 148638399 781088177 327385232 232678519 810518971 189449915 725181735 916896905 148520189 283779187 957545850 85818204 117079697 303094663 355210490 536173361 67425610 683148235 94999310 445330668 871402193 374192214 935491113 181440927 607145136 311499863 916657215 200191348 566109563 650175401 357416971 120847203 706542010 447196186 995005935 348142548 1952021 541716426 235767629 407981860 70143647 794822343 55430245 82747246 874135772 197267959 26121888 302243464 802711810 934768988 87613382 521274345 926434618 755051313 677159659 552896822 117368098 909207574 190526741 247686892 880754303 823204117 394044028 627915596 264305144 478442216 65025964 508062651 610589756 307939279 478792449 424127624 242213245 247759287 112169053 423113706 999480448 693376101 907491203 455592364 270047815 521735024 184393821 937581661 916772419 712575706 671592440 563169214 841989256 63531910 454723237 681003576 223533476 808733600 970499029 216278088 575276988 928327836 992013078 910394640 863656484 988639721 596971533 465987862 921192871 805094821 420001185 75955089 794150614 416076877 593335232 438563286 876968031 894443257 31600193 571624468 212889417 343426170 269133711 211257481 717259920 699422612 939111830 954001750 714718333 383058705 887770680 808404900 937270224 594123145 209107532 297146086 627391066 352672261 995712278 739655497 61611771 502977216 107894729 731705598 308703176 943512310 291091688 734816062 399324386 729128698 539728824 221980035 253084401 343675954 965253521 336919404 771485895 290311656 443124300 249185997 982399609 518753307 369003724 416325288 479169916 225081608 349529695 818637498 490579724 263068844 442942957 580575596 66107703 794664038 316701693 895364194 674188704 832145143 221494300 510392391 647654800 394627122 857776767 785216986 326169754 299664603 356772451 896336690 31237369 361877809 611213524 873731675 116433249 562234807 477865496 653608669 391939541 6212994 53332862 286941954 557732112 739759875 512368613 926974997 920400969 804960490 664160367 798990923 354716500 596456133 461953780 224136218 783763892 584048111 598074830 165226212 404677471 728129407 31470176 17110151 430672603 868732119 638499533 258785982 661802625 570831204 774869745 216161685 112203183 596917167 328454907 405886479 367645070 577144724 935666419 755826872 203936230 974611073 871817686 160399679 220605489 675985708 286181863 921174199 114444997 587257829 763178839 484511803 15535406 951891078 102913442 392720856 444324693 239264651 507301668 326522721 523457335 415421033 171594755 764248406 674303700 611628509 748379253 381259104 420567254 161128996 899692917 582222735 666524729 891806262 588414832 560558842 747877777 348099241 249000773 206458851 54403325 577952393 743547463 43803314 349428848 581746226 175230049 326782365 67341870 914130034 766108355 367417276 110577883 206639809 317327623 463479333 61028103 983871528 266087958 598380153 822277065 672256078 14148860 294962702 158822163 341018121 371185981 588976363 93877795 840073726 975941569 946878559 506617883 472204267 472444028 572414905 297820385 978800405 4780165 805833142 746995668 496924317 435886488 464816276 572229497 412773831 665580902 584696630 435461288 762668163 584418808 248282650 556816057 193759293 532606661 27269736 106812817 18158595 72563584 985569563 956884929 29719390 233410207 912454534 98330772 973756616 152436653 240603075 521314459 144430617 961279643 515970216 226318705 155112068 651061229 614498864 168191053 867018971 34959411 396764086 611039026 487129871 940586655 960031669 350407096 654562609 901554591 789524839 31303727 457034317 947494474 791185260 291172812 452614855 331336712 853182332 141304673 629791841 455316708 544577185 524881644 650824291 396322262 945824425 625909456 339569422 70301877 243442582 827955665 395635159 689293655 573714896 970474167 427480713 448998671 302265995 29863024 948938192 56570657 708214348 406991142 553081052 625202435 437107735 995429182 800852468 361441478 1591406 168446764 453859045 765147900 686855199 794186484 505930849 802426277 636878152 705113369 892952408 792025307 771082376 413372276 15071284 33824936 513546759 232083682 764515810 667944435 419773079 177337660 223506536 425577896 536123316 296980483 459745678 269629339 779298599 399277287 489335304 466760985 718906203 603885658 105068490 59976455 999126683 20373651 935206723 960847414 154588329 50143671 516899145 979686010 474981340 62521569 600262503 112432136 711915565 753293875 562772330 93096120 860432825 361615827 323346412 816745483 110199142 481801 664249773 493219060 981284812 939172235 91370679 226830464 523846171 533808854 825794710 627070509 974594983 3799773 775328213 911616003 70349960 615140406 943327253 841135484 755133257 349493972 683519454 373689621 68475285 493415938 480859009 173312082 233650932 733688332 217381823 700154881 9555053 285584081 54961540 428355276 27127249 556719279 921026199 481960798 299929314 194461747 242814628 908244362 876387938 654890005 926506237 810005333 945625693 228551959 625990649 90398100 284705122 156422080 466846743 276134933 776526023 936501368 867433589 678197312 47516080 931969993 916000302 941463376 861928039 164318132 147051719 869284376 494059950 856782980 176965531 237649307 793911768 486125276 268940504 305830851 69068708 515051589 710278899 527251139 184815802 620931934 208962599 209698973 908536600 502103682 585920321 645929320 706466266 822460378 86567761 188857077 20486171 932529761 797912556 117399227 167475216 497963958 289099268 770723853 933451529 840245048 547543236 604578370 7233074 354879208 831288103 632140475 589703805 680009874 720582527 952044207 711433439 2082203 584632559 178638281 857945991 279850064 833169510 464403529 635700942 538027998 785095913 313296757 636038871 312273570 647702840 396112809 522562597 176491457 126321131 186622936 467043543 423333392 473459923 415961998 748387462 800125633 421425438 125947303 452775721 461821726 566755656 553083665 610366052 588012474 536515785 703270894 557424792 770317219 498732425 390519342 302188235 923016343 509784210 534040494 781702552 594541011 362955886 972498568 316272666 548031684 81448327 795945332 688693277 53712679 864024234 991617448 327688306 554141342 655491503 966067711 133715116 97546886 110137835 151610285 44125762 559279338 972912289 705514608 11343152 192250975 182797899 30747838 10500634 452913926 322654080 952158277 708557264 357562434 630999972 371247053 109672500 608213928 681375155 301460666 385880638 655660477 433377954 21398885 154919843 50311528 340789904 583696163 909159102 380373182 341660011 463022623 403021574 551623394 950033839 484064279 656394063 646623004 736807366 806839105 807803483 137289798 419056543 871693066 484103082 690756261 590525603 193409658 521196129 835822431 746145480 732220291 272674623 60544264 696795197 994629051 397387657 330946699 665549653 867973792 715839628 338177851 640073935 460201461 789857173 832261453 4723780 873875137 430396525 204200658 854293073 866452575 565645501 573713175 781484356 304476851 83623274 43205640 490151076 631802875 826891381 190212992 159746422 644250696 196983439 664263461 872065209 373949873 843956393 106831659 253196294 388921512 995392824 334242016 761879853 459617548 705496883 670525429 549933022 408675369 431595823 890927301 151388721 808129393 95878428 862481912 156922434 464207141 970372809 8931276 493640239 213885208 581095401 593237005 167343270 688717255 655885415 737306021 966740847 711282306 405560077 865590133 316712808 436052137 50015551 676299289 528405728 300917806 969167308 758154301 227881474 924968164 106522377 254168080 825386984 987347839 449464724 383535007 516628344 658954922 271825751 820095769 832251802 863926705 769687845 546439883 17194696 753425907 286722887 829292191 384792602 745634587 859570852 824018285 149933972 447025006 570362692 286581861 437776999 52055931 909021944 873035159 218001357 708388798 942919184 954291430 688571725 941185086 242620635 235144588 343766031 997865155 660134168 498655486 989022295 700108656 55119975 771148463 605154127 876640701 702554841 305430171 506652211 646978174 493796745 633736916 282120555 400297408 282789999 612301297 175679499 275335 756637104 722924174 678352321 698361241 395814024 753860690 874914169 307179096 416864332 440542856 468301777 74219422 377425623 752929544 750180307 581719771 956045139 831250356 217707542 283481137 325684550 386888947 326599785 621979332 12073006 103614155 286112414 573432969 560046572 749321742 894967209 93101633 518434085 864233318 279376051 129698293 439336561 356840182 242917977 22861198 939928689 533535043 898030447 548531583 764752009 571920240 321594222 517044944 262973826 139128351 270313307 648318032 190890208 893767563 499449202 330720819 183327874 660038031 969658697 715673051 964021743 891404241 460989193 804819584 60538863 358814265 871752690 665856180 264197547 908138505 143153312 371657935 204383195 352632896 287602842 73523886 805249810 72534282 761462847 31031982 659594960 251344499 716151112 851753998 316061665 88008028 839126841 211087870 461275763 211458448 359946525 303847932 295208579 717297143 89843119 21973253 721163266 419755919 366878710 851928885 446411773 516760373 780191913 116968086 284050988 835160944 739355349 267261246 13233097 285660104 339296465 571697628 143708879 956028707 993372029 965503480 674858192 477361319 768208627 487355839 73311620 429781836 609897118 192276859 475583742 757286196 753815472 266782347 356480097 976212405 730950413 345117512 225117667 331947997 684365070 728926987 470673678 679689772 173660760 443272802 791555448 989285173 985427734 964264183 861521277 845339810 127080755 935953078 714765383 95000817 277849337 648438028 700478720 491158940 713281803 214835814 856268274 861201981 776359512 609664131 859943927 180213685 990403552 430104199 158275217 666775325 792986244 523972457 588518494 106576184 466165089 310516466 962036582 742091700 688519843 255923652 321777343 843563612 312213991 237283618 271247250 836630314 82966914 585472717 184988564 252822806 13183202 315567515 112386308 574760310 634041263 801113232 602954169 893973075 279456529 444904045 800975446 969086965 662164071 238676827 283404352 890940521 651079544 110976331 309330847 248491098 437627337 187515240 57301968 741859857 794360694 693319856 58908121 562083761 837439408 941682914 91109628 633663758 589827296 613192489 949576202 186936685 626906800 730305475 297965508 338112489 774441144 631574852 706478172 816500367 795276952 455389298 601997567 806862381 483472743 395001060 687635055 298309896 725143191 709009264 573520432 700024399 969065638 328716481 668203854 184716305 242923007 755239208 321713240 179257929 2607868 157296308 552740978 238213665 692739489 668168687 579343339 599564906 494417287 515364904 109136203 735319044 223201821 597567598 550969092 257007626 471106549 528825590 820061984 813151148 34377043 455731522 37725626 854137536 368757782 7814390 783980964 18144908 232772180 677565008 940657440 274310607 774622620 414608206 758569357 321269076 96717314 275996974 738059545 362663290 645019524 738086868 84422849 406575185 149540117 201846163 680282679 196516401 26130781 46153204 292364908 228002758 724524100 803176913 898572591 12477083 85303041 45799014 448990005 668245052 412681936 980081437 871119508 281790634 615575341 806996159 359859654 55669341 41031577 307044081 624974765 775699143 770851005 386790251 206274206 134362226 379225429 894356818 378613665 429863030 915726154 821744756 835962812 841766990 410640623 353700128 67435822 441314091 732856944 279431780 605969153 570508770 928551054 651351339 794801249 65654515 383686286 327865198 844450017 208921056 913904210 178329429 430740744 553357785 413871177 480148938 568511170 730803494 500052095 956612936 3275536 582495073 935349906 308604107 306849270 546679475 531302898 878037088 438736333 406163214 48466821 32804012 4987961 839860566 330659340 293664200 298899450 310697854 10250831 45217782 122594966 312066819 680560953 637271445 885437834 746500564 552572378 707753997 361312745 231994177 978368745 182784687 642010057 682379910 383842720 685473058 388459730 367284510 562780538 512823406 822034734 917702091 113301602 861242093 759291304 407684665 605537013 180776748 461102512 912909817 528009751 262742167 986733797 715858049 724074291 159644464 2717939 795858516 701737602 729735079 104754483 541611827 496199859 275418478 268797038 620392696 973044302 842447130 197810007 518389193 452293876 789472988 724967760 880481865 149830894 962130666 780552686 268611665 493785834 220240554 624434984 310320414 357159448 705151714 221441655 7451001 179697935 581083350 31259811 860592012 336457576 354455763 265725834 550664259 966274085 231265609 698957789 936598072 121513588 363707623 910364349 50132532 232890245 82820955 63633538 153587296 50811272 295675672 199460867 682777308 593975507 334687042 131779268 581780362 44783866 826358645 168051160 313306352 874717903 203146947 888604114 656362625 55453434 989769240 115547097 30084586 708465921 758622946 91885307 668775747 748674180 865857776 502548627 396924575 448984385 62146873 252157927 256062430 316712053 11119092 187344057 700714620 970929634 805447635 902046750 978246971 392265157 663572363 242669028 377807966 984793151 454411451 782971543 507047207 351194180 299510776 67676139 103897468 994381792 714416903 524922896 742218671 686018360 30019897 275813960 914272393 713913210 843104859 598200886 752599110 106224447 765815167 64672404 521172747 916386402 784478479 414953033 77947734 892741663 185598568 783858254 650754188 2583306 139525630 748808972 905089105 536052567 177635383 422017325 472122762 706186741 365719074 127068957 233333758 140819690 572306684 452664764 945772270 374064475 582412339 101764925 739577014 182130496 261150045 781278988 419747420 518494717 729175623 889902463 879640736 522683298 144247372 814833554 346161720 618174664 473443768 677523177 565763241 158670786 371535630 228435574 700905042 30993951 437370881 130089653 856020240 630278538 171676990 126728238 62305906 266491564 33548589 940048850 12038144 251330970 334446333 414267174 268753347 217413754 321458425 942326932 528234241 53775283 980941101 820711874 22623296 573374363 492530685 271192760 659462935 804494378 887381070 225211335 885800423 602730725 673002364 819462714 408569709 209226946 602070870 824104094 697789772 379436421 557582320 257631655 576442443 817760297 166845023 300644965 775439556 153293794 268056317 318629654 254352837 213934849 638491521 894457998 774001407 826801649 765732730 818511279 603934327 197558725 212087817 296764573 315998070 228998044 449169550 411410367 934588491 787425091 528783739 299226793 968075299 914940339 429804969 214871663 906989238 580439617 248970742 882893621 624582007 900156182 678999299 919876825 37382289 483465243 409420675 189602350 760703004 497887778 346284181 774639939 906538929 704398083 73966660 5409972 11148707 644687395 564731382 818176566 392037824 439771105 527373630 969774164 174739126 630149852 557140709 678259095 515474450 912241101 629057320 508996363 893960876 536172213 118885856 658192128 187469216 368003278 796615565 272362774 459467007 303127626 254645900 182013973 612014578 213605060 108304878 556445781 980599720 622452263 644193044 99467354 772371431 634995114 877257946 518519659 640087812 544921796 885043591 239623737 680164741 885309040 577036241 52189387 470782552 849143471 624099986 757962859 794221616 797338756 158800863 739440021 224528232 871407559 849398295 360126862 862752872 664880257 597902337 60183146 206303684 555183556 114718976 362128768 408603864 534715659 642358109 126519416 792700341 620047891 917164326 3954315 922975610 549152649 854480356 79540640 386566599 157795906 686088116 15098871 369322619 918939748 371308351 701664717 364905754 208941549 124307470 461553874 269694771 284638259 812818059 203960015 88288593 980658845 509191717 381259105 363689072 974064987 308334227 26644269 235186978 460604114 685908990 452577273 202722531 236241521 939069645 797032786 58942181 585284497 616714288 99898494 739576956 883271916 960919632 776298574 958856281 140677440 195914814 832847363 609104324 274667887 604388382 538142546 732785213 197422294 815448605 495245655 53748188 559241361 99767134 609422702 697238912 750390774 2388395 546542294 922608369 603315655 317299999 640941393 791351318 922231551 535182978 360867289 811233394 586197647 633631387 549016570 442280119 622802259 568937886 968991884 256746750 606257544 660918178 677439327 393101923 181186165 391099026 438239837 183803815 277058396 683843680 249467054 441364906 513414445 40218452 638197049 406683294 21082447 797610878 805983548 267482614 571270313 904538730 347779762 180488613 460990664 124702656 525122487 32652268 167535997 148897973 191710919 441190308 580795748 879897191 649709753 235663994 924486466 796978723 424417266 241905397 562255446 347423840 949323388 276045257 244594687 695294901 565778681 211280115 192141836 810829347 887801411 536912063 192374222 819969845 607939818 832028145 342340239 761246749 628659596 585692139 385446624 469553327 960428126 931335216 437308680 275405712 509052544 486292048 192734738 962140448 603368193 665024120 547568174 113831105 460563389 226517857 541290418 163311705 358563852 994313108 281967675 24125022 675206832 9973006 160577248 903040997 591862751 395282588 627504725 960470488 724337160 318613203 751082727 496844928 451509292 437527646 397210932 944741269 884004378 839189966 731880501 318318330 762464000 530895037 219439170 777079745 869133573 206374827 746503048 766118009 10032704 317909196 747883661 596004684 106348030 476480305 31589444 28906336 510898793 214913042 17911070 704532482 498813197 628409779 864842192 77827365 965399671 645556811 621316561 72272056 570032575 135050923 307076631 651496215 811284592 330487189 999525256 276682593 742737636 159293927 848329778 573639471 999105544 4252198 72314933 490258820 8286141 683701487 773879363 885820954 860307260 692148531 951611078 447311376 181416977 445335247 770578436 17761496 526958613 109469753 915330074 740399995 248338886 720738475 744481914 686018178 673419335 331506414 467072408 78860081 642785147 203221129 38933548 808766524 976699384 189716012 824152075 449353750 985611466 613192794 787883187 96149978 969152660 222457541 502836042 358464617 159891152 998214075 420860454 790380441 267633567 203515616 639248567 102254794 632022245 817367049 834278281 437807381 170090837 911621276 428999990 144331371 890669029 166382472 810452153 580558593 595030722 295380096 322137417 847195222 448419676 658550029 745259418 537786775 710735168 771468613 244175431 261880005 69320265 864083307 414685192 334638389 642140176 95843833 381752731 44529942 72894189 143720727 341848825 691958978 319017835 415494627 615267617 898911812 581007268 428479591 700309230 648819603 824985968 882733270 458234439 172653732 204437740 122684865 631758138 663196196 566347266 460184770 123187310 413207715 965404352 495845730 913045964 751248740 985956108 189926140 464059502 327522519 608415278 156834076 652981397 630895140 73075857 412776641 597561371 936406833 131070213 575157 442941327 787548404 403424474 214190640 8361991 479803430 276357688 19235232 827363660 733394612 183716931 890358833 485907460 847435502 918449837 837173317 876427102 162316656 455153312 972733349 572179326 940101762 114079525 92940211 583525717 970436914 110587068 975639702 886784143 608381925 395699413 37755035 972472696 125282196 810976242 611258197 586081530 881099028 437670897 552493440 725383374 340134263 100876381 418785788 756681045 498069903 881799843 665879366 597598293 426982526 131628939 411353613 827453012 762009186 708541128 753129710 261580159 230404842 227926666 350962445 344553674 270271201 914323632 126090201 805979406 206589842 106183112 613710358 219775044 899848260 351380204 999155477 383108898 414163250 704061149 495604813 568887486 774843825 719956205 639136265 973134367 486808591 290406082 35152613 867281143 468384243 746388093 543428555 797321198 638332937 590044457 948175043 832842223 982023222 737853278 146984099 356191659 530326682 201669722 881256356 160412737 290253292 234446944 699012521 404239456 330682065 79626876 43720812 179711573 573888313 180457616 841226924 152993784 427695454 645921534 87857236 573137949 266773127 392384754 827604719 715091679 220657388 502771176 497359579 244622332 796911300 704906870 503305519 378534416 603616090 600750698 737466081 344809852 236226508 661404317 929921391 882947769 617831754 404208124 206352312 105717392 169151533 940948314 62483065 481553499 196813613 980932396 752177304 245712982 962537744 658113065 281392358 479835294 35485406 373074211 730881449 527529768 627495531 120047994 987913794 376499394 517497724 162771926 774028926 32725044 54510613 524003172 540735149 815647203 619137324 898588891 362055724 218003484 78322308 855476533 387672780 972575870 259016115 728214215 690960018 880413419 455012561 532769927 227463332 833846159 699992121 505187251 71357526 671054530 108844403 458000255 420086279 916940641 717306241 195977401 38113832 193701512 272871615 121549861 753885655 591849524 806863293 239068182 980210970 499972235 960033070 637920460 210475779 328706803 52933793 799274809 480165957 629331315 689007086 565887666 101547058 623424805 661573288 412305087 333756441 682129842 265966109 29879493 943721916 738185534 672261099 325146222 119304283 907142165 378797156 154476268 225764598 996354706 525718071 849500230 805945344 999090965 379895678 634869952 930937212 985789617 107870433 581449421 938153409 781458738 636964942 509764921 254898245 365694597 664793340 406738652 812101923 385211033 733871899 886006409 78107347 405114280 623526092 707583801 750487806 803824440 827350087 628481522 12490631 395182098 734763176 384843198 39497143 631451009 434700104 42500373 977505801 280540450 60233007 370347657 166910961 307498471 256968861 94199056 797579603 655272884 495619940 598144545 504943422 922880611 149461242 782400836 139093248 502673153 629335923 65683111 820708056 662612488 946833348 347792743 555507657 175159848 895767150 233385892 369950417 234149349 580053435 103647305 320942040 214373360 228906920 485774216 820353313 368202840 470278767 22332404 343685989 663549714 764241493 338831801 218734514 373327151 452836907 178414831 700125249 123636579 145254987 712332848 490160571 491930442 3142444 287584767 633454020 953694642 629194120 368859552 449565851 88851597 441897485 972891351 894559556 931838441 821670236 969918309 980165428 460565149 827983811 129613854 892406880 162224238 547264618 155555037 201521972 803737263 353616002 766491205 671714062 919914417 777884220 225070233 274551463 343960375 880323555 71658299 589365480 801492181 868425829 21156751 574741297 728812881 319250996 19753597 496042693 253856930 747427258 976737907 306872521 399549917 319490675 724228626 533611009 877496380 51866109 358249689 280652992 603360194 761980988 723111351 259245542 278931573 474093115 193049035 380583334 518382219 986080322 81872832 780615296 274485278 887329952 347185552 104965724 261196976 513454926 642266212 794982959 499884847 845366646 787108208 165094412 333240555 515400499 617829509 478084438 8168689 909111891 95163946 953184788 436679957 709467777 938832576 583695923 514244061 563252029 659394297 535775272 564135423 511725356 726907762 450635122 208070306 835678852 597466921 826846953 43052969 948650862 154272426 93772151 916394586 204591726 680162632 220845383 328991337 944872213 133072075 370545088 339253476 475929237 118447057 396574463 719517480 647239438 362996169 262323308 451023081 373754646 546157828 959293013 176930908 941818060 664527890 234355073 820152452 642649064 468293698 409657919 781349641 393349155 906389068 914527657 365585522 188232446 384284231 88015204 570003106 22527284 602719108 945962217 20101892 192546597 460576323 652341172 316949365 560155162 950367465 285991435 894861875 125840656 376565290 992693057 336764813 562962576 391587506 283868587 169709001 82924261 695468257 489071715 571650974 117570932 143141415 493099658 514832123 619180974 312417663 308352775 733355957 316043166 56755144 169951457 373852007 755928047 634777951 753346544 836213063 794840930 758018533 794320230 569260349 578582292 837065695 275343702 149589340 642704901 963260969 250732973 743303460 602769856 948634420 99056845 975689262 915037851 127425964 187238122 363005703 566643976 907771386 74679904 535702146 116574610 261569688 104344724 548271721 221584783 313417047 212212970 207479264 504462321 126235536 449210817 490768003 786932318 403029915 57355956 246423979 569504673 924959608 976273612 257729341 854165555 571362013 184030127 527767062 114892600 747802231 276572601 537928455 686685403 922891795 190650066 625910179 2182624 358303498 746088791 765040434 215080965 565571750 531339002 894635687 657400392 313998467 199466470 755556941 782570361 520244565 109562485 268864067 872315573 227072966 554472616 92564383 6140128 925859879 976239945 486862533 436145869 178098888 677171062 389373500 716183255 248873209 822669454 316404352 657755371 969177025 860262135 10207608 921839287 884941196 413752147 100920062 115429010 988028633 746481633 859249785 676950422 889596745 355947961 742353741 831999224 370193960 220208839 757695344 350968090 508154499 513931677 168626134 783196014 737563837 276827176 133659295 315129495 649248756 861228794 494024956 560651097 69683634 385761431 95109302 26302262 724445960 620851973 767008628 213749185 325194489 648661089 744176302 600588827 991633375 973332478 836490154 774952241 281076126 146600910 312705872 383878721 392137827 442072447 217463810 525680551 513239999 236917892 876969817 340239871 360421910 662800748 142398074 745521095 670419464 184843106 767927968 113411653 57684083 186016501 786680870 895422084 214165904 23114003 34958453 365604707 269420725 51245501 420311300 322372899 322854165 59810957 986545315 825796639 580331613 986813193 431695638 406221035 247101887 240100504 77904788 241530454 753679432 768611976 778086492 372673227 616331569 295951555 988141493 446582649 52774852 119324506 248476258 89606036 978951519 940302119 242273897 563566049 78051567 5395782 871459027 65568361 338569101 887357564 223173860 346770428 337378918 252445693 31396806 397233960 541717866 531297931 850226809 819382864 300467615 790458942 262783209 877147483 115795813 272480810 357951702 331562562 26073420 359434648 790959529 10816042 713984967 803780561 590407167 208393897 633725990 851971993 747261829 172002026 395025265 950750864 404989546 991796329 819766763 494030494 298653413 509912635 841047676 411970548 425800238 652262230 22654738 938556886 969100612 800845450 826571037 288311954 633909948 696998991 538791310 16514766 907391181 624352229 818026551 931582806 974482380 630264157 380518170 613754772 763409666 163162197 701333641 304664674 733180291 565072932 535486419 331016934 632781491 987369705 697386981 518537414 274246127 908879628 725170905 232388855 54702788 428266543 660227217 861638390 96291459 412289657 310060146 493439261 733684778 403195130 476399799 441206542 102578876 28936378 582939455 910143245 253962607 415125976 819358640 41596630 535189483 577469091 666048388 481479511 591163203 495446470 663017568 702104737 852930029 899292327 558018952 822953945 977760064 850940104 67204193 962120760 726419256 257336123 686021105 980733035 774473090 965598240 945395732 529961609 144943331 54641858 967876589 577796703 745504158 595024897 653229718 325767740 375192708 79858533 729213343 303700715 951340655 968038113 212464848 759212885 422328719 627420921 408466954 767653915 276512634 124846632 238427889 588360875 844975831 681140961 202747070 982537376 838001582 590329848 749635390 951020524 88669556 992627094 485325790 199988050 210954747 142766358 805477023 874648818 881740773 385565260 469852931 834515641 122449369 277166619 893688345 936142878 321187519 870019774 284236188 969827664 628809671 291525266 998943531 748795762 658099312 206731527 770404296 869759041 713181339 555897137 816754786 976157945 252451429 731167365 818737839 327658562 204551896 379842180 92265724 80883473 32577435 607953808 164372813 135169301 895930945 380067425 872015634 332577120 169359746 813716446 561592878 520930639 577256024 316656763 205179343 477061652 492374703 667626185 750902271 549850644 780527903 225599619 556470084 173743371 24769356 148733036 805307798 803172058 536429688 51857711 645529791 997278205 119025169 713635605 551893574 688778209 965966390 706953553 661723906 469034136 809952364 508483050 684280562 806057636 734726684 570032909 542960363 805366387 131893477 177830073 573850871 383803237 403560545 583108680 204254906 925974819 352849719 649500617 546854094 815611214 265205653 492372823 979497145 152209068 185227516 472418617 961097704 729515804 659492053 522261237 563872902 391629525 671202335 435006733 474823565 836433398 868799903 57054227 207026233 147425318 835405850 864788968 589840497 666073338 340096384 446354776 352275317 142030874 919599241 328857966 646270032 211396587 225707396 597902643 841245343 464163533 411840946 123380503 135458255 707400101 804535934 762156136 884728570 484262825 239523666 542435472 779219482 34959326 725941228 762702540 311904020 144392056 996889064 503013231 863102605 216088551 927836433 420991690 276249041 776258561 854790726 366035450 392982516 254194927 853894131 91699599 735374522 570955440 348628278 823850888 59278001 982163065 171915104 512447408 225882856 125334950 727904871 1785239 549490513 523085957 362120156 490605148 804794809 171130149 378304421 366199463 286071034 95699560 892174686 307160386 783810783 793214074 990759063 208347332 954960089 858010637 182179363 6808708 916259311 997116474 915872613 734783999 298836796 226401246 906079753 573945673 964835498 648415293 531431681 806552232 597610306 837348362 780238647 489972254 806745760 559036716 808736246 75464480 549275867 671730046 864750639 22742894 192251065 155415371 933982962 353830946 719840084 419492097 245244194 37989317 865207169 988549943 874285393 262967693 311957549 638207915 829518658 131201119 249396956 186465519 306904744 272137518 238254991 900712556 569047660 30112970 287070977 497205704 616977137 408093215 133647738 155438387 967253267 917054398 848767699 884356951 701092785 503901227 403328778 684199167 869031187 562123870 73888815 852202969 267650035 402232525 75467674 612790154 856380045 595585627 202234412 370640455 809579401 516701418 372640659 311016123 907118132 860451761 319262112 313228960 512072634 395180704 668181343 61427383 189664126 84098735 485315425 512465078 696829759 895588299 287616029 604530306 43655556 912070791 50793686 265663740 418053698 759478270 543794458 516297196 328287992 904911131 256702346 94231587 229171555 343945441 682573353 409329321 657080607 734274703 446687495 235879183 675543897 345039419 813314585 915103894 177384856 533470558 689133326 966646648 109766300 56914241 798402626 293952869 755113719 380558282 721277815 670223055 322097660 562347615 647401397 564902026 567334684 994410632 853096245 528818954 941598468 442967581 957532991 96145055 762798561 262807595 208753420 242516384 363799460 705409055 236563903 942878546 20116299 871491465 908996984 104927054 952958979 97426083 437526520 937284031 450712279 553111876 805597073 967255436 382222151 998813920 32846253 451720012 204837938 798742532 930093537 413227809 111453628 986876348 514228849 624010025 210063750 234104306 685831454 167178110 934508380 581617198 15263554 355325246 970688133 804183445 247110341 421129734 871360634 217931599 847520383 964088963 250131244 479558256 359108705 326831893 478152410 255040303 746953437 136712514 266412690 985338998 616775639 628215443 383073369 587142592 20275140 328539847 872122974 130833813 679110422 258921668 85048023 534311559 542539936 984827941 891770417 652448817 22823881 892814462 697041023 348008961 351483 562975750 16642273 295006664 729511076 286494211 672123022 854954521 991882678 403452726 386560455 916685045 87916418 693385999 880190818 357770922 879967624 901425482 272097795 726149042 637775811 226482096 882942129 188169986 86061748 55462968 362597942 589965055 102074139 760669446 18959883 641458069 232443926 343043074 552753879 196190061 950536267 606964940 486118287 120575950 273529971 315275102 108444748 947247660 568581846 687651696 974649726 106209432 67420036 810273040 7156228 418573332 819119990 801730514 398238724 825872290 482051914 526846787 938500108 732005798 944821395 689449034 896762431 11323446 725003036 164955255 707265135 434021524 404020921 811727726 645349149 892404333 232731101 266238519 795334547 830443580 119101214 82364362 184136059 479553711 129993983 863027368 376343309 124231021 893029122 83087831 872960259 794298034 97928445 899265739 18936341 892357632 330421263 693329508 886339992 902294369 456453630 646474396 356394062 832158604 742984812 896025242 238891896 595632117 860985461 346152789 839985710 767776739 138157757 726475086 568849941 661707390 292595425 20364300 668028977 744835900 533181114 130195916 968801138 471538457 103781208 684879913 477643768 298130395 392085410 640585944 26568767 926017514 14407572 182098826 930909961 973805252 998005630 731711366 354501313 919371371 624195204 789268648 606976633 683788812 982248691 451292092 271295540 365395725 618774864 666869635 775183919 705220317 59433631 902115051 174613772 969044420 381574988 71487271 969228005 357911703 61408407 918709862 639726376 776887702 7869239 840011719 673709585 216214089 542085184 663404680 964017266 907094223 161035745 758055839 529888786 659698987 603788748 809262102 280866121 681508078 192762324 621237075 657909037 364395801 262628186 620739118 274409445 550855829 70678924 178679865 446429007 657838165 809995042 473382283 496538827 637632784 217318870 724704302 916880970 781433875 667210048 268410314 453083178 768431326 782432139 885097896 733776256 810992585 662799332 903902758 875234368 708223626 865887721 13849680 365737008 186889791 639420333 24556546 825225634 997197818 494953963 363678782 273989467 740205156 567576278 81687132 43989253 579521425 357177876 997836827 158259830 988260666 212648694 514455945 362455500 522501427 215440941 544834965 999582896 258926584 847974479 561078185 904844049 362387172 869850389 901899331 940201463 254084277 116665917 758683241 230067293 377184303 548331478 122731128 501975138 27713085 960987403 128098808 996128207 860610128 812141694 534817353 620587284 332526310 598524184 399508027 150213983 122818062 763255456 222149771 832227846 874226484 68419400 157194460 539998726 978642527 125518168 866498060 280111941 24968564 394585450 302191009 856262393 485415120 647992233 105042561 148610108 322544343 953886570 927902734 411903330 980971535 938034996 117159559 35298625 603248175 84624352 15892488 976982065 858746335 50481252 350794981 255791986 854414638 968493942 627751031 953861368 70648330 541529372 738981895 958708318 510559416 423752367 210100995 185672269 639671737 993935097 515839112 324160764 165476598 958629214 905660966 107340184 738301485 285448712 719792718 523007824 979828013 274327156 919257478 364474972 990993549 482565377 474549689 46939498 573122802 526892295 261811025 775169876 770200933 934902315 911172757 901321167 137386377 633641955 892772786 629748495 149850806 828072031 222698028 518837006 330661970 291257114 974269250 4352469 394768635 430127483 913848402 437072485 749210751 372229508 628642482 856444866 116108057 154339788 480824140 312436027 687617850 241704761 271353515 229155481 496406082 902089895 483660658 242981515 292998925 624251612 104763322 520564682 830376734 55369252 669620371 870908168 740255298 820255468 198647257 573802671 194886788 606649303 829909274 242465313 518971803 748519306 652513405 773343233 164497859 933075876 199484596 880946304 372782593 411429248 607678536 184889335 384355275 208664743 359199299 769065919 13833057 999793808 531305926 189460714 917260206 747197574 283159019 409648129 851521451 923617136 288072599 772509789 826019057 797941906 227822405 141007542 799217571 655486851 220250277 552078880 347090490 322485501 3750447 305660775 629142184 968678356 695306325 70418966 663616962 978921206 699109521 695562494 157492610 366028323 908014814 172435618 270087670 970971821 902799255 153488301 154683985 22249478 962713129 684683485 330910837 885720152 214373273 562311847 61264410 180106602 506268726 259305242 721177057 100442054 162976070 874682904 213047144 852146871 906237608 870476745 756508023 188796463 311138347 742231021 709243716 914061361 209358681 46577296 538298057 707475221 659009246 676361497 697635750 540024102 464258753 548834757 217560275 107625664 660935801 376521420 547264310 200464645 697614406 345193561 993418768 543120943 112783735 162865263 953761134 227189426 769207679 80508351 740157672 971992447 426579417 83018988 712398712 492283222 26083645 340709692 41702063 326417663 53440856 571800871 680894377 520584672 713308306 970986097 969621604 657869097 438260018 369592881 972263121 392342570 783621192 564120796 634981752 475074675 281799956 165153706 184431057 803505012 241474671 567004723 6323549 377598270 414010311 570380821 274538047 606991662 795776846 291464670 660908664 953450159 436774221 845595651 917995883 994822446 80843939 294522648 473685337 719799418 66686075 781063471 193166596 114231586 33517668 374558423 554675209 679355345 819659443 72784537 866260251 794697149 869139389 791058430 901075599 812171954 680878174 707830253 72123542 449808206 302111120 288816858 593682962 936203073 747320924 40370417 951408800 754835094 991697186 954746921 686953636 456788112 171729578 200576116 157390844 327906988 449349549 411598331 894097540 411869474 274842041 529772286 932654393 502596158 473841060 604255625 349686510 22058071 18591599 945274000 749326129 567385889 80346935 715680666 727285397 495439581 201435604 343562597 395867687 833177972 243687909 709016393 697933683 966195063 827544520 824593946 86273451 808315659 267319907 308551993 848447282 613185507 695565790 79565332 613056129 436097220 339779338 485911849 306049711 613394197 815665675 643638622 837262821 214443948 769996707 60660080 978594570 775710509 58385051 345026314 777089049 291653405 239330038 542752423 513254259 480539842 100657538 905109872 395216034 95161017 222414318 630686513 219152199 120994740 291836929 211111013 429939428 103833385 414174193 943717026 593586325 75755193 723587911 849220949 39645138 427859361 957801946 309344130 274911453 775274501 195162118 774949629 870684795 546314059 747000208 513595538 712226662 145809165 136316039 784560514 960259050 477111359 56130527 579554366 320226608 49108487 223923972 776255100 335171597 650472714 700673604 721645379 264390418 996560143 487496734 875884307 884513127 185522548 797084569 327765897 346972683 715107828 131130837 214385651 221072309 63774389 570050139 816813635 271722176 276780434 173639381 815583778 201665295 89095643 107110525 861069397 60903449 12882797 890772442 918811995 249193482 783057213 252279388 170328464 337260730 511400109 847427846 415829695 311649238 223015496 728770170 320664306 291924773 51300645 167681078 554187053 152883400 300930759 391777137 689219369 85108525 929551439 386991838 953342767 232106000 893536687 354840500 389013986 366268984 941475044 718256760 518903676 849656388 727543595 349682834 195327120 116066529 778562033 117086438 8508948 56135674 24942216 357583701 834951946 294167891 59268052 433433301 431306343 775677246 853175763 691501619 96646096 989337277 59999472 636356571 109735972 51039064 349328267 734329688 115422686 116679951 778590184 424556650 490838197 661416655 678283931 787347232 662889729 594734932 179597872 38852469 243130308 5582076 527144172 217474245 13044586 552951974 530576241 965522720 409717412 89092407 63706014 810957878 697127215 444015407 977162389 818306859 435745572 316615095 178589739 161716251 629772835 880762730 864911823 95868956 729906576 567074354 457274999 55476265 905683583 79311882 100840519 486638130 538462998 940841396 873652984 72443568 593234357 555160262 130517461 211990283 92455977 532469883 1825986 955874701 206822447 324825214 849953488 440036244 460420938 31233576 555038131 452316178 408626807 553987848 908110917 362576032 48322197 195746259 623404469 146374166 802737331 621458541 86066670 709647516 774063656 160939666 744616029 442426354 387340022 486312236 168009129 955999605 154478993 246188126 470379237 552946229 496226896 158320129 915925593 282403935 951628949 932341066 394521691 826999008 338475958 74434166 895923441 126781377 768852148 993964753 394379072 812412133 905087983 705939752 589984660 172619990 523833094 120416791 749465645 500149984 24682860 279410674 467209701 474301142 191666546 572981478 734121462 980389577 811294076 362741095 819085882 305163904 519756916 940304629 854193899 414975311 841672537 725851561 314606524 159770220 634248376 756143845 18359052 188593660 569226442 792034046 536891630 865778809 745011750 166532700 527009863 303238506 68771004 132541227 274768379 812304561 55593724 168169055 936034475 28579534 53302667 109963667 426662795 297389330 870443734 589426337 179480803 383030536 186476255 191454870 466498001 754726184 414692930 430839059 94354059 6047619 903101229 426544172 949630234 958032147 241202396 549476205 6009486 195567289 271562113 290030060 506753379 637905831 994041510 776816259 145993950 938650998 110208957 882840900 914728641 195729906 223751641 824724723 247622129 945024887 572780643 350643585 798158040 260215131 238033920 366607 930548209 525260781 729955748 313302356 66398940 177867740 737263331 391973523 174191402 817207977 651038671 446415502 777710988 419507105 588017371 671150154 49470886 845891782 199921829 874993559 921958363 563516399 181546473 370380805 791007637 806329865 702481511 59318072 929349434 789366719 629766035 929234239 998850289 184068465 997828668 548411668 476286568 621381138 116645146 888666275 980357466 978063142 951910957 192099559 101126986 592125102 995352538 601959877 443650757 556747201 353634198 31609566 328802278 783157411 937150047 750093365 304440927 301226723 888650345 840557345 191570453 805787051 676863303 116101193 971789169 217709600 116618293 49528284 430301162 750063843 480737758 694524110 812288407 235029744 793700902 153772587 99340871 450951992 999270830 836959104 98841007 901341375 636496907 696248279 247199222 172790849 134356199 141784808 801940500 627134847 661766987 511757634 223792534 311472544 773755370 613239160 251143041 234476656 604489468 573051177 616612720 18110451 814466119 277839476 829587224 814632470 515013818 293655074 513766993 101913423 469765839 335783769 714508588 96433928 782876272 120864863 310380400 419805684 856482939 641067713 550973719 359377085 685656287 513140353 970606393 812908309 847908602 536859073 333842482 17694148 958761649 657608476 956913696 24275584 524007763 319656199 505487194 716254874 598873061 593817974 758032120 401800129 293159629 95121887 40995533 912412048 686488376 423654107 930617294 958283330 484817293 923274613 38489086 364411154 291970692 676970503 417610607 9406575 349320718 86690878 286884844 47093378 935800227 200366240 97067818 701077912 170468566 771356576 242371739 684439081 7317604 70615548 193751361 182067114 17201661 930708610 634808325 144793481 933547100 281387457 579469060 742606359 375192754 932223469 346412674 860468199 242315097 461498633 684348460 169688174 342090178 533012407 209074784 807811174 24358752 871497295 643867561 969153876 939424024 443880605 420033115 878526409 527098275 318216833 86451221 864379642 638137591 216177126 138651882 631273025 326521245 897804009 888123136 805775020 390362765 716333907 223476354 637371622 10227515 155836033 613685763 654516008 265241848 141451785 546093614 900570416 561066628 911938695 551927780 252356318 630848810 603275440 138097457 605812169 703263610 690000861 21670403 354684427 21116816 300109672 386594429 990305804 965333981 758765918 155170068 626637327 113165328 740339138 612961294 2551065 753220146 808420823 79480183 705907764 653005759 229892229 823020468 185891444 666205996 909178763 841957823 725735753 416700790 70568928 215208399 131556747 323885061 280303649 168411995 961475189 889698232 473411928 935914537 355986089 353378781 513233208 523090566 361641787 537970713 943686089 544122582 920613041 565155985 619735220 390833286 383401359 245582611 424647837 676705272 188605663 835903751 804980913 6526954 611571400 326659369 168325276 82926546 578402204 39433372 184812236 992166374 676990442 766612373 466609757 650661363 222438561 451853873 741160207 800144139 591181879 989730080 856405698 251110320 527546072 46154651 468142139 5632150 921441670 263442717 379649113 847731582 111757723 316143142 973382940 321406423 59243153 406079439 824708146 560723125 30596032 532464085 143130135 388003949 648480 137596372 95769055 32903756 962042939 181935918 300959517 476932418 681043203 93468805 145156702 883028961 96112775 411909008 762527310 624599629 368407519 951378853 745605577 240372898 590339235 825956861 263784092 400901543 686044355 309976146 267133910 510885998 681596228 588511701 310352301 746094302 296105290 543429322 829195844 442368929 893494679 469525017 182564049 813840996 529592579 927777288 233155201 823659584 680246808 570973099 638875260 750835965 716570666 184460891 635271492 731874602 372876075 794838691 898454571 490684636 88665337 68728564 515036736 124156479 638746612 668740936 724775668 66642338 488295410 49931177 494107857 663454324 442715535 413994929 174608607 990367909 610642523 302396286 664928597 776820012 448117538 336441415 530517919 366084924 859481315 291171623 144002271 509457742 716390733 715513314 578725798 513778571 684826977 530606289 749053738 677408664 992132953 907074788 5613122 374820211 939435629 863258800 15098248 105360486 683701761 767333799 634221079 276260762 701312722 994277535 317137296 58339771 751759308 815876133 656734859 951063924 55501633 253609500 821484621 481563992 886608987 83684143 536999551 606596758 280145646 111735750 891473546 246192829 115395150 320273553 577247329 689662919 224946707 457097784 91111212 948597768 153471220 471227115 832032726 649380745 569699940 586455824 251421299 695022120 548427920 78630898 449507028 210642518 399311832 565150098 464018312 759620066 340492352 139378052 751630747 301000094 274581252 282650781 791948764 795602460 789564953 678253684 983244052 400352761 414950558 880879061 892723937 628769201 939757858 404072750 712773157 645036399 555397306 655622581 237646825 574993269 552378151 83947004 208104192 596437681 865174864 829088635 947586247 963534027 726677926 141793795 288926167 185357787 664444035 105522709 458125110 860420612 992904651 886410046 314609239 492673853 132241466 395503869 117926335 795607621 281477814 823950811 88115530 262664910 800971198 716885340 367428572 382582088 203682495 616307909 422214514 323029124 473150756 626455218 619840700 50070592 861145854 128375674 241214906 302709201 45176276 454232501 108859187 795134181 676999657 969898947 828270615 500474975 624927942 914648433 889647191 590063880 798420192 682952363 829755551 867168530 6775514 944159781 391325513 984961917 984216784 669464815 744939802 593806664 442668431 649808743 480132611 622779530 854141694 96612235 145567654 457023150 666610885 364680334 552250567 671431577 671735765 13667484 878453754 195498710 784007571 562932415 975949667 494937008 398815742 946575826 307369453 722309615 609536765 868481849 810754815 386905357 293019766 213062932 22970302 129809562 586303807 277917499 921442180 267998689 876652765 315426298 786991946 425433893 205977124 733315027 913781443 335481587 344893619 448884832 13256517 963681285 77601440 186283103 157397319 887429125 742979833 414929521 28415297 396714474 642753137 830354505 155687450 747436677 293445560 477164690 795134215 348284472 310759894 635937873 218066526 679062758 592054457 618219133 18794874 38018853 497876115 605687905 927693256 166574707 607681082 505374030 563754874 557111691 478996014 603357582 599013485 332250953 747327329 304305708 564594543 413382856 27374780 686407808 656495537 527958736 234655505 709339371 681862257 172697136 917026553 818478113 423372809 759983620 417060590 861703766 809897750 818470235 20357668 192869557 188058593 650865371 895378731 98524723 139548126 371915959 828934405 417473871 794832852 599649324 38634142 817510036 171569856 477087052 164444510 83867650 386019458 430751377 931792360 399748486 208250888 126334075 853691025 387622408 758519961 260058681 361382626 102761781 253229452 637463239 361329554 228524966 120197215 492391628 777045279 33041601 955726816 497800571 835910254 768916216 512742860 845168481 890243561 928812427 62467376 822833696 385018612 404499231 291349101 369054866 137061968 204593966 52547653 165141645 658356301 864322619 302117543 586558028 659700975 354631662 839336545 838648971 716711012 90636802 67631977 77255188 58821532 564191825 440064422 903445842 546318528 649513068 507767967 109009251 221695639 840569189 210339097 991425276 318001429 743940605 860513276 721508386 783024491 438004438 323105855 144748792 205398215 828295569 303510615 291688891 804884011 156213050 352441683 640139498 222145707 21846987 790588198 888499066 113063589 282618633 822021501 176316432 595558851 737051791 565538380 888310215 788519067 93248377 138926974 726975838 557533677 289498366 6183046 792303327 298872868 579758952 548872995 548712311 764902968 132768357 701615818 399495080 768484400 355846462 577882801 84863297 57164353 516447938 719031785 2079090 964218664 197663209 697324930 537597331 526201921 994626776 598273620 898585612 743248466 97979617 836253594 655096853 705038728 917081663 164991157 935590992 4724061 210122994 777688374 421506213 230518336 968899253 857547199 327808221 211699745 787348081 181376456 122917174 729494282 986248741 354246578 608556994 787829598 288567293 805340112 941484964 250454370 280706853 244193465 517476563 618958199 372454250 181252139 392282246 873241800 619055594 667193752 453941405 280627210 222379415 548490026 848829998 210445039 2596889 218285257 364251300 351397797 836188324 430224301 84910328 716134045 306369719 152293724 471818154 181805983 49121170 803206841 880119364 446891636 542417230 101704141 412486554 732676673 888548413 353600607 877601511 723258167 600690950 309966347 602580861 441226632 983676446 396886160 842238697 787756720 379684425 587080876 454297752 849335750 35189922 694404873 434578052 62197000 709184025 659827772 206982125 995252893 847572193 328353687 270173152 907819683 589353812 788863184 862329035 383530146 189724193 384209313 956608345 815605067 85146558 757216384 235575918 748975990 7185758 11519254 438058708 37575400 944687756 522569993 612529191 259236534 531242632 146432524 808994273 433629097 199999521 961834481 474831387 698793378 1530885 461696826 889178969 694857944 974072520 238938659 455207181 229911033 249320602 435773532 972426637 230242939 261468443 493751184 110724518 654119643 295588125 63919488 965380465 884041421 266376975 746751615 765093286 811744388 436804769 762929250 389777563 431054212 896246868 148078881 480986907 793764360 149524515 166048687 563362283 76512912 841056941 479874516 264731397 388438884 664854452 825661579 127453668 97128929 272357366 954011277 662472325 856824860 959539736 423103712 293167893 595994133 682085241 641742975 457032020 616743381 423774106 218206211 847669294 213832924 563712073 343547993 234629989 609965838 579296940 989002916 387764581 303555891 700064154 702338234 202927759 790512868 427169677 333189632 800109896 570959310 513982958 625798484 318750368 968228362 203289194 957743022 389248036 109330413 742216621 875126103 601293177 977896370 622746571 96525856 882504090 814209949 481235660 621405331 49139891 890841074 371274840 847986591 129191196 274451779 239333751 595851207 53185336 45897905 528201939 433970296 565872357 12097900 199916143 920305302 805304369 705421853 3351277 665754586 273780203 263106536 48682066 325605397 958471418 88491564 927616817 646675907 958426943 131019829 796567198 555552090 999339233 940761139 767505493 595943309 23874366 485804693 328055992 699058078 604448569 283305189 596567659 563496231 897993686 218478636 385267177 491342889 853270060 46626457 40160119 561531316 251496418 99323909 148198738 769825686 956388516 148967272 614363091 49020243 35643237 650595469 678261509 699798928 536587338 372109603 704104533 370642548 207497068 460886673 648311764 312279079 99445091 559985574 136231783 198458705 874727635 494733021 561112660 436412409 546236151 820502188 571866021 262884023 402023227 617192541 759303677 752742049 538833524 919065195 971276693 261867048 9680453 593759211 200211877 109733117 835239053 526857767 189681064 6932757 775257054 741747412 197050627 230816855 811065204 512329133 30073217 645942211 153273571 411020044 862530547 915407308 38917554 474501059 497896238 571012889 115855217 890449021 619774424 11405193 411156003 223324019 469957210 167201801 994570641 50090109 318519959 702303532 904374106 564663955 716989914 275500713 91553405 608012801 96130074 368807704 480665972 36856240 179658495 412770799 453877982 31103763 883159878 847331855 838771131 878584847 558912764 229637574 379313186 206418999 827561858 181877914 23806134 481417377 286785837 20131995 96027269 923057385 65953781 186992759 806581920 383585093 990802219 157053771 844638768 76388824 640252658 211885311 608484572 252192976 906487912 378114578 41667009 749062633 806221446 407541400 432761364 98355941 886153740 454255931 747147466 329965166 519627807 529303438 105612806 699797898 288704265 692188717 360710426 88223695 222280339 767702854 67807195 803920642 809809354 9308289 558610783 641405128 825942079 962964331 638052580 236616286 750363715 993291756 844249562 157101441 849061130 559263386 223277676 662970245 826284179 412825021 294481800 884153860 850781667 928352301 212875803 948849055 836045176 473815118 950704196 605847472 549597127 594379444 461840116 954363399 206825743 853127154 52909848 573344147 360100842 375633377 476241079 383371324 771590942 51843887 325637438 441512301 358763651 887988302 202770443 53920165 34574237 633098085 593946252 695572607 310343133 740711681 231762860 791608810 494647348 716949674 183696623 812573106 563081932 241160618 412680982 959764204 450469615 581083060 447469070 505891341 768892533 888852026 558862442 620992810 22599399 356008022 596634409 821035267 902644060 251216128 230846990 884796837 161081580 493153458 886098116 763838318 724722411 711113217 476642860 841301964 860328629 594485094 450968417 969957116 961727178 613256581 503909666 750011702 210968743 491415104 499291643 628204543 574901896 990377936 596981152 460308642 722285164 11654805 109101945 941669194 531843746 391860744 818262347 928776872 60593867 951854384 861133501 767129202 900734788 310308402 541886470 499725099 305257654 650426060 681736558 569328197 271535287 536179579 268352177 61412613 707259961 662368760 346474724 395663275 660814974 871956082 315043322 302848602 522777319 684411984 445499521 581132207 88018291 803399523 472233354 559135995 158424141 831165714 574760892 696243357 809253960 640140084 6875067 995593220 283698760 319317782 311950532 42118379 741054374 581438873 95860412 456094089 547713486 626574164 426495193 676008884 344325766 625296862 332442703 725681366 782828992 796715518 282684131 292220344 380487587 388083613 140343944 523069540 575287615 229487054 385545209 801237973 693718550 767404219 480162361 965701845 458047516 820312726 178862785 888032763 514617784 99491199 891374974 961019580 577766862 126315773 851430078 279630949 271340867 595107253 645386118 164468699 4647592 560278295 432728353 840143790 63155990 454228624 623390263 736599726 239586217 151937054 942783496 454759981 964647486 816105009 508143679 796484705 819649793 660762301 38494079 650322187 745764188 948711629 924887624 756875837 376763604 527038789 754005663 480513591 783508103 954113478 551222535 866264128 693675324 355688289 106855310 947960622 245893420 875368111 636195755 180119028 7113107 983276581 470381968 751662914 308868466 954944808 94109054 691061735 495143636 56684274 428263717 427769102 499228948 693960680 795658629 873064380 495731454 622533296 549897010 293526066 240649218 548124409 609602775 897126888 223526262 197182292 310258316 533770134 959216048 389182329 655801545 344361483 15630099 702013905 624763871 613067685 495804619 82683732 410395542 659913902 713496892 904716814 316041224 710752466 645067564 749574698 131964032 680205193 317927468 25154433 306657000 626763180 420993889 568207267 96281570 25369077 377275284 134646623 663019587 264259994 93905353 348086918 794503397 728592229 216214568 286728833 351895441 555081835 494998887 150591380 476516314 719519071 658461599 932799018 236174056 682933647 117113535 141958661 82036089 437780951 865735692 447930027 846069443 581586091 121464761 259547009 231362468 310502846 953189266 184604602 834174939 250543481 438887134 955039145 860257645 56089761 202125010 230276835 962336768 207519944 839979246 986750618 987401075 313606724 232898438 663851793 83707115 851768687 168628225 337593628 726106131 69716112 617488895 69433125 652010119 139132653 263082669 996188903 370450646 330631093 220245911 307345397 519503203 781363593 797850880 124318636 62551232 155246813 210390771 695133108 96283588 540962001 399068133 425836178 896985771 339205593 100859191 670586577 775978917 329526754 651871162 610572008 545373069 738725377 886057058 647562323 58116713 618637311 245352668 805138905 55614216 101984036 300324661 790371016 209206484 47163512 469357089 401499448 175155821 43969034 845947996 928836379 832840928 707397999 841827984 725222622 678489787 999621611 403882801 47492261 713822946 163022135 121891821 880623043 247680889 579551587 777241313 793005857 455570734 472488894 217854446 701584322 687582106 73902152 312970628 975690049 889577811 849544024 514897363 294001609 540019683 249616323 388110983 99065697 92937202 800241618 441241627 247769335 149285333 768414754 996778106 506754083 210865042 967163647 656890573 285826948 373459725 180373430 25676311 3549931 681303772 343131658 128792089 707672341 347239182 325895790 164606277 395944802 816209158 678375867 871943771 431350782 639462331 29164975 241133501 7827350 331961216 452020451 416887674 718852772 69768945 233334487 323027121 594056980 663408108 508749978 355179351 992979721 27172325 654864923 300549609 393673122 968910693 115005996 916188749 902166817 45607136 637791731 730975604 126635496 883725420 435510479 505766389 720800725 347602972 304538707 452965995 792359516 220399698 854192856 399794715 293072425 334686582 392209466 836782448 691584564 497726550 964604410 946700119 396099821 42269013 748705503 428669906 804759883 395301384 849590672 730057910 134668018 391310782 648921164 563397783 625666882 970581585 941328505 843109399 105324462 360820141 143785196 418883161 950303582 894154302 20901274 236201509 418821578 936391372 516411994 61276615 23978407 293955158 678366713 949823665 799494833 253023861 526170803 364985373 863458278 971107117 101581479 438617718 15533785 523104616 228392389 72848105 755572983 241338523 452518015 451136431 75413482 997711435 836059813 690136082 812678756 68775121 239435104 181373034 264430717 224104592 751502821 88869812 186061718 65780921 785470496 698294103 965573709 283717176 626187727 989864136 201618315 985128099 227778678 70422962 515567544 719326913 92011055 798159148 308104702 239979127 854458113 857093917 818273085 76783021 334523470 923978460 308913424 406940064 848887800 712687896 944928033 165474250 273948005 159602640 702843519 765128657 986333312 623746917 230071020 950137392 54722828 326636143 224165950 935975376 847765921 537471567 409772425 15747503 943299903 756727553 919675703 46336956 964314607 748282228 561244306 313457464 163228367 243132517 807673257 894890624 2843406 882507602 322181322 562293319 704256443 936120638 96242505 208832825 484134502 965991266 562760489 388396246 97148798 39262807 818549358 212463914 5504340 402017838 299121155 499049824 94292425 358647583 423910037 254210514 881954201 433473396 183986685 150772544 735375673 987360323 443254375 372663466 132020566 978381710 479544191 669772724 835582433 362264347 283211895 813191446 628796878 377364349 878377999 178631935 427845613 902883335 678016656 65448473 378395943 214304302 871075114 470039181 874504316 176422502 995771828 685601638 753866763 720559434 617161767 237499205 29256848 710891876 855957615 467883942 778413033 765534826 447609654 747470308 743996417 573774165 521542134 268406785 506931986 799646412 883629723 633770936 457926716 407310544 8259162 223825622 922749247 824664969 861647522 564118699 472902759 854387087 608162636 491653717 650031559 834662267 518510504 630562310 770830882 174134429 977689761 878767982 280250187 461367957 474294706 304828929 401322098 200195560 741981604 897677673 145469844 929378282 441869970 670585042 957085311 50920089 148544819 723882232 794732638 463966462 269778802 784534942 52075515 383893844 82478913 763431698 164809389 998172219 465402362 855942471 305281653 848049365 90673614 883901728 331803275 986432589 706884609 590563978 757404123 71078988 770259141 610042826 293090759 996763115 752309128 417627466 828090569 743337321 558253108 3984541 747554416 505397841 487416529 752591543 901327360 700188383 269010568 808937675 670633660 463264855 565783523 722015728 483777764 521876728 339720649 523153371 457786345 596533443 481764250 375160362 388182514 445632135 707322257 665658592 791592533 258623336 378908806 207495997 342219752 397084275 17680543 97647928 791983429 362739182 303379351 73965748 792130291 227174754 884870616 260541492 361832798 92665549 241231289 326368443 881357076 780095386 778260025 461033908 375956049 705686026 715800644 700978904 158782174 63733802 646672977 437651137 529824083 746317910 808154779 934366512 558395240 951170070 879984167 720133305 186744083 544270562 142123320 926127807 314911627 117332239 334567507 652645919 971503094 128541958 843515361 558114579 313434341 6026692 248898719 774141321 479856514 667858447 511526666 35402306 23512934 122173602 649999164 808814605 909545293 440806915 154348796 250799238 975340917 596823855 361779092 370272799 36576704 784186739 852616677 961596430 539923823 866999554 147599035 146263203 632624519 277838498 295919351 339703639 516528906 322414657 807042947 155005584 954735815 53791140 888077566 406786829 652469542 57130920 31519643 749144261 165103902 750825894 487297629 156587636 497292725 301152456 101534034 289107885 392556701 103570097 436266260 912392291 716031571 576368881 776167959 742819063 366472081 35419008 350445495 745963212 296300812 336240814 877997450 955451984 975928911 180153730 710447277 831768034 198163651 726628428 886026863 655826630 575231253 289825963 501469336 326657054 871285994 671092762 995513335 30798532 123585798 867882042 431673156 677847358 623883420 502963140 214036955 124417276 358338685 661740387 626775539 281663999 980261060 827028400 68140853 766380488 273722082 156794505 59303663 745243925 121344373 25276370 660640413 528246053 307162022 500925674 577409288 63085080 223436363 771536185 33384121 630159485 783479714 238070285 885499101 222294380 53224880 495953822 49528833 402188444 107480345 163414828 106563873 77071761 101030797 920147459 416783675 604887512 201481291 962748848 63116757 759845083 960782931 850994895 78140638 442934629 849465476 143606771 138189948 959283792 578295240 819202084 174200315 281828983 1286239 355596072 480451306 800158241 846588479 361156857 518979226 334306534 263782777 91756456 890195317 329344515 760313596 49660631 927390540 158516953 316303802 498397068 625898159 196282030 721867229 551205938 301561723 319500146 151069325 69987562 185382201 126955432 266949817 17579248 655535187 320012997 796124143 683908312 220001553 190166374 255156738 816767068 682839599 250723565 217107009 692543611 815755673 120954930 76092727 929485729 843538314 729588733 725275889 902834804 209895044 19321825 147642431 67784523 875581034 138908193 393254860 110046811 75087921 688352785 481618857 925600374 19134276 377084755 283664889 189647276 567595836 249602199 731237799 300993228 149504173 118332931 588752450 164815749 54646132 352490794 438872314 802224173 518416193 137941940 454583315 603063959 960838101 182056551 875042583 897192810 201050190 90708826 813803885 639445511 478709669 655998466 214266230 474269087 851925958 587937781 626130277 640970463 717306936 845373642 277699626 312326668 9152591 756107096 954994878 532530625 663533725 608605010 890803136 534432162 33922542 525191318 23909387 572001367 955853299 450606165 26468501 659413274 770457101 347397596 888182748 36885595 440429882 8349670 816341859 80245853 294423873 764685246 699234457 96071176 878234715 724929511 206350028 96273204 517342121 208296011 783786628 59036431 38889078 97437369 805813741 82896088 165603761 63002699 801481372 466814862 147242299 626449005 421408023 503699950 740731630 241434261 459902960 841060825 424241425 374131978 276276997 475740430 482761420 114184675 220674004 66153998 313145958 544120607 996600508 24938252 353734981 77345112 187229785 814109624 598928159 806413865 693095052 639623366 273859725 551728785 508264909 633140581 542515979 453699776 292224754 187594171 435881068 795932074 739127037 309628667 479144411 822348402 665119 511731317 911825493 806934208 763133888 370196192 532398172 872852847 799347620 161803445 96907744 522620949 390259835 44426942 431005907 488862181 604183254 345889684 156614740 288080972 672881946 127984379 518570494 630897721 109615926 157529671 729195175 305353777 992210185 174873893 466117212 477931453 498566337 120962085 730681646 859371406 688312144 861113749 882318851 617981872 489780555 213427752 794065602 710937739 96877309 273223810 879657008 612056013 358115755 203962153 48992609 723546019 823465546 973356411 869360615 140498725 983776578 907509303 289380341 325275201 363769055 862638569 511588740 545064075 891614151 686676589 198391049 889486252 41267859 563656690 857154444 218092387 319831761 239660646 738058963 38165358 351860388 685703439 174721705 440303954 719355981 854258958 351032668 195103142 980019432 586917155 294027473 795030272 555887933 625642165 809834442 997839355 4444297 838848000 513338533 455104128 382620600 620497420 652879878 176855566 887082080 265862202 118927128 387708507 334973788 411571148 881916813 450650638 350824277 641853400 252983486 938827540 494155525 816572377 147861693 991011764 856529585 266310481 693486870 801337928 458736707 159470331 279141482 991295100 252325050 992452335 147960921 645179999 801192850 173808889 962637203 209780904 977238597 534977822 451819249 829944611 72482459 935122494 866883227 380265775 314497951 819993048 31281586 507108171 822029212 609813637 566361671 879635418 416625493 945065354 67170691 304416077 222942733 758133682 767821129 625607476 239686984 22393173 776914141 360426021 683445938 183182886 499585222 253197497 996020314 603371409 463300535 180532987 690892349 647959957 406927089 682290599 571141243 686889572 437885220 952940090 469616357 950580909 151459807 775726032 856473621 823403270 138129436 821001797 793276399 225400219 776667064 754660318 62508853 839307130 288139250 525349509 239481397 925055446 196321927 665011151 139335618 529257685 758596608 39137080 226771047 31040680 424661423 416429353 760544039 975963478 615006627 610459848 971298084 958587596 711158637 61737255 665507614 855235836 535312770 179714801 28477052 701912472 665458361 695751118 559607085 707310519 185786576 685439297 16411284 695966158 307353366 509589066 798673046 856717885 92703079 164466129 194588216 693178353 318921175 456899691 831003360 428364131 145633346 790793084 575483798 294132799 555969853 54178187 11044806 226660665 929813349 786432380 867569314 122533331 425075801 229325405 13738843 18727152 639063453 484675169 594022776 394475311 463219858 962104163 61120321 464406606 489073917 993641971 274581177 733954665 689311221 622005650 383051681 789651155 771662386 385740611 917619205 638614625 540219510 358682710 262526494 834879211 769946206 705578358 999423582 30153544 407034866 468663668 457098634 361000304 453675436 194283538 643403308 605402962 41167987 555769541 18200043 187870467 517509672 678128793 701049258 889765511 182723145 82283892 878002569 713032047 166415491 852969443 6028357 306913699 249477278 588661142 514583757 994175974 246306643 947278657 758953422 725019082 539778 851619515 514592897 645619546 944555448 824075741 919684120 856900069 163324865 578915458 655412533 72286603 918440727 853279727 396247093 261630820 283536343 971265813 136925536 732447814 571534297 274091333 384758204 130834311 553570745 954213860 403308759 345830438 844687236 927373760 97652071 67590356 241259090 183047691 124494639 134382033 556423622 739938604 563995432 658937090 452719650 248645826 593088031 496198102 123731996 991333953 718620846 914493499 822921798 492025207 178307856 133246105 607709460 31303982 554555186 262696960 773254458 878680130 499643732 833742648 964771958 263791566 717727725 853713265 86761101 44833677 267573237 393627177 511539087 694435858 551087510 220651264 499866933 251702364 798270855 260043752 590926858 458709994 976755250 161047906 45087266 319784477 962276488 756568462 186033206 378516381 591036191 844705654 565637958 664193003 736215462 473328901 987110841 628167614 332213835 426635049 991175158 989137865 886198258 791836168 772647371 436155361 268652609 790245596 104893531 544100419 563082530 699857527 177918616 109636990 796544286 487986306 260194578 988265309 308491879 945822252 512325948 412030898 65029353 455860854 736366929 421193704 957862206 701319553 978650369 375320190 778846262 26242862 930390148 44861237 501037131 538505787 889519207 319776694 216369495 883001096 972346813 389140722 918695191 414464278 649887349 187417289 310508222 49497438 680848504 136179245 248817962 994761393 26203919 872193200 191732856 345552111 616544916 784749172 647848724 713771336 628283627 675974024 150132915 147237519 620517515 999486204 73981643 962381647 969650922 54998415 11583053 668755845 284446181 670730026 535768949 475370304 453215699 371553655 516525173 469007154 900852075 693924782 330747353 717111512 53834355 901243722 731862401 825984479 654978611 712835593 837128257 294246941 456630763 64793163 528750136 552592172 324649774 914845544 34736678 589650909 552765378 56651342 842562644 548555363 140365072 315323300 706815019 356498510 38042912 774381543 392723716 891848312 538314442 562935775 945501932 347351444 14358810 687073893 287344168 673550470 73391513 887151469 203482724 226395696 486540282 98963009 727109426 811456778 912557077 892312677 697977288 221612542 880589587 749031954 893982904 126066246 459350390 274242908 637320998 497277601 354761994 156096721 684948657 691343533 43313341 385136293 878563052 919534554 969065452 662911072 203977659 321296513 748489802 603941480 280880809 617640678 706347953 337888112 401879324 31763966 709226834 954408528 571060996 829995209 31866066 662514361 623121178 568804684 439573625 10872554 531811527 372784207 725405902 390717033 617287897 414362679 59316248 630830201 180534770 858851473 772634794 549438981 848375832 220283177 300106744 872815118 201799693 555375333 947044085 655343267 730909007 313216354 604958293 522051775 739656605 619318138 871655668 576271072 753400364 792375047 833286324 17209958 577324144 232297027 986973878 624161972 249651987 313172540 475180737 355847107 785908242 228673513 33438914 639775076 9717491 538400362 654515497 602832321 590087770 296080592 922003251 825476222 83106146 635218727 769337900 55415938 382365704 30057546 16086535 593788804 505437421 192745647 929032547 254920734 171419960 248653457 319033660 851034508 838483161 642231573 386555630 952228263 710172288 85723019 571910661 783562854 336464165 445817004 836767981 691191478 164820414 447858841 533084134 557014362 162218182 909211547 61165762 319443230 499632381 543727598 517140386 20179001 23954207 975177400 299438562 836501291 684003938 119854479 785685925 27947864 499828213 409424443 147362780 721822587 797892494 150022842 6578891 443625577 761446835 81401577 477363372 444687788 97700689 321034682 949884664 232144048 117282625 714605131 217876980 673009125 722156265 519652897 300345167 150110496 994075534 327049702 627107246 201107178 577532982 877870271 564566952 995596054 158728118 837077884 85063744 205819726 411587718 783451083 741897146 720606776 192470779 380079558 571151149 997213515 355471220 555217772 162604644 51319947 555324274 200363232 696070963 42215825 806210968 253390662 706965099 457452659 701613949 153395776 429681696 489380720 196234497 984605792 13367173 245168414 179284383 876076761 602525573 377130832 656150772 754947472 665199084 168639480 977193676 546335327 147562454 140420227 772810578 101781833 816549007 452790425 999781997 279924470 785216907 371320857 513251496 115620162 941383236 340941802 202841021 585993005 937089091 331443267 318420965 45433873 848398439 167433869 336524737 647109162 121514850 519405076 454778961 734240826 70597370 151977346 816206203 404197002 407039060 831390533 804156498 504867814 522191568 577313310 266450872 369047293 528857035 936373337 724594262 238901936 572148707 598153569 314373969 262694015 684260345 183188604 292896604 651139287 986179771 89815077 768089765 568838581 979593137 446148130 326861233 474204601 43283211 302650754 331419237 966233121 190460585 85652071 259692957 699485367 376744187 315699841 646936346 599552765 31616293 139484008 493250050 125625438 588982249 267087067 364022975 835835500 483423376 727297910 833542970 815921328 885244218 972294900 223257946 219207759 350059572 282228303 92261206 871426782 153545896 341679364 503441060 907042869 861531215 218763312 84171385 100887926 402745689 539513447 180291252 561874056 922146106 496939745 715608385 856417320 48816599 221264613 908370410 147515676 295675248 495028989 116502869 277396940 317188150 466752425 906587855 297747083 45785146 941907141 56705981 929298484 531745622 693076970 916610278 265057626 471569030 872604691 777393172 826944649 615324196 857069577 709769405 732278955 348120059 571094506 216028100 373735111 890089850 799601656 446119221 284259642 497686879 395370211 122377198 779087539 4986103 571269305 591224147 247012921 649069188 131022821 595136588 268864712 213520356 49684158 755513601 676971591 405782800 220240057 296796928 442235812 297275091 434463793 60932991 37434165 935280072 738496769 415640902 474929762 642287822 323279145 240213926 644460072 401402908 763014634 140910928 214253946 405048655 488226441 804690421 969063396 279444219 10620921 163278425 578115476 406431584 934540277 693442486 749371526 353277017 667812208 150894279 661283016 599056141 542522029 673639597 117821058 406155497 724128514 809774185 752813573 192453733 667478522 644248010 644180025 468302786 590311753 307065101 702568489 146775035 787446124 364634281 122798778 303020367 958193869 100741034 166364442 84863156 792555698 456640679 228928891 375511406 733439873 351917831 677039100 664307644 571620949 900930191 414881889 820825053 150223147 601601380 54927628 489332565 71601491 222109721 611856196 409567467 414556450 204287334 497569862 735550660 803895754 735223452 722590528 654037374 153230726 508211791 44213531 195311097 16322339 334618014 7547702 875588603 974792307 408860590 117979257 729061812 420705635 777992925 594743439 675778099 805767666 919271187 432409825 748551173 498209279 425483209 860705459 52795949 541685891 968056072 240268981 798045038 161328575 444658209 249875096 904788280 729124025 270121084 36431316 271380338 510015787 720426220 289944322 914656048 601399569 751048576 987878036 922401831 180127863 688329309 552131718 46958952 944028434 160683532 669702073 207011344 569783918 914922484 756448984 149799321 783253586 787062128 230236258 570913382 149481975 754854599 603433012 761127228 353408038 525455603 301998032 759740597 567332752 481808786 84030111 575221882 125805359 192549623 113069206 31271979 565733589 592864801 662072157 201751327 940290538 929692505 243104715 345028116 520107000 401629449 15707274 741816042 989272002 573497478 210941267 699184381 48803164 290698785 554979654 568165939 258105464 565832186 727767070 668790740 219011359 477562459 677221592 317964163 146056288 499709603 754107147 9142960 958495956 927043387 74938749 163534755 196451583 602564554 889533317 231841863 842938366 415713041 790100469 969506876 687697704 515475392 603388715 989960685 47979776 15363923 718173122 837449332 979914584 793033575 705815560 579705744 88537286 737244972 567760245 945260837 500776075 247764318 969859051 296836655 471596768 338674576 475805794 148912070 916650761 351030568 401268249 822879484 750636087 770928088 429044679 758812567 732660765 825600349 607589625 201672032 766972095 722335999 711374093 550662558 775355255 975789331 20475485 659023275 851658357 347012317 843094650 623882574 111811426 754625816 340978087 134158586 374811386 656899813 55881295 676852049 709511363 916418696 591827275 519263705 169658683 44102201 379275394 276586685 840014508 76686860 658032243 505217324 85810085 551379941 561782476 83114682 386346796 4348218 244824025 787551358 681861841 836080810 511042239 756513606 97645557 500204409 812245204 341356147 819484549 93316090 196284138 172808858 335979984 919541425 125737576 804397300 359561430 450821985 700759768 828994416 820163639 620094949 4748439 339465251 701749679 637276136 90957269 813746687 155982830 648664707 927320089 451747153 833841223 719306142 227084721 408432035 222965299 586255246 524406415 923914397 995913107 515053381 423087510 479483125 590650681 254838505 680140590 564297053 12569555 847144378 346037116 711782647 853026140 25225802 191682826 506086100 74206417 927952186 740868117 364382221 675186247 501386518 989706545 832351467 700738675 536127358 855569439 648638209 987623146 622545484 343036071 803741973 925580106 999961705 663135242 399916844 919337707 169694671 119390842 492072713 377748686 355295929 586475445 230580870 551816660 29111135 305703933 611598015 148697242 967314278 456484330 704780072 574256715 300653589 350674129 378322647 902746746 429001019 756316974 313980501 880487313 778214584 859221526 70834432 39810036 936515617 559295134 422979369 980421629 296536009 65349229 465813066 257077217 879114306 302575193 845694887 412278897 804524786 381346558 944751863 743442697 286811375 954034506 678339194 229343805 271317828 188873873 390489182 460013698 264742224 582658046 119242705 888995630 608355046 192373425 549567407 714067694 897737012 16485376 650838942 671262831 673544391 46660658 542075914 98975503 176608601 119971906 243695856 212186314 617957697 905833772 819843671 269736700 489389011 605550195 913555814 690418548 393414535 219881924 476455815 582487066 310684301 480355713 738574997 417979587 920763657 270217768 532928554 190474083 850342440 750810937 273388756 94350102 25351723 128540448 636336147 858898359 221797211 693603157 130200705 939859447 200667010 284334033 354194066 852745966 608940176 204837632 42635111 805515662 199739534 826947255 618580682 89569861 569263214 811779651 221763808 384163366 314132137 288644956 559296400 787733436 755502835 168038295 167168926 609947573 375102498 829081425 641140582 915654205 192786393 600622107 147014765 439079113 676975062 247588615 853624402 529746667 949186820 919255321 292197340 639874609 168703390 653809040 268271109 478597540 586874548 273177903 760533576 521175634 547830352 822206591 922807306 797912170 719373133 427274165 453590372 491662705 745667238 921664618 970332796 212067104 166487365 313656434 233706828 692953037 52977669 936208918 731416887 779541880 409924625 825260151 793770331 725082573 272057849 529369970 22305414 665466441 808790339 970511805 867483031 435554398 404982615 504254425 792750631 770711951 541880559 18024784 251596738 203776127 16448252 165156534 35035917 176617279 917882042 390293229 857910321 632333977 801751856 103274923 597527651 318148279 756483459 456769102 686522547 20164466 241001820 153874234 774531326 145097430 808388027 644189983 37684764 225919675 511081452 830864940 776426685 209429135 218266554 501872916 368314110 94338396 39838350 993945169 78415190 267968734 82595916 411203888 337256083 785333796 626767639 654735991 939913727 92262426 897666389 976391261 68229469 310968883 781898714 718809965 928116830 745913821 857131857 690431193 7707633 407308443 997021910 13265330 387017258 459178861 765134256 845831552 234826865 558406407 984194319 4947248 960284809 96539379 888473649 844210225 562892974 758643035 127009832 106356488 438424580 470394913 694561007 877467415 510216008 547923181 912852026 746099112 967711370 21993812 729394081 423712164 975100187 292729108 447402269 211040092 69720393 915600091 501216934 867628744 935446144 282079013 890185815 497524610 450421830 819754279 698002111 931046801 246168521 145139800 871672402 835415237 861995935 170128486 336218668 532930319 419998884 54642351 566865572 440825179 933869765 340046661 784304315 347479192 797592340 337336715 650232500 402978450 604208889 653025024 705094231 975163452 543978263 665636971 603269076 942108402 379521747 125143687 49982044 253385162 20804010 419359531 712229443 424613183 412442888 254505934 941864046 150515129 85955145 502743265 335362305 143219705 200827822 236305803 180496905 647804077 781848121 921901378 485423480 859668842 439688892 845870942 370424316 294965526 344111723 375828925 192341249 664163772 661489246 558664326 44729141 797959845 800087625 89403066 622987230 474640706 946885272 659263430 69604868 700061170 22337641 563255606 821486282 989143750 830064187 107258482 172843414 442777744 350083571 773380738 134897403 890145155 105112513 324561776 161244366 919937992 609729106 497558836 772783065 548395183 190114759 936764222 706523220 292717015 145599741 615672536 724695352 917342364 878634284 229217087 772412132 740657767 424803908 352625297 730517661 157893992 332695015 360163524 669059535 196625166 596934733 136769798 637427561 305502926 662787198 18825680 62064365 811865032 98275708 484234554 639218058 808585571 844870284 658855803 481211159 342513589 146456563 639852078 913280743 605443971 841452828 631407985 317269564 759681239 745653342 84535939 984144611 651130518 960923741 847377017 657152351 660007780 991863886 836507405 185994913 300464769 511619234 161739500 633008355 645590056 65340786 298920396 312893203 676663875 902374406 390074759 426949576 977424503 604213827 922736165 500955082 833161327 57302595 463911237 89844490 953614719 541014128 179139947 369412217 44570747 725437185 647621522 850564846 146058201 49699902 618723352 687043156 233400642 721511919 348035624 3426847 708027655 901801428 287125460 654397451 127753901 641383021 178977226 978829651 560454169 494958165 135975482 991053930 100982774 374154923 363919564 724578246 426646443 921616033 658853389 585626773 592103326 119426808 829221293 868454887 820016870 406720330 381368931 525738059 32719941 622051714 754129114 680129869 980961635 159823796 811193735 149217269 74718975 775999996 632303126 637479027 306789173 107709516 818910648 210967805 759157606 231597415 789692753 440045389 340635854 535014277 271227888 186348578 97242429 152918547 678845905 180889351 513517937 689450932 603312007 957415885 374982392 131592719 927171247 669078644 50127057 541358232 908333287 819303694 304262552 100899857 352823547 87830854 481510995 482314075 39015917 724429394 448433003 803878322 859073551 661125429 161584215 151588240 229860133 877837211 412540580 364963191 634132287 254219844 561417748 246974764 405743921 427270281 755286609 729566244 900057583 500286503 139071099 375847401 589648450 995095680 411622266 312706298 103386743 693353667 848072203 156217304 625923809 440693475 487423476 652415277 545788996 681917610 700760440 464977496 403199134 366230008 412943168 137872152 72282863 164199183 189638792 629788875 400812692 166023108 608449026 386040066 573526956 637713713 307937031 242339834 560882233 158395950 102717904 267151641 892856866 764883063 316900959 732102935 601552207 267592129 263906002 395385693 376904823 897233257 606455353 662815516 996949507 174464141 535464962 327408952 905925886 352207921 499041033 257183656 921918432 675003185 248468047 352296103 657157779 723861955 382597202 230314191 596575339 464189255 904424193 440784060 979719864 64178185 399857768 308468549 145054887 679457710 917100034 656766283 410464096 288096133 204790789 906492327 772734964 100306168 254102937 745971705 663809123 503435292 538195341 611523363 347294843 63969883 4522910 117664550 898587529 874951122 919265730 352050554 149923602 441873844 675534874 779381461 185032032 884418677 676298132 600465764 41326664 164177259 426603793 576161115 17395357 955941807 984209310 471266718 553930597 42886063 743980293 642721253 694836438 107581650 595611932 120042834 765198613 177600248 132814544 475732334 591298001 797289078 76272140 398873695 800175129 930741131 111464188 827440511 255593303 445796635 124435617 519513335 401869708 400793394 327555965 999192414 232102173 87044584 738829613 653152223 992687513 936793706 697969250 825416070 789819535 258210785 86166088 194911211 218636521 346571038 675832268 925328653 520007686 26679140 18720212 6479897 542619094 779896407 487466068 960247881 277964166 568265851 624686809 925887910 350847624 414561135 883750719 609885272 875243361 148623258 123748764 921257490 17845412 279193615 950085310 873760654 886465724 946136925 49337276 231565558 871575294 355960249 110858974 104528935 112425432 554398419 688690088 311382021 935796143 603108292 53766273 412362033 56153829 904805825 832292661 217207993 927371158 536937320 101108974 796554104 311622265 211856234 581295780 908774916 69918520 785832371 475062379 416191849 762098897 265480081 53930301 806754765 400290218 679148506 554639422 57020781 391405558 774900597 614765168 1137314 446677823 808961284 929564841 688712982 375558355 843736593 840831663 342812177 898076801 937337903 885210415 141524339 754424169 660024801 91004118 312070108 974616866 784878154 290647198 440627635 933212723 362813630 462683449 109499534 579012310 175436315 958456524 776443511 978547149 591715453 829327928 169064403 490488868 807767110 858623429 698607379 431191046 124501818 611035063 46335657 694128323 452291197 891865624 867374983 666696699 45516434 362533622 363701588 888147196 762515907 8847644 496619867 294089212 287875400 681352664 178051408 929102368 215903528 259165624 531130199 580680291 296014817 289389028 752840041 90318701 517520554 530153069 870016850 861486025 939134845 877300997 143297991 625404230 613933918 680660730 238726001 322557224 197657829 257696909 714162755 715976729 543453647 119648888 366433169 396900472 682495330 415397709 912100651 82920140 115838439 130467438 74955013 436040881 626550819 740427410 871984748 424608025 770173753 324677355 365879044 988131560 281627182 216241851 473841071 847964430 894531633 797414839 288342348 883069771 277188076 632201011 316520164 690109492 228487110 307867611 521074179 973379487 728542313 698669436 374013442 67297259 937184254 175337078 581276459 670662786 454058773 116631272 289572056 846365358 21939226 31345942 599611570 774736385 342420509 968504636 796973773 558749722 166816967 613220849 499642961 517132024 499451269 79492438 662279780 674105961 615135792 350582099 467218376 924935758 647674073 115673597 471002764 314590949 637327543 80181518 797071844 695270987 771555553 897519252 40387497 290495143 346411504 287423195 317242745 778848940 728082581 861314814 737246964 980447281 61940166 229436883 309387983 619446713 434422492 800640593 413700811 19562335 995199292 551926810 707835486 649688216 926422982 839662172 373562402 160861293 457703871 813148456 813787555 514041063 263752276 669967092 846570387 662553299 118896026 863262606 23781810 31372872 249054886 385567518 724760826 56116467 665362405 554180984 836629286 856636449 36565198 717793338 885941158 901265279 49702222 812314317 723137922 360603260 251673549 601553173 965060062 215607242 854034233 56760647 246484085 942105852 303619513 533335597 744115582 797934500 305105875 831275317 709529519 429969187 895791623 477788526 847984299 900568424 894287875 651256394 315620371 747868494 343042323 222024701 45303867 285948711 467426906 222621596 57153322 357416925 876307766 959388589 407434013 550175648 803027392 456248032 186220605 935123086 915648484 203638137 117532867 260771054 354517278 383055988 305592483 36357331 854724436 649009554 251736925 863877324 725497762 359850246 363795559 631175935 718531852 222774268 985834578 596443872 727252464 486419928 989847575 903061319 67323859 37474730 637017121 960249247 349849112 34728630 589007938 590536281 122102082 210981603 207945872 211097328 169554673 9572350 346678378 348371356 815283076 765977037 185227946 718250176 841892495 144774077 966557445 582437419 120468725 379244855 982751155 516394060 107033701 328749745 123771286 952342841 430171444 658524584 889451744 681367353 658629043 371236037 181379923 571319274 497092505 413778804 772877290 615894018 209558120 315222557 610479745 652681912 484737021 999404168 949290916 280975473 433267193 376811796 838922125 484877461 324561663 152945152 278984265 614468337 852239126 430964432 111352673 226964724 862798224 454796122 226223171 911410498 793492669 344455633 228379612 598236169 453292120 337805921 997744488 445291148 825758434 536092730 372197117 153249289 740443829 122876753 782760132 727225959 874138193 147878857 357256453 324257298 5052754 946497686 7296361 966518327 161065323 450042520 199885080 920558392 299980974 163887244 684628914 347340655 993351351 204717259 345569927 598801606 560760562 961109283 556911213 58175516 58310655 195223016 764954409 493495698 657804802 125847599 289752652 356713289 581374103 922826542 104031458 68273042 382179031 859051870 913369805 677076334 575205631 982398865 502515684 773214605 944470485 738276599 668953455 734847101 390327065 334617346 848182868 979579963 7632176 780568165 921218230 364038122 41354826 177457596 90057254 812728068 120211617 561712496 381781673 123082231 155345171 725294221 998341854 378243659 973529374 104989666 878431664 880929944 269627020 884895701 730258681 207752683 743035850 184604537 976373863 589118266 155959384 533209273 529946324 170449568 248034234 551376097 663764083 801628568 263186464 55789194 275784362 259602091 442183339 888597923 164708888 267230142 387232452 107273464 423514021 789774521 21612445 735462945 649064626 201742265 323930365 311618064 959868779 725619975 531107140 360062036 654736035 670698561 501486163 12383385 304295584 450914794 63755579 75070420 738684693 578769866 595689250 324141066 657693982 14813469 550548250 838966812 802927765 331323005 450940482 286773972 303366114 709311755 377006120 953008175 933367335 615981233 801394910 430068826 90905259 407513239 648179085 756795290 870269123 955934188 448097053 383187254 258076377 443339761 716816157 809997349 124163640 300543115 801231653 613175929 924772224 937710594 578200991 865686789 510445753 771082894 849876814 922151787 77916814 187267909 508550096 149846366 126787806 653914862 897178136 232343015 842343146 529670788 981649069 971915352 942681267 823891361 84609448 954610720 28427740 90583923 718496453 803433496 289514932 387465994 15310931 335380545 955476930 705623795 288121972 188533694 863395133 90198494 625041132 613404499 462871777 188815478 646257389 850702996 262558027 945157476 829045565 79056069 710601107 21829305 963642180 591300665 687072391 291484674 242715208 485646377 982465552 419178409 563582091 264822861 629101076 390041211 989484760 265434530 343379404 686424492 594402464 479496857 197900810 237862267 172838632 137190065 548307070 907456891 503090134 246346548 365749709 154213637 68030741 171092476 516706944 610660769 222019527 39203871 131264348 317759931 75034149 431987934 492601449 194713223 420088886 493277418 78695311 579631467 396416364 699742672 905399242 470045344 35347734 797007212 523230535 568622819 713756912 197813344 877566740 229733884 759585900 225738921 360185072 580381429 565446714 229166785 32168096 180003133 773731638 831867469 317650632 220247863 651391252 268306194 755417949 82463719 229061175 290307652 36724807 815785884 163624460 862707824 967428296 202437500 648815127 847290351 970074512 239316869 131319823 617368034 197728972 710725200 357764296 751539833 474120753 586004693 302595532 905329585 749407249 509016088 754518348 103506980 411631762 693277422 852136785 637996730 902022600 758860536 671740284 63497599 567640181 789561342 975774947 570524923 525260320 952070924 489789682 978563878 856000476 394431524 58287324 287722463 747882942 404516421 885303656 188938188 319477534 885948643 719485226 726852518 134462120 132238728 440170099 332041705 106725813 386166979 992396960 348082805 927247232 626043236 272903611 41079576 746014897 321099646 649229298 784240753 124477889 905140450 922755893 171608360 875176149 375091348 535464164 549806403 121409055 439336345 6473563 72747245 144967112 738186916 698611691 684482579 973937226 575907590 435439178 184057984 419219928 831763708 758062124 698421368 618985815 622751367 794669921 357130291 541928135 692807596 114408482 947744862 466484310 108146140 208401812 333615454 821758647 542802612 584198482 441693627 254665828 481375649 562358522 784588103 115997661 607054216 140661176 535043365 642936016 54493792 117659484 539667964 909467544 888340159 93212741 83606341 896777223 446705036 67096362 215495055 214336314 881866458 326022650 753098203 195813103 793853567 94377984 338249913 376357505 653006027 342694897 52386713 92401315 571983765 711952216 122045685 106998831 799572214 29225383 814842818 851969252 717225862 487035986 241811139 557520488 103165491 326392744 214247824 112723358 97900644 669828916 336674190 434943420 269024385 801092974 860091627 545334515 968840743 527987091 502456848 122491246 183939482 139947083 539389858 22897682 871544182 767014170 820899625 138905228 231211777 238548007 956885652 988581623 708008280 82631823 292027707 292585788 525227640 572120486 549455452 387524942 838402269 558185604 743938185 549446638 490831751 488096381 538891888 451254286 733524173 109322080 648693036 613914722 101114309 911801981 261857476 278082106 907117834 983021897 610100098 172956140 458029504 847144921 632316064 22381042 81996014 770746118 673286505 303741892 974394937 230996368 458640594 236576497 372177388 648120106 196618215 424710689 130056528 345757155 193788934 5559804 891300311 436676361 660707080 521552284 872334129 252876029 781726147 124779143 577351826 90762295 33092116 927846830 777830192 868841554 49864599 845377951 379136401 879391093 844400230 839899351 759400659 940199250 619471942 686335721 4772480 409378851 881317268 631088171 997348275 960645319 530427027 205079877 190072961 861002257 243298164 874504614 271361793 743346655 964018683 455777222 45093863 659259430 155124394 252000418 126047739 508839775 436339023 515333684 860430871 998898350 694081670 331441900 328707779 125306810 240096640 827294813 322715425 468029289 910754446 649471682 561579316 953452604 222548708 734422719 834119931 969057016 270175346 692576455 958910079 840651114 415187869 204840363 883802330 164885179 770561712 466260559 995960945 861185123 744891772 725725296 125070172 884382938 336579758 538469315 505244984 444447561 368902259 650358788 8347611 294253455 360602952 933509398 834410445 921173887 586069837 803211904 357345065 179208076 882431721 500220733 291096355 115011317 580945172 144673095 334720703 475219016 971014796 541947661 580790413 181494450 934262211 732570259 118691458 658004913 155276249 398798760 749087513 44533448 519869552 322492768 751112192 188921713 739111392 148404739 349419273 530576668 112540923 375291189 855115195 598813385 853772087 72944271 124007782 816013356 434354006 545456044 728676316 334355252 508559759 161019753 914683812 39683904 850291485 666739766 391311372 962301029 122639602 328750901 228545602 351383165 772216879 218893751 203337003 669783263 732744788 810207330 93859552 489417937 234836812 75290045 369393759 144940482 426838490 215953465 307203546 122285140 330701403 511867250 443796065 921323049 251971455 9118331 822134042 413252188 750830562 613225205 146091663 699419622 184032208 292656858 542916635 294170588 673895957 348395618 918119421 543678141 403240592 471392381 6942166 341752595 263773334 938409703 215811272 726508271 139110463 646950496 399187678 16555638 683138154 480008554 913672401 469547464 519704882 148192174 439897680 1827386 269831930 180732605 896649612 700888008 69350890 208375959 445334837 833445040 732698483 262780094 410809937 566328572 852860165 318773441 609957734 719463958 2497807 318917989 941888451 291785153 333355320 898393402 273734631 132385243 870910495 582149252 414500602 432250953 653041610 390681297 139293079 393708059 28240749 761757720 55001122 136129 42326680 873361367 986849467 723540352 83223394 868996488 492513262 390093329 795404010 838479254 364552932 619672226 272373506 562617369 261541544 933717670 130894393 176417903 842653004 675530739 302792484 273500639 39979601 827957021 194334714 546753845 278694762 354203664 476346637 587616704 79163371 124903882 510311482 571109195 719721485 282305860 792608676 734536029 509609041 690979177 322708886 912595973 631581303 193681652 658350756 274497578 812423162 954201542 395132918 124309303 484232777 663743603 201413829 181842850 669594885 887158085 983412533 998750276 939709809 666018685 276348022 996289626 859142600 485549224 763028583 586502964 865451312 104515561 224127689 780897233 429023432 695352294 477640577 565113898 779821461 843310619 972047205 749752745 845869065 406441724 986330163 43581204 296511284 44535567 369383668 225071287 17524563 68014307 586599478 326207854 92413698 581855194 155304520 338901817 615608573 235352391 759047422 441599674 197136940 152510483 264203125 597009972 655988121 360136996 187970300 993807426 602704480 217209502 981878045 791056990 287338030 346978328 38689215 351451289 267379924 751794377 742062609 429825047 61470031 409743327 446839037 250194344 34431544 479611486 511207763 940942545 901538195 55997371 473990921 713489284 572668220 119668819 685536225 518141634 493717913 171268531 456765072 973563128 404970945 840347145 844230020 46940430 658551517 170503072 120687825 981292 77715123 477858897 973004661 171939042 757142098 342570844 907693436 843009942 41215380 810449065 342294951 857137148 569995078 646422465 812600340 660217432 920582463 854613222 826994846 378921776 783378206 246983801 484542446 804459924 234306085 399979240 582492785 567014802 187399282 768355540 278583709 514243618 514413572 736181380 11629706 442424843 271381818 993172757 968235167 294195592 905008705 295440358 446594692 841653708 799464162 566336821 222841032 913147911 207496033 75788394 574000483 558720150 401772794 58443516 379903413 787747025 388328096 996836846 396157438 315720143 733250878 902234511 452252118 424669730 697461123 216443417 293841877 542466372 654794208 692063915 211953445 599561785 801820879 462438999 385138532 632628724 210585404 130920810 611266570 692712106 699315135 454049166 40701480 355652176 551161227 268407200 463067837 445152767 223259331 980894526 89759260 597101919 755174016 461097531 131115929 846686760 154586638 341579691 679057364 711462468 864651046 787543591 65960206 447383976 733443135 242051738 416588189 866694146 914617954 278876656 47487811 962511497 149182417 169759051 830090988 895812587 512009464 742090946 831086988 549881726 733449682 534751158 458382920 537663325 885163939 48303355 294900286 566882090 683944301 657400568 161513665 455483486 188992870 414373638 718415948 762984407 86084526 797791608 639555395 353331034 38878635 37366832 931498954 389727947 304820056 967943138 358549476 495093005 158260167 198170004 447731797 624683236 561101502 240826889 42700297 467993734 135395753 214733915 972607619 256618773 271117698 214603122 9872090 796135674 779244676 204542297 654321016 285112444 439843155 777998710 427309423 705877613 238437021 182477486 928036703 992370570 143052764 306744588 626522030 628238503 23378367 576267909 155884779 240662467 48542486 256542996 756135215 168872064 389159925 721716739 495601788 459527186 789219126 817049280 346008526 677130287 431618081 287000013 479401509 520448790 971881457 542154000 662034053 165260073 660841266 470523604 893298066 135531468 734275170 35954189 688854517 791313983 215988070 702500061 80104323 322372115 509512086 220873197 827168325 463611129 606123675 55434015 30645142 41580939 319878966 609293292 205041909 576917228 660148168 936969384 769460367 101933096 844054393 438474004 853720252 548969194 651907495 874568135 432047078 979887493 767242790 849443766 861808318 716439041 578093388 810012146 545928296 948710934 247479439 101852830 208608223 872036112 37281040 904709358 640775148 307643784 182272187 922827795 824183005 272246120 850711573 388855944 649676805 628781188 475305668 953460946 971564548 5084440 707924452 333071754 339636953 941657557 475334920 659706827 676143009 855755236 363002900 84500960 696901069 500238819 597000767 990117486 875364227 994350620 68655495 556695335 685950049 457509442 796602526 572611653 84068998 68431240 226667302 92082185 411767656 60209123 108011786 207278260 851089150 827244643 34176816 736836675 49792468 506857133 935748860 115623683 253677628 26804869 754857987 998161839 327460405 717505819 977620232 783982767 941167416 320803487 781443998 630449928 439759253 851590203 922906670 668671618 840816408 503017203 826068951 431064774 698718526 893745605 268344564 5800981 151509630 381696043 371153845 343637586 287831814 527251235 337015030 953946462 17153325 308026779 250096181 709939495 191468538 53560569 390867219 108327982 687336701 719819894 622780624 280509720 21828065 651096161 989264384 417096752 131340527 292949237 8455169 981002318 516549980 431779492 118371068 87014718 622649233 646472404 978869074 192723480 611753020 706179389 563450221 332523948 865122266 95743915 708700342 4276000 294329001 947857657 476856595 44112918 617721049 935225180 997512288 85181363 349238813 207295933 626538648 616096643 41956053 926445212 519609885 345350186 84164633 25712188 246045185 343436847 293412516 875833345 248299062 622711748 345404266 775781776 758974191 546602443 326317968 655871749 570904390 275918685 63670714 51795576 688918113 166025785 656101884 628617817 141023940 713211171 799542223 618678185 952795607 295824393 232108784 965996573 590247078 274655682 278878035 373097481 738327235 18988046 201992802 464844495 231821937 448579387 496303868 321007686 346633341 673842379 840363955 354324550 730776788 667914232 642269500 337658827 185150660 463864784 46720559 250109889 230357772 473972158 556352618 55759603 541634301 817527192 665525976 445428036 916483772 3127267 572209930 356223045 399087181 888214530 32090795 105160733 422003957 81596698 123479717 596397436 492836041 463681729 827182010 609635837 88912051 226951036 484873953 212607800 163460273 356480598 494617260 439963105 546844018 530542245 867640609 809534203 37246676 989248231 149150015 332109470 259703745 473453336 951073542 538785476 605540958 539824934 702195350 71585383 688888577 539344276 316540129 520206705 919300255 985505790 488853162 611861256 58314060 982444416 508326969 958248918 995743204 876930845 57685931 279690174 872159698 696458502 370171258 602654613 330173435 396757744 537629380 172956250 697491728 716894103 173686301 118173806 369299530 996058417 787424072 516897178 386239926 520791082 356222486 663059849 535823067 419657612 934687404 148004015 683864984 51566101 399791488 916574751 391160796 741954683 220344933 596248443 444754979 579382720 453030725 661068065 758520097 425119834 904071476 1174529 426972765 455932674 555770240 18714419 351744901 495216959 767550305 377748824 732514890 237702870 306699454 384679219 973934012 484189138 718625834 813626816 205041920 28872539 267068077 229361645 620043305 429378596 777962739 944637875 598073949 642213706 586389862 61926261 187158390 633346555 876451407 218759541 945162831 766356111 360959967 855601315 98977933 200885308 159182317 304118542 687310772 447304353 454404227 611360689 973824236 718397542 591755017 599585721 620469867 44376867 464560526 120809715 943153197 234355191 903404768 856146199 935036399 903385181 231957630 232887766 421206051 641183903 60341392 171108430 272523039 603090273 530224208 112388121 254247811 967823062 696433696 929076607 709583384 476581042 91537403 834153027 791825620 796371612 932133533 392214140 395629830 659625271 255863868 201914159 934457401 28261440 299369779 890493587 227478284 667121184 312039458 113662321 845493410 830224102 943296384 652968651 997338439 789718693 111630875 421595709 618738073 499310641 799756954 344722598 838860768 714642447 803245862 343055080 711254513 260525687 193621888 417858611 838005646 583791660 295380339 400464243 448217332 932789429 818486412 391621841 810304901 11545546 530477913 450925576 360330326 570824538 369135843 657938943 711647377 664520427 395023613 309454387 796782409 252027290 350649051 48253442 952339757 204641596 737578065 436769184 602895368 826520420 592278936 737604181 692832237 491073108 396590635 841971998 175567027 463424472 750240782 649368784 42977426 274327372 676949315 901843357 513155084 288149973 192754919 18131655 7683052 995766859 395167513 995143566 114818612 45661229 786372805 573373013 850172732 837804960 588762958 420689828 132921694 997954169 2989758 164223497 943317262 184248974 895774893 344285964 90572177 887896982 24478480 517315120 551452507 160079874 385927467 483140768 653419853 498543726 586288078 990590121 7968305 423135179 529610083 835446062 386089194 808295792 143948812 575872311 400618616 591064822 351913076 427399316 327027598 626431362 634475198 991420393 351480905 46324983 653453827 84468839 543684947 9662371 367066887 881767804 148471635 62321853 581692078 882788086 352318470 853407432 566813949 159362722 635742966 148518133 575030665 203539075 328289174 903454462 203313645 209758049 777751179 245310801 59627900 31344691 814299522 104129220 433240363 8735016 179885686 672441849 708527106 221283815 801160901 376141918 339579251 396519842 900413256 528650114 140481625 720068429 97630446 405085714 300069995 15892272 334177507 134105543 360840429 242289252 532096332 408271989 969904423 131229736 142128847 889842739 305865207 312235035 271119146 938451050 864127313 851025760 369709265 986812112 297769235 97834796 661583802 510934490 762024240 540390026 173504026 138577024 161839521 86219684 434722921 94278763 177902869 747872199 905829813 444752517 98031938 131422233 219200114 489006687 83781035 949534334 134758579 482174999 159643011 187185900 965961230 634418901 974500036 248160089 789855322 115242108 253211693 875619226 563164508 107385334 838942102 551883458 985032162 888163986 180703365 268748551 181862097 546526452 555726618 382395236 158703969 212960607 786927753 858611450 436105493 907001646 696515871 948866890 829976561 338291555 122499207 183079107 182685859 173291174 736227329 676986036 91008881 139984453 337172075 791626270 348048739 761208008 953884661 959350681 753647412 187589569 85501896 172463567 861215801 65887377 301940731 24816815 592597529 51255200 358271535 954502973 8642782 899116124 826034662 346570651 878510933 633561357 793435284 660956609 933319419 609894673 94920852 425045970 618069176 801903313 699623201 273418067 911888752 765177413 651888817 910537742 952700995 566657934 533922231 253225625 380583114 681538330 296249160 504168062 459027779 939796891 379665294 432067867 777142227 527508230 651239914 488982899 218397763 493434015 857787178 511576910 286176698 195669720 38588458 321617303 893782915 336355977 126690268 808238332 674784168 592287988 484763148 414903825 949306204 382755511 325503605 161286109 378064492 572860481 442649289 496028927 534595768 657615322 973110342 78426186 975075659 393832191 378959395 725606696 759676854 995301057 119452183 375049237 245419811 816830777 903287552 142105329 732256037 412550534 465699401 728916787 750795163 37747223 920375035 343141579 868939641 628129265 801963952 653405444 670728170 68969865 51914817 527381097 266014585 53124386 900724850 247746161 315092429 266870559 267176578 772621992 738162485 299269618 919329439 260519636 765100900 956546922 622421879 31232434 83695 997164422 225710657 34463201 850112271 105708323 209087173 585295423 37056722 268212723 652393558 473801287 680997450 308766820 595573145 911974190 22577531 71706506 250909497 935926195 18694753 317389967 914013019 251544204 137427384 110265081 655559202 439775500 56924395 289486778 645277126 477185390 634430727 877455391 290279961 482531476 428827633 640386443 112524046 417893851 609834571 361332153 65592612 188751188 549000331 171340631 292977583 656435817 869945489 525094220 54542598 161443053 470561467 445434473 501069593 937844513 990615457 463238273 436436886 118700892 817491385 443583828 219665928 164671578 882074316 162583551 31641890 175060529 624819994 392018862 202590981 519681388 407448260 343407574 835201796 238704818 437917374 589474780 905936886 27217899 752597865 88427084 763092747 334765572 2061413 47792700 102441345 531730219 95090614 399699700 250859240 662051081 864823330 614193392 492049537 460137179 389090711 921424808 364070924 921114361 788097366 304605666 41461300 137279920 419822510 128764197 731376930 229277897 10604078 7604512 921341438 659739299 895855573 872977255 393051158 497415804 233711857 648692778 388744621 55964086 399205496 92336737 178557300 419393273 498275050 173756990 800913652 109225122 97109248 972586174 961702647 62808201 183238381 598789042 211599161 329142371 391167722 921752476 655952317 292223391 272930564 519486888 32555580 792450585 944616324 142482545 672620236 685790207 925034147 103629072 487580264 28164741 575490034 620569957 949571973 320069058 745773563 690482961 811653586 366728711 980580603 504717228 319567335 322204066 339600358 35360850 218188929 911619287 485285229 485469411 103264606 714149310 503169703 351226069 52903280 331991393 413402050 862863372 35873059 287356209 229056271 627211618 56727694 644190510 258381870 819607722 998671828 986033000 344330361 227584959 160343907 157736470 750862556 745558205 806970917 650590759 22607461 118967961 160403523 317076857 791907184 877884712 74910413 221841602 808555646 705411062 972378311 771336737 108087351 532315992 768122290 385340992 120551041 809338961 5279741 954205989 192973700 899210039 478201346 290549185 599406997 242047484 174014706 475084070 909904030 508815355 491601238 522409294 585092363 148644505 726429272 686765441 651244275 533537528 279334947 464136258 970645737 18716548 232337118 601451154 438977987 163763619 168418952 815031925 186887044 640612541 623187251 821820573 392202852 714583915 532382372 891417099 415496339 164352528 25427007 670595836 176258970 492407001 427413125 845521036 110720523 639906772 517289573 422974027 890111840 996741983 40535283 962637160 757869722 112120785 804976861 539178897 865600271 790250909 262031136 717314117 697534513 939765254 632924041 202167997 776123450 414729206 66921449 784369390 606525555 88880199 336991290 909014782 384475570 664300401 380612827 161132308 141217330 240771434 47875675 679396593 369439386 437474351 328722395 460932599 158057898 982886953 122652942 633551104 502404550 740004270 419878041 92363819 632695426 803230610 856452812 603539112 988902790 911427414 393681600 651710105 292946801 86334939 214059666 337420926 818236974 739880536 735880590 807410885 334744619 148258794 719378043 547183618 235934234 45756294 987752163 119741309 35297212 123014081 131384516 326303880 403892420 803165748 62817908 97883526 584777914 186704767 629537318 656704213 396315162 511243255 684434406 170028951 485551280 498969773 433854311 175303426 971713811 857099465 228420915 629864473 881716553 606189609 515113135 400048617 598563322 458957660 515208735 8564659 419485695 379816876 163940905 787158447 596936692 71845043 257362911 463423805 375827186 911372405 323700582 337899969 178263819 406153583 148284693 927214865 471686166 23578009 516930155 717640310 190103908 970120361 699725372 834282656 314281575 528221795 777298860 101430412 102737641 98539532 336171193 68287476 179058776 367711527 459410142 717193646 265942783 239355420 897560820 116138003 290199209 395859263 301655330 948150063 286591553 755718493 380740988 314514828 907371123 439773646 840691699 340232598 307415523 19072449 573412911 606198214 240615605 338508510 12310412 857647672 141748106 402231366 432237473 81698781 39114382 434707602 914417753 891461019 987355782 855684405 189410483 201511019 362469342 804440539 134860946 328191909 447204648 139048292 157748180 988599567 889923928 693385239 660159364 327769660 592405697 177536950 945922336 753524351 512171510 376435948 806921462 396763108 873930050 663754324 420035523 593861078 545875082 795919555 866283661 781076799 81684499 314170121 267464117 820096689 705735545 719665520 141740036 585886545 338326410 20995746 810381024 680142547 353856137 52715028 712923204 589905946 407465562 982589675 240457101 267370597 244288313 462527581 631349585 670025705 25340863 688634169 801369245 711791802 284412453 885906364 203233590 215546186 905882245 849541934 372861845 815173386 266445871 529351577 118896957 528243394 960223209 764116337 236029950 682488573 574362627 787448218 38578340 453715365 509058967 525204608 377529052 290743913 821184877 317827919 813209356 646232385 653228553 820864061 953039536 913420362 606971557 912832408 329622951 835424742 923225862 544510852 594718682 835164343 273220368 207671560 763554747 206979812 621240186 488508424 120164654 836765125 840607510 180314359 380520305 619685302 47765264 34895739 817962393 314664375 411570466 802178159 853325694 593857141 832371919 855272164 313420883 219100194 7590028 396950832 448599526 730528708 717783360 401221485 816869720 815620288 805938709 705216130 619620613 534106714 421338988 773840956 797557178 405945397 167616169 326939608 357708054 599341506 43422773 605214610 657997570 751607486 422543823 689452996 803100862 225553790 57934106 450432117 328683247 204629518 399133834 793282252 403928471 103663637 948690029 306172947 803644651 756181424 25913724 544412559 195012102 162121226 135407846 175014895 18917656 798386114 66073226 139989605 495246027 891436468 46528437 82201683 745163364 454243017 969839924 978824100 949464691 452831158 240219460 228555991 96339737 197893202 89185693 725279416 78505338 429559543 910897965 560577441 537851936 469971192 110227745 515878055 307033379 357035451 929591124 554959365 56877402 54463312 72910672 307596974 673461509 370715056 940293549 380309900 197170141 111948589 724299718 738933865 411209730 796564319 235982367 495594761 538994217 454608956 191081960 11014871 967059137 356663096 140594170 393531362 103650168 729553689 503998562 370078057 720741886 828625840 506202231 829704558 224492373 71484295 320684871 8388553 514462230 262079707 414118578 669920362 2428110 649733934 307999335 199712498 884577868 532498574 114983480 977856373 926035322 795110632 707647248 608508730 814894727 794315737 890107074 530507442 444407537 694689133 975244680 548222697 336268058 730116196 363890698 457129921 963019709 557071264 215898114 56317806 520257502 792893473 809311072 173784486 969607686 819403341 77432374 126616713 627953869 134369912 215404291 729376809 777952395 22684365 210491564 441247558 287470312 659706930 739572115 412355202 977041752 729217857 884026346 703130156 965991816 249462817 340800590 950150493 996194225 471366504 401745866 157256605 190154925 739342039 707113473 920980834 157879018 462318626 676799063 166004499 302472295 885315886 722914666 522451336 571069307 167278504 668061355 852300541 164331014 175318795 908840513 485913687 502968024 647960273 666869262 794025024 546453053 439403146 351965475 36531772 422704967 731382922 553083282 486289368 718165218 792440265 253474774 809087174 84229094 444493657 564040110 992740880 170607688 379815379 910706140 903989528 724522710 929040372 940110902 161084538 773515455 369954119 754555784 105327610 395384655 220459093 880205310 935890814 679001902 45842612 884956467 328462130 374591329 826697279 882906779 514281101 488281973 399622025 555456462 357890246 592258515 345971593 547272349 190492522 359200092 272319132 715274326 97077889 539207145 141161270 995632637 960491396 902964268 802945805 257020761 880704810 425654919 960884821 404421356 77681420 522208864 85233655 269423458 817022787 500396717 312145956 48020743 640996597 263288783 329140755 510559367 994710048 183469500 94682678 838685093 987923625 823267434 617849279 466214876 916205190 273964430 752646143 285232295 691432457 662387285 293310519 152534849 180603172 129043212 197305207 620751999 398422973 598701329 904273767 749371657 710132383 584128776 256572362 430805804 71608688 378275312 269370034 657416379 547904581 294758467 387443345 474245951 518048418 131922123 218530995 243973770 16954248 143435833 297396691 591211922 84671756 699538997 920845944 373026240 857662580 68513442 946798125 752697908 895013424 106211727 841031846 728839159 699105573 92626308 605501357 967898607 800731976 686962835 259398459 158740463 485070900 428500489 25519703 661094192 118169248 592402467 353940692 864877615 525990048 895419829 773366058 917836548 61941362 257352581 294016101 668585161 920797046 362560151 473944820 65089506 327654525 42695988 60612412 824532910 90191759 494202273 34466951 195645565 267172634 660276213 531595946 853601844 413320879 359392731 253770020 441114664 131908085 817808923 682978194 910810875 678526233 670930170 395686249 973318844 521645423 696933898 281719065 384425036 171899468 882552185 77663641 157735300 304037894 476140012 357859862 184861902 592137031 68292595 980853211 919998582 415752534 864113981 737652745 193661485 404577543 137806481 282812783 593012840 168260921 859231245 800608876 292211328 606773247 9831001 135617109 999662315 930852602 919509753 938733352 791298252 592438535 513919284 984118194 208387513 203142737 182998942 651666503 867391144 798080955 704861920 310982915 614996022 988341055 68510120 876542338 928805313 910883955 894901371 657780629 874533077 164893473 226055794 610173162 70352317 117950829 785169179 503285227 585987140 113553899 55839376 627123571 369690962 275677468 907178147 382640598 498303876 367452204 969370304 253637840 807257781 748246948 194069461 825860493 322717082 893427597 18077127 797176994 163565985 928132992 553359859 408523882 467990043 607246978 741621232 47230704 761327879 92788130 293545230 677922221 418906667 958692810 960448476 255148343 740539943 739886344 98251824 778759166 111491426 873575431 283730666 618059783 570273662 467480067 340202305 848784422 696143335 312301378 124769995 679587233 870075052 979013424 685152386 453489190 30411442 940523972 815254302 695876147 727049489 925467657 307106459 95081719 431384365 95836210 114770069 57729071 403920557 985461882 995946515 736714672 929382023 119702721 423865754 594064962 25813046 44886369 424707995 702353455 643192917 195551605 52241560 265804420 994575889 266381006 434691650 978133397 623543036 804966620 90336985 526177741 717453392 197768141 558040262 46025303 650443112 193026055 299488339 860403123 36614763 970245702 408493970 373007835 775749343 186693431 163392562 19991083 628894325 991777888 945562659 349435722 51702407 176523840 172669241 920741515 456641114 251427409 583706129 823238628 133827176 564372768 454380822 214718308 372052309 893860246 696047009 494769591 800194979 799585694 439800506 730428769 236705812 31925872 875020208 418439033 696768406 536017204 938210003 369238894 620719168 375348282 827997438 740197765 485693086 146529488 588793247 118427285 367050222 890668304 732793360 938427236 645087032 285270816 387841492 816907261 522412400 17468040 834387812 348072505 644472144 118767912 198617030 813908807 139538232 625548705 480252458 587427466 778871047 15421518 998155740 810576216 555124769 953044211 737668486 583824661 373970719 605593773 486167300 270341638 322236681 338046866 44341102 728724969 473936424 552353709 527511682 142915343 494029444 539685016 109827866 803677850 496892262 98740559 432290118 38752598 66408332 303435648 458533853 139794358 31440231 233816618 289073834 326991453 306875821 816279358 593823894 199690898 712108954 725233811 497971142 20603980 562396459 521129677 990198450 22719916 652603884 874012986 394144574 809337529 927869278 594515934 464718226 985984857 534706100 437715103 945589417 878886020 617257132 603884886 510629479 316082802 307590724 36550073 942806030 355935929 346078248 504573241 595173330 682305269 262261416 303429620 567294241 974586536 635550626 463808873 594612522 768895708 385374987 400703386 33126940 60721411 334291226 235129831 363666656 520317164 527144320 994446717 739509288 108496491 281834908 866252676 136887117 142820748 622638212 430579236 75385581 223307328 578791249 134826692 728815760 421499061 662941148 84888323 794744649 373535794 373479587 998409214 247145679 608544029 626143809 265599887 79869138 349928749 370995372 783923315 937511081 745441117 311820242 814839872 589007573 330771503 331346726 26328550 695371690 447191956 896839423 977125389 493234922 648904303 721770194 49695729 194832238 120547869 747851639 287477396 180558830 253648146 563514158 491438979 228392149 698755952 597958292 52487011 78253817 442764412 871802517 169376785 849734079 699881773 395485719 93892458 339264127 596040683 110977927 340187989 945490996 288518681 805737880 565979933 334379844 371520486 841471602 481293669 233921877 335081515 654438172 792491338 71878590 636391469 983219148 438190766 705374958 820245949 629330141 83515451 645882439 292804646 538618048 444820898 370369655 517117664 896817770 293978929 628809096 630378441 414672298 569473066 508496576 216800284 429458491 50829398 517214636 851989096 253548742 441140443 558335759 124007000 821751691 361784973 850706326 529949914 565354375 591042631 947468935 912009848 27433936 943422814 231058890 158509844 148754992 478086912 125342455 402833858 944785421 637688644 243019125 2403911 11286894 897587997 879701250 422480810 201902101 717251680 591764852 526904342 499648267 733917090 699542566 680154009 148317656 466729204 45824746 594019422 429927079 557216116 598352484 667988152 832640396 973821926 80431892 454873048 261035536 426185986 454376463 948695360 13484138 576559850 233738604 106446951 159207221 570832177 675811768 302330482 435597622 267678367 714372815 546164500 995932314 25098137 701657586 706457962 317168014 152400622 640942987 653065856 65440493 28228454 96285589 817800605 527962508 474954159 755040671 746611589 185310044 927159943 521147921 41366749 157082235 767464735 411643900 165684696 343332417 941424544 332541886 204219199 826412615 111927045 905952064 63173455 501714424 44141794 431206547 467671281 518421125 592781126 208269911 658995880 855241586 551351077 165164831 605420066 937089805 284650642 209751641 813125093 16127304 958944938 666713106 809463542 619888612 199453244 776173421 830934405 638196935 376702588 404000844 80626539 659944829 164582984 268569952 414375166 858443239 741629779 76289961 126233279 659840965 536170785 709949358 566501120 585241386 81186132 158256759 368016400 243702751 191919656 786280289 829730474 364883323 767241943 427985954 897237582 297966050 145161232 205987422 841361896 912833164 304083202 58747426 854139033 19432029 867354724 842919313 481461552 289529331 840717747 987896027 377311495 256964881 280542718 744076259 488021116 860903496 107598918 975081806 682658373 849255932 128579900 252675806 495437601 414877380 467368102 125831727 937283854 587623877 397730836 449792860 236039620 785896550 577097231 648773115 110175090 407303722 627636164 321254187 146457223 924381994 677891391 687118880 810778425 279923111 466394085 948189521 776295063 577301202 173734558 533784635 296457508 713061024 674708213 968595949 696940338 39638076 700350395 776155409 256225609 349032532 19908540 392245218 297776833 300095409 125209334 950946607 266290975 536148286 620479045 422170317 756098501 741420564 549982001 442749647 220550065 346099302 122473941 724324890 522253391 447026016 147777225 776148278 572699553 1335218 932175597 147459932 946649406 831254269 320258360 394042534 237147215 856668533 467460162 192883840 819555079 22189010 980675722 865515033 549151457 390840360 261803804 950193512 235850141 795355278 288446424 985398679 423921329 923492090 556581668 849939388 29709082 123703836 133302061 630904909 278648418 100305464 606440605 603638776 966582113 772304584 79321336 881939704 268211410 654614562 478688620 255106767 823509660 731630805 649561791 382307289 940853575 180856543 834518299 420604720 461987804 119770197 798808240 697552678 114704838 571903355 51924527 72735600 684090588 122382503 90623270 512822539 733031667 687143010 351433459 683781713 467970924 883763439 475106721 230419900 549078587 585291185 227957501 512854037 297374374 922640290 542505541 760394503 908632987 84051592 451058807 490625936 14623617 189056873 94412896 507017884 609958031 131798619 786015154 131969880 631116124 71050728 149131017 395742396 501548214 682716490 3435619 484206799 243914936 957324475 134324923 259151295 806207025 485496016 202424066 787607045 308361628 281191929 171729051 100924653 824476945 396869728 774365574 792871855 672092804 906169054 399211000 83170238 920939983 193622281 657087235 577055853 911687993 182212852 497352139 392780726 867499732 455756486 192226107 356133665 497383302 157259629 878142675 205531530 705289814 834406312 143976656 430184538 370847755 201840524 169713628 376797705 241364828 165508624 990980604 911040458 532313924 523858720 700233899 69801953 171474375 823319665 505613176 642753453 405339416 745150591 248712907 975832762 518659680 101036437 971711119 128275434 17022685 718955228 949492422 435923465 320767873 801281319 848826264 83006670 343815582 814215851 653237929 148837760 619224815 531563986 323158248 863500622 969906817 348695927 485879669 528533452 79140541 272775128 859729512 726304048 510312877 158280426 964437209 642647453 892430018 598257726 548556450 604444230 412473494 401027485 296951642 237013146 346092762 102684017 935668241 685676013 105077131 637402620 95907835 172188056 312666790 976503855 7480425 253173756 518231268 486328091 282804545 324034714 479707569 598590376 571935695 942089263 395933206 888929075 792016334 384930213 198091594 509089467 316459897 568804374 791655530 527804598 322660785 435191845 304601462 16921075 702544281 968895621 922692995 163540945 542574983 632804563 918462422 758427728 596092237 150903370 758881696 509238531 409254571 113508646 821953925 124399600 414174387 969823993 707886063 968161781 859799995 520158598 394340378 944771221 969218617 264167177 50774260 816948218 409575892 734145609 484385578 995465488 511373479 589915322 786378816 171285182 428396132 535625964 488485549 115682538 784742458 936490569 586620200 125157435 260193477 41922076 366757455 177750739 292820038 381351031 94926727 785943121 891916472 278381092 675031138 909301570 47835836 200385177 945987706 311576186 381700141 787495615 137655482 934251005 992178488 830816548 401661518 602825329 703188681 428138310 42439764 151515114 327066422 130545444 15108325 791417447 87552091 792243700 66893412 536077267 623162940 567206985 290409482 127208157 346071569 376495704 440525044 211717450 780248209 422582607 801072539 397205786 119813409 778707970 442401035 697762791 684725653 208211313 513324603 951271201 555760737 648170213 135595386 405046000 961762805 948613187 315111568 883394154 473455992 104596070 83255131 594955740 650283011 538124542 854271369 584942047 293926837 847567026 857745223 633916672 89841948 489333711 312514141 213114005 412627452 76984892 87099568 270189972 383942094 500584967 175811129 929943071 600642492 607448046 529287973 839734631 736495222 540306749 594305054 194475069 290167037 864110563 210344753 336203015 939881934 269320761 384119565 472373256 494080563 846571401 340868106 886410688 246126467 855491987 281450237 781666944 488532522 292920090 304692107 734364228 272562645 761557492 827954039 274563944 553342353 140335369 916326740 822171658 648403730 866508331 337621155 652978852 712064379 936844498 273365073 405364186 771394147 355986092 646266495 552076727 642796232 30370102 185893208 862429052 561226989 81799614 839118026 213643989 16420140 798076917 596822192 827632875 199358439 359523915 290637984 695987634 31857996 5799073 712311635 225194195 897187127 260268055 947090243 655792242 591851191 772851389 988710040 583584144 668552168 944584768 211404687 574718004 412497218 259439536 680202751 612708523 349304161 981018985 687500476 190347912 354762219 936486365 361188316 98867926 882051844 399624729 490193731 26542855 121924767 651148700 515075618 560211945 382722322 195590758 908527472 322883375 862328251 816345235 829829153 656526897 623345560 644933581 328423905 877935790 328058892 260554002 859307054 350194004 151600950 923092823 256343784 938866794 808499216 563391876 379868256 297968750 955088830 249427266 843398721 238336287 193913438 860177175 283692470 999122167 13926333 328015524 242854643 176636361 828775950 37691613 688299369 781935644 324674942 963506872 931201273 290842268 342066989 160752126 54118359 174360066 177769212 799354107 644204615 724865076 558907521 520010921 190047645 956224857 276436024 177177641 764901736 832107735 221220505 264649779 273192117 959987910 899418533 862088976 32715388 150534507 853513651 601555673 129348897 139293698 655955585 502581387 937395374 996128676 519568004 348489028 519484264 134732273 155200939 624174702 515125002 559331034 22123605 657390672 359435529 877896796 874198269 760130642 428848085 927438877 913059918 242986745 913807635 376756595 923399698 945708171 810024392 526147652 559675560 202835343 776160230 489754000 995202959 984611856 119179734 168885795 467424274 644878933 770764165 237417772 439713506 63729902 953305676 975944842 199122925 18945921 693034380 504430352 586216391 288067416 396888943 64284122 955653755 918177335 801573397 19327369 534606173 396657848 433918529 710865501 658759607 912921582 716026300 259585749 799103801 747449633 635794849 42950739 429355547 921716032 665800269 58306043 767619531 174984839 359637298 478319204 665181126 596735502 805130566 27964627 39552684 421414433 806256179 880658673 369247269 290345536 147052042 9749643 756134151 121512034 851778038 117016641 549867773 935878171 433861370 642055191 846452844 529572640 108086677 771843463 920635054 188345349 893074363 627623418 127414870 36685911 390838422 585425510 246302238 130332977 753702969 683016554 270188536 782109213 776986063 562055284 763647087 129313141 809051372 759310689 226859162 711220007 72807151 413386842 789801262 851022086 667085125 348474672 374705859 842294359 6984709 722887887 820416336 709550894 888322134 954684629 226926505 408790653 740298026 880950263 372754312 538811262 444291213 580479938 792049104 889606439 911415919 319707420 965029335 832345266 354566743 590889266 972504371 61745193 572699720 502776120 889452500 906758381 612709581 212545156 744255604 190694829 40401789 323934797 658011496 657611659 826776465 215150253 968843435 151402361 788977267 659531325 336772819 690917634 736293058 298993831 211906807 815459704 902700251 475841946 634280733 884582720 811692093 365997457 437017799 164484978 148752211 416504706 471098023 380071172 600522982 173379232 529679099 981661034 858996574 2564678 541789476 482692607 467329060 581998940 6491034 524116305 732753090 905494418 27414048 103400286 46074880 883934172 924098847 243783638 806073913 289815314 18155720 720540086 297729792 746838980 741158923 108529100 73464678 862317951 904311304 304531026 644766000 667788876 616054564 17098557 187788921 9321329 59392972 207678011 164200220 731070542 879539806 106487856 20979341 297584056 177960353 115098965 245525875 419157919 213794142 93082438 139157465 732967033 541913496 712040206 446618498 657248248 103446040 534597295 474085452 379325261 20879911 578097123 879745100 802495938 396372436 322172471 742157428 257108092 292897826 365985168 371493541 426790089 418695336 263745120 735669081 747193860 726365050 298022997 281684596 764753392 915397299 216070266 160084451 623398057 593812028 639666868 509905650 471698618 563602140 122273237 795873637 475316545 601371108 945126435 892276407 800527470 454593533 365135349 862089140 81897757 630335378 516253817 880601600 284553555 762916055 531861741 600111635 271793919 134247222 452513883 838610115 776419047 683133955 368723102 842218643 409659703 191517142 780964997 141155484 886797899 48922181 895006169 906898602 737632711 740584808 696681719 838794572 492778316 892978147 366237904 25043954 54662158 443010261 962245787 211322385 119012705 477635815 25449835 702764921 943188375 519710598 805090354 407135112 806324957 292575920 549892229 178656403 349433212 686732573 544081843 140951405 468562550 804319947 37275628 109428547 834856376 299395912 20509995 789877866 780384503 55220952 832534285 33029677 37547980 953752199 195490625 452088949 561210964 738155330 691240986 645271304 394338524 850897095 508633596 182833566 113022114 377151885 458543747 4226481 915754325 176419861 646067735 496882052 415324186 511123995 891784476 800047526 867523562 961155210 291092667 543373759 369807854 615846197 799718043 443359836 39168369 941530259 117281759 40564425 746476281 366397472 281836661 791396681 873985845 148002636 261954799 674469917 673726589 597856321 938137391 432362185 519030106 281325661 247171932 43785154 600761725 563023634 561624882 120437439 212575964 340398411 283832873 53161069 751833814 881411190 480789683 445542504 844577813 12044638 881258209 635615771 76137820 486560964 420400939 122704507 400630230 854616754 111116329 466592395 543047751 14713414 750765085 835635245 41854644 839624628 187297237 287351223 187002059 346231623 63631976 424035634 530981612 956288768 690666655 966233999 840972816 170230564 860076763 967392729 198701570 888354657 348973261 985655253 728482733 963838185 283988332 918719448 997960802 523951919 217776112 519248027 828536058 758100918 454278601 701844347 165009664 627803450 12613944 63837554 359905953 900457766 857919255 562980890 320880449 164855019 979351870 919111867 664294868 615888923 696952928 126158445 798746779 46907138 745255259 577387455 743995160 624833295 221356937 902606438 56245721 68048827 422703002 738916504 563845875 970009911 368438641 503672037 508677241 604269644 517721988 635105827 769969068 1144659 381547623 597995866 879205040 692769708 504529450 562194337 980687969 354253231 29537299 93977737 23456972 916192204 679986519 162118798 190413477 55508312 496578955 269188497 508431109 936936542 210290423 513505987 756483384 884001705 892805969 918198342 624154632 177078728 323723206 209304401 885815990 76031142 621678334 36318333 541845180 952116713 165768241 968662295 242018292 90064538 466441373 814894965 8021620 241008903 754776926 799011589 935514658 651866279 462242860 52396799 223759769 137146333 953610072 891396778 796711423 194356993 238160501 989489407 691985707 136216126 698503272 766225462 333839365 215378798 799213654 880661509 528636235 339968037 332653019 555787341 861784604 370558206 351472552 119594739 428988447 513179132 995304519 960242164 93912150 332600614 751570009 415167896 576823355 299764085 732112014 158076078 146593518 510862485 750647157 94257601 711404192 903986868 987476 472331859 688603563 802733055 418919755 170545983 576249882 903542232 158888402 535199586 155595492 728128038 872651637 363585194 32785627 613726608 17517258 872150273 616425916 868457199 392453621 492822950 398624288 711652112 742209122 802056469 482249898 769745409 748993217 418637895 219841601 402745731 155416600 106258497 129204400 349061689 44433634 280020902 640210422 627807010 74837931 897456102 582741895 648891982 932449347 685087581 613065967 750023764 922522404 350207401 561395118 904293265 435662192 87919817 990267913 459198537 564154430 368747213 264478185 990871416 5523560 859901152 392093769 93948126 823448582 150746635 530696374 898182243 361040356 98978351 495038133 407978323 287954609 129226158 584372613 654795561 829712422 784999265 424711655 545456752 821610450 865941932 429658351 933770003 518388758 11190448 713958372 722322814 511345493 549203609 480005708 710425002 241899163 390339839 761436622 172759462 222903323 200567447 196002533 439302181 393029253 396756033 97835017 461562901 875298741 330343537 471692631 468531782 9272359 559444265 409607516 179556055 248928262 268561937 130880077 767331959 95822505 578738749 709060493 287702988 406410172 832482220 479606235 150316717 178382963 92149909 509568501 259028939 490330444 39713058 173508530 374730958 552817329 112002459 567735165 30576376 759341399 798148585 827674288 10356179 652408399 407988471 687404854 562912135 898949325 829265399 48592044 585813888 672879589 153452946 570204882 63587111 410112776 100406076 342507673 679596215 41215527 884480907 876316720 143373767 495795101 514927952 735948063 836538235 383956368 414328214 443351924 940352175 901903528 430381678 938236645 926421789 757981772 673576901 148779850 127968768 621931839 335886809 690614727 477124445 262777779 368995399 509082059 316568631 433093695 67071813 650515607 386369261 225529831 422742018 256348712 807178098 305938835 598350523 579888031 624612540 913764848 658935892 361990477 144909167 869383342 24161473 189980138 529275843 813620941 207611322 123458726 848748570 692836386 549584762 818724434 929411664 33350160 534441549 788146818 61563276 347084855 466728032 122956678 438816223 361807413 966033384 467046579 264144099 505753204 755708471 957860258 902247882 181894692 558670647 833012560 812809014 136724933 243800729 514687722 202524242 895973326 679876458 699031058 162748175 94768093 485536091 889717503 77043834 813565439 494187506 551219764 539039288 664432024 714883112 215485640 714504727 677614827 50100552 311192822 834721435 882500343 444506703 575434949 587205259 33558173 364524092 708663697 293443189 673384437 592548227 412236067 25172763 113315548 497519854 489964455 629222377 886597653 628480836 994124390 191516213 738754287 755885679 667246187 618780336 519666824 130678446 858243092 806364810 480690831 176456736 138072338 216173422 116712786 231660490 715324171 511388448 897440822 78668267 489743507 124995606 360331566 162005004 96446280 425116328 141418696 524938325 36686144 111143032 308704627 730797099 280913772 218975161 25701692 462328141 708565232 723190635 288556001 399995016 355652957 604180583 378742725 253124385 126387682 801820609 243358574 515949197 382352771 427031848 909259909 110076301 527713015 200835779 639136709 83518630 751798263 952541560 111343859 437886249 249108372 526583312 76958730 764790478 435008404 295507198 215013139 412622564 7993954 243905649 777694663 256538999 454813516 940219096 36119033 420039450 971306003 841335787 715723444 910208897 398491123 460327820 144763418 704266628 640337015 772890851 886325447 80381744 537479599 976563037 994297118 254233133 23134544 636917150 450703739 329532399 20040705 133345935 240872002 298148485 817132756 985483178 915471780 347423924 409687079 470012041 5459848 518111123 558240972 22444056 219426939 503764640 800271709 931347786 837750186 116374617 64579753 170236697 869623853 185077358 954503058 193488655 299477520 981032105 924872460 122482247 42359962 196050754 145359773 307790393 646018242 142220448 224355894 981723971 379691185 141264234 104384365 943833063 443012181 298244356 186799858 665118084 428055565 473981818 419851394 627028030 870187951 432639703 839734301 228783568 988119749 574185691 742646760 989055556 29080976 12165774 301908285 468291288 490765515 175277868 562919004 880795214 93667511 501599726 912588461 866764614 950862842 24652385 377113160 854549114 850815459 605195831 477609018 121557624 855889499 961122052 482235937 772671364 360823857 647596966 111913459 501001299 329014335 419448135 9533415 273529726 964367977 709342272 138635801 874586305 954477896 770101543 295416380 304974493 940922730 653560228 765901297 884879657 240510528 246217698 332103689 647790091 210544013 862651719 558601340 976410127 49253799 385355764 117595296 692461540 412432360 395520638 900896520 778389913 212528092 526997711 272429675 382178607 95250876 883155548 123578591 940778720 948283617 957503441 197037807 973946800 43566880 822860890 10764829 896760120 103740556 13889665 512783566 385135317 831709779 762207249 108236502 609705804 206020534 75409501 881348060 712771188 551916123 734061711 368194618 888527879 272756078 719472170 419188132 764360649 754269210 105083987 318246612 757183903 208592789 42417226 851458035 982433641 245890113 69542811 465458130 776290980 792966647 298571019 463760777 39809015 930492763 665298815 421439464 520861023 856130634 792025200 484293009 132007735 747948783 426663906 358592853 281928481 448608230 992879997 517773332 106358826 409580658 217992653 979801969 139761118 17625068 777922934 854571987 876400710 552177758 43609278 695611676 798639928 259536760 454614245 413716908 513364164 415465247 925301772 548131384 425497044 196901862 98982853 930670734 795947968 172214623 920469645 869461665 786936598 20264786 560058759 897088413 689661391 662623945 39914497 83850513 666791661 266804135 528452445 461830451 2207442 87160298 339701654 987901955 418023005 432525164 104723324 424492752 354137419 607861398 222523177 259398608 172083163 1917782 422193650 465388065 720028150 133987417 706802312 146392690 79365304 983537354 237666991 513311046 879002483 172911969 630228473 832625175 337278607 468067038 802645812 220993371 845852017 455932499 932213591 733046456 61499704 973679624 54682522 366603186 336101680 569962547 669379799 648232039 366635014 512416482 456614214 720134187 518291073 162766893 123117988 152611940 481584119 970279145 291055201 315751906 820427557 182485775 52524624 31532881 610299196 305100706 122807051 161020759 433918170 602687707 893004513 436385711 141895303 393783955 514364722 25292139 157531304 316485447 813193641 459430404 400182005 929784407 976037881 239024844 848002878 393609429 740618870 153514163 112972649 575466834 928108693 186848455 76513674 561152603 680223232 957101044 516959552 107861081 586952915 252727648 783053092 941635 123027676 972626101 900571696 387088280 742123772 748731874 551912512 905581729 781179296 377415428 870361142 67478372 356819067 141924426 833387298 999849065 170074119 369583125 372420205 968989890 299304540 895727940 158966267 703776313 372985606 768478560 310133156 882230974 546473425 425118537 356867596 715449725 189997072 549813368 186205868 163717163 447909179 277848191 867270260 152168787 608860354 274810080 205599280 768467923 997892362 150514260 953448152 907615132 623056464 845497848 320731615 601310401 169657325 920644799 696589008 906738119 290474213 307548497 226497739 305180667 393212820 213233142 365103797 387806085 303042775 736632203 485195912 578076076 743744587 902485304 922221657 855724735 465718737 436828348 861622759 348159185 406841056 428305990 338489116 972100018 794352384 264365785 320595673 800242910 751427783 385347985 213562434 846703381 895568540 224418945 677101590 548572927 813313917 121317335 174467030 672816147 961846153 508119323 795275153 478544310 386418629 128093046 337714984 95701848 267504715 303011913 369443378 365076783 657560711 160635387 816875163 156162656 863295255 690213652 880357623 572562063 938049500 738270665 200728621 528743786 143767510 472040293 860594419 123963400 670604922 880291125 564740284 601069425 80231381 354274010 931918474 984815872 907702267 857859503 477152417 735139692 912870628 434617729 585805307 396721450 341513580 42053002 933294503 232544439 768537244 466033983 664540553 142667199 574051259 579152241 353891665 708869597 598845686 266875464 401116339 923144544 787514794 394002980 19737709 119582448 614913655 90035935 268683593 442147723 6348909 653556544 180686991 330265877 178134649 397091740 627412126 984329702 334787836 100277384 895768777 16870103 401705066 123772759 959564405 567476350 203028056 455682743 497793707 865342658 386648374 957783275 752790887 177373373 185683386 346657494 218146186 907591155 604327472 82572662 970429059 121303361 314581908 726917702 600685064 129112412 489768269 712194735 813816260 148305961 726731461 907716101 471788345 528441941 237472229 272184868 229706398 409488683 67681690 118924600 226791055 976719306 43259617 363235070 215868610 76157057 979308510 30946136 414871867 105708490 512268361 838209848 912414030 253140332 118344620 370743928 342267887 178083446 93124362 94044684 910582164 124031409 175728420 176639647 445542607 214257405 1442253 598011603 139869529 728846250 667361426 909954135 917555171 521845662 929474395 306512536 826811602 678986958 931609794 468727621 962986203 134468987 24435349 395596682 820226391 555130972 110478594 42980945 155636283 929027089 269066740 927551982 704739683 639303 234790780 956048912 43292819 456344558 82937592 951941900 138791293 874819000 739327351 562371277 435223319 715309420 393555051 604669626 536909436 280636981 846837992 734548518 542567022 942336375 675435200 304739370 859543744 468799169 773263679 908382285 558254691 900701557 904463813 223718389 940001698 240076761 602915449 897993499 563075790 6332684 846695483 228340220 690211682 996582285 595789954 835423028 65060862 650125010 830980984 684558084 151603325 668835535 746930927 505207121 309625332 556539713 504404456 571461456 350502446 240049422 668244482 962036516 335044473 786417366 304583157 214591452 101874598 155581410 766739556 333901891 229984111 308162165 177433068 959659152 266809469 97053658 790069489 879205760 829714437 250699374 73661923 854385150 876579865 327836549 624169514 27158144 301901465 324670260 643834674 70316630 724238185 62132044 566086930 70235521 239250052 750876396 953013745 755058167 518354864 428733362 147814266 866272361 703756575 85442932 522618585 481393903 444827521 699941038 59450817 437257578 873888546 512090055 937077545 303656866 186554635 608039781 896545064 76135517 714354020 799042139 603461657 427456716 372981964 167797691 486824890 474740337 486275714 498436392 918942906 739391992 756750282 703608614 344665171 610072457 129725431 496774839 277377193 565691188 621925445 208635376 312741658 994256399 752596608 812904229 272302972 983989633 960718540 689936409 515203541 490377187 156916796 23485678 845026088 697340822 283638294 236587655 409056945 491734020 346529175 831572074 835497069 96369889 238348780 762445119 968885157 57687868 41300521 922992232 56722449 576660106 802958187 69613449 193178136 160096874 707393102 830459537 478240875 565505375 150256232 344446638 958159028 976046379 68267457 162453228 420224611 18234793 191416063 562268710 96722641 195393296 145805232 780475456 629801394 79151465 927380952 494890482 822573624 205607179 925780829 172836086 536919942 345367901 472236575 967998624 517215783 416364775 949270427 338367645 729286859 189632687 655527937 450645897 782714138 434513538 944289912 654539341 389661581 504498817 894722935 429404504 518682702 843834996 877453 309846733 224998975 626664618 297636320 606032554 500148927 695624370 238315746 825351128 746286151 134410055 898503420 594309740 120001518 61595129 851508788 661990539 523173182 327935382 486316295 324401245 253397116 561715582 283944174 180085295 625659290 414691597 319107040 89064311 174327134 528800227 303994542 227577147 130393969 377193271 748056529 584322638 614645140 996309028 190056683 696160229 54428521 544789974 729159166 42114002 454532161 990025247 89756625 878570581 725468144 36193785 357524056 233686647 301098093 540633741 532731981 895481183 125083071 856073481 660117987 954016804 309001777 786695383 647976284 727378223 199525562 117821148 141560765 239517241 580672336 169649378 650102667 107211726 845227113 81292060 87614385 217774909 164025719 230013174 170795209 425126058 168297355 118834513 748520068 645590548 205510490 62645151 455181065 256336054 94920204 957040665 869383825 898377431 682910067 354005694 342846302 393447395 778312132 692407598 185743702 914752440 845974126 679862789 172252975 202706040 430457341 42129283 999727921 951610708 893013336 339027129 451159131 291195022 227067688 464336359 584180611 781026559 551869566 894511636 565809279 925268884 606062948 981027399 149457763 856957582 377275850 326827687 964711508 49408807 219900812 699554789 165795376 873081835 718779862 805185374 148565762 515200885 69762211 641046855 215156960 450517655 247484934 60510872 914761293 619038453 595431767 386801476 997868673 441041706 588758621 567549738 410120391 101792065 800565097 529450391 464401636 396765336 102651815 669383699 358668779 920307286 847752174 270203131 496211318 61603300 191773963 469385220 382022937 325452689 824068440 581601434 999023326 392932990 708392151 46478071 175601501 79578981 775831873 604926029 689820817 263452874 29169872 624841534 40907639 717080902 897263332 553869431 179991741 519830295 654173147 608879080 901862782 862902821 563382930 50598330 727986337 528800228 756864049 326097653 942464179 307791837 427264595 396708358 58016901 638775024 490365806 351589896 880885358 196280475 623219696 446414358 51657698 888254213 809280022 895726794 483016406 884207408 851832831 734181410 104502716 648770004 852152598 597328576 181418055 18079894 182175721 416629335 479442100 948303363 248344559 994850136 516316169 370618688 793737633 666692033 846015330 828634481 333417243 655911781 68567475 426523183 47171136 880679836 266384801 845105977 560566848 284872191 139069130 442522555 847507608 246170937 230140403 125408587 64659152 418416229 454226235 779794523 437906916 553548146 268199911 371120785 169177212 694721606 901264527 144941822 460873110 103668988 606803832 762924320 297402966 962035754 333942360 642955708 828631556 94123502 939953800 388951797 994217404 297388594 315199090 267228305 96913645 673703057 632174042 933506204 876148993 309114391 122059308 38527044 407855671 33184381 676047986 955607586 356900501 941899956 766022225 590058780 978718325 418974665 762982064 380979068 526301019 440966805 336338126 180295942 842828161 244097814 161949447 44583552 900687726 222602129 13503311 154014495 167920894 271904732 308671328 598700093 611900411 324238979 169066886 118029924 780116210 663776431 74611022 250209260 808176846 481187195 743810047 126675998 387668588 160864739 953904832 470520952 937367239 335337184 310229305 564089994 943903953 887203142 543917535 124492920 952052193 12089960 427060512 160664697 42594665 410885893 867898412 837417358 310267068 369492380 809401328 780192768 95383099 471468230 554791907 17911618 483426944 136511955 96153703 633174724 623149272 315698689 205106269 361570166 130457560 589920994 142537104 477755135 403015460 108469557 153952578 619831234 82510516 173793035 335117318 688589531 223210513 192799414 394837040 844132411 230846210 3656092 439907688 318243421 791381682 757575223 222861677 41276723 96968875 324210963 392326745 193248136 630017664 722363202 95086364 274040989 305053422 770335989 434577011 802022140 742008022 160122442 877317755 216085776 248548634 370602650 327516653 340593935 145908270 100399297 515813047 152888712 740922077 8695881 343350317 809246578 247364338 447056206 382586158 412357819 277974212 155081300 394053679 387060197 493102409 759496654 325610709 786353396 920834975 754822695 516159050 456973678 468097778 256844134 700247447 789403660 37256687 120992548 51599160 653760068 849293112 729118764 47163929 531362443 643086746 623351125 515771605 943064385 549101618 126962151 153290620 722621059 837753738 444282270 68169012 695076241 565831626 547361262 793608351 645832106 775430627 396907959 897154006 401016390 181286957 800956872 70569397 440676611 580284482 927844762 558783359 83740061 823698690 510393058 668429500 236073938 755264589 104152949 421788252 987225569 74242615 46513489 206510497 665661213 328322723 111861322 697794817 92107185 13147532 476849156 576511049 921941277 918711049 13135398 838196613 931644206 851247792 195083821 810229347 88833330 345289079 942896003 225340646 350780292 91100484 244730569 235666624 157810148 879390138 102289178 802785984 789355394 624719476 208520463 126277874 744736582 907956804 175791177 119923594 241874661 843781750 96815879 820377186 4459916 464422630 168048656 373506585 406111762 216648384 86785133 404288258 635869436 719439762 312905758 811853138 767960532 37882735 207295174 254701098 68128240 566029728 106454932 880249603 785200999 152474110 856424601 223026195 814373674 743570572 214732303 226540978 837189307 45849255 536292073 448242685 242915952 14803990 930020712 296717870 886300149 503369210 202440979 359111941 769902648 87661563 911525066 692746017 680746793 887187327 396508392 168319561 518922391 468026351 787237475 202976802 780278294 41074197 144204760 320228084 569166691 5606758 198274957 649194921 25191055 225428370 608874693 565566686 383334611 860233059 353653421 761412232 70674237 768849728 573887437 501564727 836229885 206572429 327077996 798667392 690616487 371487813 921814698 794574466 928975934 857753818 554139464 338683702 531561773 426400056 333512045 525561719 189365577 197304207 522867645 906064217 585862363 488952954 598483549 298185138 383632285 800478651 506545512 394441871 862758059 721982048 13894097 963679888 702159129 397970850 661340670 320490464 5203735 333880865 832364399 405787320 346853015 656173440 694102464 399268262 579924473 119820299 823469136 795135324 488394302 746121175 803525357 234015105 966340524 172752687 350576847 663107221 753665447 112651845 754258486 641873496 815525056 326405067 955899171 849232094 213044356 956272842 821841126 581968494 405349090 488808879 10818233 16443138 423599901 913856422 449357310 739768838 727220740 732809466 913558470 845887237 104931835 704792425 805986397 959612542 209952296 714344854 718593573 607003053 853119289 918577005 244160466 599823757 25630819 279174928 949692089 607003034 926489505 662102279 733005589 680984679 59965407 768360462 906381153 134373654 840035697 974690104 703476263 169419496 723042008 102000067 352347226 520062792 926463508 337498148 559591372 235223880 122873877 592595847 107735388 624994936 472399466 353241053 640126039 459534731 167685647 175489069 757602387 835294143 187615757 223848381 679514036 697347718 466560878 947466708 752174951 677525259 272239673 20414609 177223964 813580479 800869180 149839868 313839267 199863064 195624573 411369366 224910809 199517448 794632746 938342593 42916262 586859477 316906894 277923720 699797169 978106577 848404715 342252779 416322354 677847539 38091256 326809819 216930853 462755012 772063333 555976567 248458976 797253278 54580011 295866170 355632718 361274170 500637861 665078906 120486721 578782250 210928205 992316514 881891125 738237005 525145349 244187595 875768950 645270866 700547244 600973933 471572353 128545887 931882866 371684075 1886988 674805642 881213255 743362390 189228033 582383287 495304809 113450328 228163072 508120134 281661725 932355733 631714331 319204916 508074691 762508109 127976250 226320688 396836111 321923245 674318141 601555538 491488715 895026426 792201147 345764228 685486777 337528597 679340564 968793539 784174739 51482154 27350837 677777468 407699760 198565748 363953647 567240419 341707550 287147687 21446494 209808129 836210981 264280811 683704908 156088514 801771348 593118799 252722626 558516976 862824918 242853209 60399381 694420512 405125956 536732560 73885670 217441117 921210009 823276701 812605093 406464266 688691378 534221579 820157847 158643204 510482220 443217688 476851298 637128637 348253077 430024488 155987040 542094774 316353939 874457676 93338332 978823132 594102230 633856467 398025599 634876573 833043116 659242208 998652868 251093265 631900971 963592756 530792836 503234163 89341173 63429950 824283295 558544458 266956121 654735403 708210538 747463750 367838765 624655201 256640276 487001450 825994901 620827214 452062119 467070453 402217942 546835433 729320432 784241738 889613043 76816441 440775340 505816875 963951582 126839536 575214427 482806020 397423365 849989063 939523701 296365842 191755970 296952867 576389446 2665080 126611695 819233428 670901493 910258906 798234568 886829112 797897492 826665866 153857948 300421175 70279247 49478939 8768496 458156922 82579068 246542250 430235093 794812616 875187104 169935359 87923196 782349356 83412039 216105365 580760191 387651799 234977803 640348615 865089994 846186643 19814875 902045563 140293830 9000032 990932939 589204418 683986774 220484132 472399679 459528269 468672935 778375002 158767108 704349417 891577698 562186417 586063624 5939604 237002785 563010403 821496390 455929998 680744294 937329514 358060966 859334975 602406416 388245282 647468697 928558678 547770040 869060389 406776783 285273734 281314446 288458786 211983211 885119734 929455365 247771739 738611501 909069921 513609161 92879137 382289693 817347938 868518878 108264596 949164458 453339665 964015017 249967017 585232520 163604724 804529903 973708325 319390759 456069205 6885239 99238022 962577855 283341846 55395075 272382862 531308857 962664835 128256871 836953542 106567459 285732637 631749702 270415525 802751504 561804831 90416629 965241290 20664916 23203380 762805076 593714423 174724481 155344046 487913575 399476310 740748577 568339753 642216407 687953594 435559683 314809030 991542336 877095117 921242595 745654808 434967745 375822965 995474801 690523125 55639809 758129272 151387652 141718992 57595623 154306451 960681991 336185212 710091762 224778505 139089389 355094423 143618350 898903666 169836852 936502214 518981639 313573770 885127701 171362112 22073949 167159980 165987896 409127559 474842937 403391808 483247224 569605738 997150912 669519216 669279303 995785038 899286105 979064110 73141342 671364072 469046014 867383086 157738310 735796910 791316963 484346782 973870946 937291612 981582408 886635758 750663707 41772828 682179294 746237349 739623606 126021188 195417367 247473070 758687115 238872621 375898305 947096580 167002176 165147376 639288673 869186166 7325518 572815992 558352496 348064381 674107145 981317214 81812549 772587359 191805502 711049863 811472717 269359244 674754471 663846261 953776939 280840278 227920028 832008874 663688828 833927242 387313167 496386702 35248316 458832948 493559976 833691017 748490609 507949463 158864978 285953182 711699981 279974590 218076189 266449154 359445800 147630221 194040843 898432679 168554128 757941830 123159656 197469251 472656511 926177450 994732403 558037885 397742277 340630841 735131690 671719074 207566098 28886667 565021697 512451211 389155558 87078791 658408313 667364513 467604 967871831 75684213 15448315 484217705 730145470 878874785 467114938 318948968 383660468 555272149 577657844 651372854 502891418 122658603 649043755 126956246 141957663 245408373 299306791 680919488 676872435 821368588 542474760 489441163 363723100 962268208 947479050 924883459 67976044 422419797 919166373 860734581 912666180 147641232 626073363 550736758 842201535 493498156 189733798 824457786 330412629 916522999 701735728 731318304 14246707 738489551 628367604 990041930 17257504 634849337 372404180 890894451 664055903 915904614 456450709 236839444 676426770 392866583 115392474 920664817 603347191 411656076 281550639 869377369 399027318 846688601 148825105 643983358 348987296 100625775 340402477 161143855 582816980 646029434 261550133 572334760 355160848 973898062 304385624 28901298 585571386 895959291 597071627 334427748 812197439 506006402 665556210 862625507 876047221 299525881 966305834 919498632 496052116 420838812 136372077 149782462 663534337 261655968 703583128 990623109 540715659 468003684 814700327 253330386 203303395 42525569 236413246 152272717 222784839 602434017 968496609 243208845 77614504 931908022 434256178 525409763 85729467 137652966 3023859 740882855 296697556 760305436 730793909 885218203 197419151 749372113 600072844 779715081 817008663 500240598 304651369 456803354 307587623 41787244 83021150 723003993 934014877 266020614 853368840 976748849 338823725 583805668 803575887 195011793 996477791 358545201 144077293 836573074 189901046 655470333 762225556 814435193 291129496 139840544 458727146 601170596 681397822 984964368 391951713 791901656 242373794 567604325 121344520 759724249 636471016 175977863 922724430 401210760 468837360 306555205 902367449 341359453 962782074 982380084 508440598 533687699 594322117 311656325 285906617 424718308 68073682 663925269 124199360 467715247 127852688 176704583 764259220 178191713 41655146 889239227 852831290 678065587 367278331 559658071 146951525 384170716 578199193 778334186 23694706 313532563 611341720 782437465 551495581 465255868 812455700 607774319 911986507 602833005 116068927 669665044 877803913 759556740 125370552 813339313 900417529 70571089 652769158 275350717 501659381 639144134 430421541 56979110 850044508 786837562 414745816 237205580 814627570 201980854 83371010 350383329 491814191 451833990 158448215 517364644 227060827 824652888 446258734 657231528 22176703 335596884 971037278 518788077 783972164 799071282 514776951 271321179 203915641 51221886 979092702 805437128 114652577 475613606 365901060 578313759 669558212 226177604 147098587 744958197 513615178 38233990 79444607 7954584 691616115 312076396 876933453 62138653 304928490 463871956 369321042 788129014 859872147 405791163 286691155 962133434 327025644 769743388 963033524 239517751 788697328 892015367 470073681 181174882 829547683 531958618 46006118 745905260 82997824 809712644 695327969 989484290 507559086 103821023 312577600 886225414 867086449 927845364 83577311 437892727 980166883 428579953 722034174 380849231 111861850 522896233 48687814 587136568 408611655 495831113 692913139 233349280 210298348 183520893 345520968 548046760 628664544 204461736 669778183 569313298 188105293 248586289 112869252 421116818 271829250 400062863 889962849 605893259 814551254 147778332 83039101 500761689 383455280 742845710 161759769 446097045 99634148 625639272 235549886 744735306 350979247 118858583 358480965 824711945 821815335 46294239 125128473 570936118 26309272 257575271 788199859 927166723 19419586 593540681 858273113 680090649 277261483 503653613 392334351 502730309 697813159 157106261 643692544 592554856 52249453 436484097 409146082 711364151 848320801 923762130 764019417 801968374 357886334 115943591 878510555 516034311 574125748 415873521 141459614 728749746 961162984 745714577 421477264 936173969 92399015 524217529 453140475 20232803 290487818 134515028 520760730 296869848 737358651 716204239 619582527 821443746 660281222 621111004 612221022 645693211 510332526 315554394 499697387 893349508 766462954 407896475 139136528 178361283 765527942 698669917 289117041 637417534 110867192 432745256 57417486 203956006 353103173 175299854 401500998 651641433 752777718 252450355 957432175 714019104 514817060 800511642 821211827 317223192 870920222 179535148 930704669 874238488 604329044 170198743 288048890 446211878 181095962 968708567 290225199 354653208 799467676 701558898 935104852 296596476 950657159 809864307 443526578 69681741 131011982 214454100 41374608 740716165 918998936 568728474 561909058 338395747 337638150 432426259 920819612 917113349 494158491 542444972 579386174 64955337 789193579 200690749 630795248 488665242 833007000 297150848 117069824 30149755 392147069 943151129 783710718 907601268 404081294 537756908 452261478 809557091 600256374 780072545 462836543 792159289 3194846 99518211 928598870 698000374 104553571 954348896 51405864 150620325 995601542 717748325 514284651 565085 25316162 673834362 516032717 432850480 599335217 486259975 848815848 433607575 17723301 323171244 797112549 822745550 730712759 5705255 684782205 849013722 381611271 285753998 152150866 23685916 910814969 250711411 734386655 749859083 133562582 160844793 443337622 7045441 830063671 513237054 500238631 372011782 960397833 733531355 983051956 206347466 893999377 40559983 190604924 327857839 415752804 87831902 873346851 395010107 612424685 104037650 934898472 631490807 889702928 324522507 370081927 358001872 313084094 47878112 416260994 592838132 448350233 705068543 213486647 212670679 605644387 934855440 444181661 821215990 989959410 874660004 57957009 701274094 817482624 808397531 318238297 952378847 35107549 39674761 6933893 136783856 552194418 677342452 972861968 171322357 865221456 889651679 717034867 303232409 803322931 487850498 69423966 925757954 416240014 213260170 595912455 611314621 12844955 954194830 794049147 463632254 143610024 461329134 736296121 690605287 329662961 912195598 947487553 695480410 831220145 781937118 865514007 173823526 446713302 508252473 421428014 88573726 864126192 64586790 189589636 437678912 615929698 645006453 119124029 799507718 349657966 214784240 237073288 836262291 340469924 758100145 433054992 678163174 600496722 131769832 704102424 464065815 919634556 250284542 642415772 93778050 630670964 973393064 236866382 659446905 47783472 753500496 107208120 634600315 133335905 64013095 387680964 765464169 666831803 636655632 481105655 746442108 834877943 817352194 331043306 451854974 324492968 420434231 620083196 887449282 899789110 703036832 331437147 49631953 217930695 366297 753489099 212449010 89865963 631902111 802399865 309423432 993519842 7500918 180870504 174795863 486521856 446209530 87454447 451643072 929582346 761768518 335005465 763010595 187254478 274492332 433495697 127145951 9996160 338126656 381637718 192990794 120275232 147058694 290372707 823373643 141672229 879806187 197342248 575516746 319199067 667115078 438586121 912067678 880824368 503802192 797995523 827046123 553037610 611702142 764317805 862922524 201288125 432120471 372824122 54629943 218455158 790803289 573146163 904745937 233451174 728506826 863961406 159188393 237691716 732872791 989287293 130383542 184633757 339503564 319573548 563541417 411177881 719991943 111266117 730601594 702585180 993953272 606191769 709435125 42880775 481178435 458023144 146980962 107335717 829884222 13548706 786305343 640670138 525850112 65891926 6387353 244837642 620932335 794722539 121874997 663851185 984273244 182437790 255198778 833813735 916894710 194053730 724887975 106915555 777689511 966273154 415867842 582698600 67562242 162533031 687311907 852097517 80087481 130756736 458252149 345181037 249470026 656482380 744122038 651045514 208385580 267651272 369385274 92425880 238392201 925675380 595643216 428201156 658698434 394706222 427947455 317990068 340263698 678282272 528554314 697295312 981945430 884782696 677245990 525687456 255879634 84483070 101533091 815512818 348528709 736088287 159835448 763509210 653580523 197313400 950327466 525660873 114939652 722543546 354348272 419316609 480007282 387263414 477667979 52525973 420131139 831175792 968774479 456422542 877497578 387991637 136762862 643652059 805635234 835608090 722220529 585276280 623614635 49348296 888585439 749275340 235706471 5997096 268451794 405050427 984115997 73252969 884436472 851633450 675944682 269631360 942287686 619280823 516633686 751524536 534852617 494141589 760145041 453390438 822281243 266834723 293224588 849152481 752586813 359305360 640881860 504542481 232513353 349612351 542381676 132338329 566193528 759158334 322091061 109222399 421928186 944284531 483475534 961560745 756344175 718679444 730233330 426044308 98534593 995754390 817730278 517643663 262023074 163868404 761202246 687846904 829405853 287767989 620022930 498504367 946484866 786149412 746076480 875270588 663128858 839661843 857324135 78164642 353596552 778244269 503708580 372949745 330727005 585906594 633394442 566313232 727244478 646711358 339166406 382535322 955945293 70898681 606359466 70505422 598078152 429333500 170400746 552870343 243171533 432887217 449195163 645250783 220730541 190194589 956894775 195124687 890874826 909368950 647373358 215972236 698419833 364202119 343323928 960512998 730125367 732491871 67004684 784887597 452693049 764636035 549404781 946414114 634593597 160891326 915986440 77511030 482439149 815535141 935415196 357462588 780081996 432724591 636485699 785619923 422837197 878553811 217282852 660126889 120383476 173576813 417433653 327644676 203565906 765980601 845561469 365086035 370279317 302751385 26282806 813139328 571526054 910561538 410946475 693354406 896687196 452287605 591772202 422890588 196836617 438949045 289704674 440726977 171234370 112663860 485052900 782733209 683617204 415067420 806229734 383949251 345510060 245474636 172493699 389206163 884238549 561191768 28333889 570947360 691455905 604124251 462400945 173959990 514094173 490812509 201216095 362559731 176037656 416149770 979045671 616050005 719253724 750042583 41214542 465521429 484239153 726912844 899076757 870254536 482075798 480318797 364890033 571766852 53558965 474524012 163778193 943655577 990733758 432322935 330786458 131929971 421860768 871823721 4922718 260607875 136831302 258339729 759519624 179919717 41582227 329083366 670584199 37831529 579662370 462778625 527401843 331331107 723505805 783152271 836387733 476172216 757017401 205614310 395344744 874586867 270695808 537528393 54428012 280107551 269665830 801105929 904047344 164910523 973959638 236850541 822601980 184407761 657641149 588504058 875915028 237941361 641719815 333395932 996691103 328124753 341095228 726531265 739956096 767215136 922624400 468274901 269077616 296554544 380698301 960068829 693336358 360166747 95154852 211504040 97632480 919079934 109552491 97665817 414553140 904240379 144054137 170599921 574264566 912867651 803162352 73003971 71480570 321939311 848057557 973688338 39524286 558309819 639190753 140225743 838027426 10962059 970475111 721038369 680948981 395398634 700755420 933186322 363038934 16826098 782917622 179059427 654818132 465076408 457295638 280261226 103001413 387382276 524180063 933073715 595106482 893637078 457115437 427315732 804550024 492951053 542411491 138995785 837387819 178078326 41965269 877773115 233839377 780661875 52778733 194913196 907948458 511579781 879798596 895015703 444236209 520093565 301758008 272503506 714854604 940065883 125251622 809280902 854933696 84113840 298222494 143948687 480895104 813269928 620158108 153412632 383830316 730097717 130033549 709021139 368030656 27184430 781477015 669054988 178732996 747227009 488910082 36138220 315491549 921367300 474893618 662237499 912698148 247921285 867637195 521126826 873263911 407384890 347006730 989672404 834543917 488050840 954628396 790414066 156802281 22038410 689250528 89525540 38742730 396040930 357158864 683207805 235234 784837400 278535909 346978136 860380248 297293942 10128631 522924228 514353784 467539280 392790454 195741397 739733976 841303338 33652936 859114475 621764146 275189923 620204138 922477972 495846258 602203378 280758545 676645012 722798401 699701213 195625890 822532133 306417405 727503830 803928290 123532820 251393057 19103296 693394823 178219818 206134867 288570522 294197270 412577361 9509231 337278446 502424903 272296173 596888297 564573940 363507303 258279694 374287728 488131298 547938072 274803410 812758548 981315863 853027974 379629577 237715940 426632189 312076876 465622778 548532862 132625598 85139085 383564792 509571953 928873963 57346241 996048076 282840326 763618511 112284187 532806473 431176267 855372981 761245226 985015696 889642737 421958028 43303970 477928513 993079259 317801159 928045543 511294485 568596239 296694314 136080543 841629764 330972423 450065585 895709148 666372872 182986851 530246817 9443930 406392310 640095776 915353372 930454574 8413626 200182436 338716861 341397604 382730132 152378857 240313578 867576145 832226254 111190359 589256279 858788402 976257665 691809518 921258397 336594724 448075785 633917123 482854891 600827775 837382303 934362835 767721406 48907929 112338553 427167237 792918363 257228572 473635935 600001135 702188717 84457894 612829864 452958410 123373321 673811766 190645911 334690845 298059676 272626757 371675038 44948748 318950913 953206558 651131876 957223326 945034042 801937391 994486797 331649112 291973942 763154350 789438722 565465479 839714374 805719019 428785476 398276883 273714680 990383308 235655427 88299997 55135501 105548414 609456233 426628682 404007286 227980252 159274067 65536007 516849362 414888328 529405860 604876003 509005578 858824238 883201645 657299984 86799592 645452877 238187886 352255243 969472749 56612055 516448268 85271160 345198413 311132488 572264846 945876208 784114632 405478170 449019265 391146896 541568999 170992739 377125220 492870996 237179121 609375779 606504707 918349926 363945400 587148902 634071198 459482292 7164559 267491884 543654420 592229474 205682976 343469458 16306920 659945175 402753410 846228936 609767815 378885728 795733765 818365092 77258367 197314689 798507061 140587474 123164410 92469434 64491872 712674798 506200057 73588820 22877167 70190197 844260504 986444787 295368010 687514507 968299987 307758503 592789263 331169808 219496223 51034306 518053847 758525357 803979824 506825921 207340803 392690369 788395793 12493555 803396970 665881922 721755790 52176061 252074245 120835055 266731486 312549333 902721295 808960162 320092642 924632185 466404804 589221667 803082240 116059382 369087196 258398412 733324012 826542842 820499230 76077940 241920149 482774741 362476388 580585695 458178982 638350807 882081728 523294048 325698245 556454198 4819419 72281778 787526276 46003136 484285473 796431217 747073914 536138233 641061275 828056221 652316721 446055320 907441896 912647496 496360708 841118250 572137525 605554775 276018553 493256339 337655546 984141069 607467405 510517888 650056757 508793623 915555990 258688736 660973621 684137585 757703926 637542025 30746132 271239391 902661275 247580108 541480683 210538963 620928191 718376014 428269800 626039245 453196292 425425856 567814365 877877823 343543701 430514905 144031712 204336081 482486350 281454674 573916339 406295663 15483348 489656368 609515857 964884625 443740945 760120450 530759871 408137753 720316450 420435102 257445513 442092713 573246046 467348426 345807754 708064458 970213042 523472299 146317911 528545250 651578070 309474049 827216847 961522390 559389409 436993846 32261724 19118076 45390967 940397975 2132134 45331872 550432173 356435016 59392168 157028503 364917391 97301479 3234253 67688884 498405828 634621196 894140972 591870383 375023258 411831458 219010550 865938940 744578815 68959921 124300644 912489597 957163587 152244063 584211684 409829699 487718488 247095716 900503941 640422372 126717472 760691640 805231365 425727063 506087729 192416663 887953061 56061397 116686464 913005305 493985309 291748353 535342041 122953274 469568841 460547936 935781843 774120667 144454173 785134849 763155499 461378057 236516783 924736629 778585190 949996173 166412522 119148006 519757689 654308553 198370806 637419180 328323643 929356232 960870760 589381492 285836114 65808640 862391782 166218647 947337874 813460261 751154366 864239365 650327567 418848931 586892887 816468720 715329437 278405436 688720270 536296684 298181437 441911453 963088019 223266860 789200987 495629632 928730407 915150071 703969686 918469523 854249121 80203226 859452816 340174552 313678183 995685020 945934894 820062245 858915005 321387675 462914231 730703010 902093197 934297146 305540521 68593075 629225682 637410581 778825178 256903047 67586526 672436340 343805263 68497035 773620956 708070818 320500921 406008642 290190479 938589432 704188541 223234186 300950242 136593047 839429279 70845994 350139570 545994467 639447182 472106252 667293921 397693376 764073147 938329280 186146556 235333958 720548417 107028443 189524226 86861315 152591799 264685996 577704807 544507894 341501201 206806197 832449802 537686185 783669068 90205263 305572539 401883911 130976942 697196152 731912567 866532166 93632310 364297905 823400394 779876447 716712920 570160849 230997266 712950862 581787967 509092180 421924723 511028306 528919237 497311666 112996900 122740075 788399731 795092967 549299910 937470661 297311518 653810715 814708743 635528069 291053705 476627164 760130678 529201155 962117836 163869657 91853538 579031023 770083175 961083949 885834003 794329034 180068065 747925129 55329350 712727669 251801900 795039616 73225125 795657471 707058939 462424076 728583918 747704024 742401372 83091071 538215407 773432271 920911552 243722589 486717331 882115704 748323449 502007819 537166966 526019508 358178410 439484193 164626226 918648302 736698532 682057779 814987451 40104960 402334521 739986580 809100593 546283780 409503475 818293575 505231355 442473481 246137711 93364826 379584736 739256202 904851204 980297767 877257570 820689029 916684554 602499998 168255826 572717649 917476424 377428646 217219634 980358761 540028376 124342085 857737662 141818398 864587088 229149801 354855424 816980691 255289186 708487841 421633085 973810010 673176493 146625365 279353372 613606460 861718932 288541157 97695160 286361357 322052985 770451101 329821137 446119933 91302311 885072126 688283079 537176239 3834471 95506013 184124120 131738535 337139301 531100948 716464909 950054368 477859652 362042092 842586092 526840015 615076327 810831341 41072012 880128240 649709028 530901606 435467766 840793939 56323791 325217415 142911307 211158786 91203288 54681024 584589645 279975873 769507921 69021757 849176292 852524627 395501736 106299931 501849718 993134105 238779744 901302807 673185671 482555095 26540593 798112969 602411102 712294978 907000213 496571889 278658410 449204460 155548951 450778539 596445842 782124119 56906041 284683114 288472950 471129660 271069485 916106134 37097159 663824325 51540120 521074919 569925608 63802753 514610944 576857468 486665555 19561759 892408872 585432490 730560778 656005716 276115123 124914999 496675136 649873389 419290733 620452188 349933472 851858027 783517353 273262151 583380420 154268771 594962208 842784251 343818583 696017399 758158127 162291153 373266699 414673603 701770492 53599140 19952022 817682642 195868700 604577965 259510933 630233397 234660952 76270831 82739511 411377149 197273327 843147063 34889703 809001723 549839376 435253991 809654453 676888167 301084712 567896719 738410742 999914631 971438619 407995737 825443721 625361815 947913479 115662405 532538562 395935578 970951315 520719524 465425776 20564099 816832501 239070440 106118701 60315843 378079587 685399503 167721937 846544599 799897816 743460805 684410385 218437995 997685371 716579241 729641140 759495383 627606637 602357022 97608642 270098890 897612041 391239650 613547182 986919010 10844429 729124549 853295359 93632561 705464669 101904945 566655897 291242378 470768993 615505053 552905112 132599577 664009753 769159054 992150074 297282975 601775080 828140561 802763679 282264149 30889813 972570699 717314345 701439517 974235348 658215485 5608236 780553322 241518517 829927332 970220952 997110747 18241288 391636117 356190970 514844641 242297001 822027660 845506136 962931399 519667361 340491463 110592737 911968365 949971453 619828099 951932489 467451187 743781475 150065371 687460490 914755434 546442255 871592880 110386276 172104028 767805491 660480340 763086645 726605712 7548631 20797937 500324551 920618309 853433950 701187079 829708207 938953778 417494072 241637283 82774823 524185701 101704725 820319153 567916378 949649515 19811486 540706256 295257858 647681542 156618421 187808836 248447380 864529472 335960193 412351450 640989614 218287984 448745222 625107697 397640960 495568533 551084102 942053392 807535258 481480770 679068791 129714858 770316728 857320042 143662482 820107191 502221362 329862285 773609812 954265816 461500373 93719669 536068568 116513796 125575203 745126500 314346283 540751674 567216534 963470880 428462502 823210513 30896043 567537558 12495349 586323070 61438931 970360932 756041237 952639911 89722504 233009003 491534004 80598247 4269448 130502946 140991807 993772905 606155990 134314092 373256210 548611338 19680080 130080149 316288231 885315088 682922472 72062505 727297785 390384191 642581593 739395550 397181576 276966172 417503939 18824049 36261934 420700338 13187409 590659712 413921001 572976322 65269798 715566549 833090472 994648555 743902303 16419305 184441689 436035387 72580568 893323986 681082295 819604235 724024496 946563202 479549385 391305339 503227833 744607950 825463441 93690741 311230379 328253768 234990162 718635697 101188945 330872208 963747152 513734546 912976993 977656339 525328859 953259279 953535734 866092807 941425114 588592130 803557964 299110498 516660167 984438933 790993197 212284510 821009204 280535694 579545677 589443122 886158873 757687522 474198059 654909112 528829450 813326674 864725092 42370030 838494298 823858528 692420881 504123832 366896464 533961939 370960047 771829747 524401302 88556771 119957611 348044432 768279407 891540233 621930945 405996123 326341772 998683894 732837658 729168848 255849400 388166737 929565249 555869086 826249999 344123155 280420583 752212020 251608909 811464616 924258236 61260077 948629722 344526196 734298555 583551622 539141889 273965472 874453570 593211796 60128216 852659831 88416459 367029896 452755642 521166313 257548070 763242623 567163903 971632863 986943975 384256198 262975291 173305459 435316774 576044538 268405277 621386568 751440981 680326636 563454124 724400366 151849902 948601399 832194858 125062633 300363146 903307545 455761123 67217028 995608253 146856327 974828986 847380981 403153547 45874067 23286814 500510830 768914205 293117118 339752640 757287636 654109479 864551367 920859755 64021858 256459909 878709311 421458316 792616870 822095762 894636232 204106455 964258474 104136277 107177352 463202354 821120223 157556320 986760561 825331181 163084124 234314443 414283450 457533481 698855127 878530584 112285789 384673888 764520653 634909699 977827382 50779462 477402655 11831191 597465650 161752698 87254335 169194969 489290671 264657847 210968427 115803256 661069742 873306936 606990783 317007384 1902815 738691150 741274574 776973972 215174104 689351165 306620847 462884260 240245272 185171652 289898158 551866198 173688885 249708456 204287759 136725630 567688144 609542471 195296457 648571653 901617868 997759339 252997539 665518938 881484837 525069092 816544632 323804432 187212336 309406760 64244394 881742309 391564132 330966365 714682062 386352987 715976550 120414396 237479064 338845422 185786224 688952675 102535373 524417606 646051068 251681258 678137260 675572127 347331673 785386079 742292097 752788628 588266577 720946657 6474301 830908349 72891856 996741217 679732273 214280616 638543555 365078512 962106891 259595875 623919124 588697854 604256478 454354032 55325506 184314223 417431438 144787368 559776435 270374021 547144802 247121648 679491979 844614154 619747663 717091689 492137829 723511894 241501527 473508286 427662713 376925647 269411642 240602675 993174110 113943743 62039856 310231273 715545170 147563331 33575218 577046803 824921457 613860787 999599369 565617414 261190572 285359589 542238075 504578397 121211966 504264972 902996171 86294024 412061527 1090401 531597294 810164851 468235679 56275163 618185100 267730383 442266565 469418029 732908310 357083964 862230635 536447794 266594166 346100247 305065038 905837930 590467277 713114427 2979564 150671657 329016473 264333484 881513005 135587096 240308977 130753305 450701542 156772617 488362073 758921239 606652679 589007703 267181762 614487914 138770534 575097904 395943269 569476050 69367079 208011251 749638962 857936984 713285711 155390308 965849919 822188220 916610628 921010491 841012590 299212594 145948744 789394565 461138271 64866220 701504510 19308790 721762192 938502691 936776726 892667144 894102483 21128516 185486770 291235151 145932773 315917269 180832867 745305493 916072993 984039739 753316656 448026109 889940112 341062140 406453669 309140533 757886750 998845194 896422021 205533519 120545911 219890105 661594206 600736342 541593217 541390738 29955671 606660351 664980972 971818425 58088898 601517337 951134678 216784266 508196789 873429697 954974836 874299308 476159201 16866728 636014151 285238743 445100788 826543069 406836873 879073397 381404512 720731749 236893122 341706056 469026827 246768806 564378835 360167249 693187158 702293287 652815026 888926481 621442889 295591279 217195949 599966560 579542802 80627777 291832381 338396081 648390184 124539645 305439807 73726146 981653494 868018179 108445198 338716095 60233101 604388140 791393155 699891078 294227235 867168173 181297956 901581690 392280748 656995879 898322927 669051371 829397033 38833579 778018062 587671517 896280990 63551568 751189317 518748139 768228679 263561984 325839461 507149147 548341351 977337395 825973414 146847480 26922674 447194311 326343157 254142767 114280598 510482004 391727266 812913726 180624422 350750666 956923192 301225368 162347926 843086863 16108785 871104732 309748721 540438138 429181188 457776743 23183266 885783887 769185441 954178774 228945230 597696416 886531323 693445879 484138135 760205345 4199173 794754330 57426945 924037527 222173749 691433784 26886520 157786860 259018120 287838519 678933963 608730900 100312588 915281983 382639327 323755010 84356865 867463051 197090493 875273614 929503531 411244799 720644376 67344298 607260944 858752584 578910191 895380545 135996964 301257104 974025652 830968843 600341378 647677840 133217849 49971680 906617276 421288808 118901040 652658154 894039573 219714758 801913562 361897450 441701633 925907243 673568923 225723049 397347112 536915482 881552646 880098964 526033318 452745404 968901977 244982411 912092600 252772106 325639198 990676154 774018888 130409442 370640929 320958093 732808904 277378342 315903306 497274638 631420258 627217087 206539243 5518841 129637280 922921872 20605170 872617472 162189068 775941657 405736025 172435424 443515918 198790758 994394993 886617990 991695961 647585910 626881757 269812589 138172177 331749590 250358111 786287954 833038330 687166607 361328238 851917682 567820103 548487026 404342900 736883958 303505323 934743462 526977127 991196157 271301953 23720798 686502703 612229640 193981781 365514135 265715789 607010041 255364141 303471864 928529977 367958580 775193682 961830043 786252223 250988254 69936876 349002939 88199163 870255539 239452469 430836387 809551281 730847778 594430225 337026096 782456466 696282191 383233002 107137801 635217001 500417002 930226278 142389076 239885870 379228399 169051192 404338677 47559873 839879828 699389998 441797174 79735867 497469841 12505780 97097878 874992910 509386508 869226903 544229934 171569354 181585968 879283310 830369355 187163718 363620836 219767348 786796382 692946532 671857965 734344615 501648302 816560077 99862707 675536197 498855951 926601511 700033790 917317443 661722878 60843784 370215551 38671880 657062666 192065680 212959550 332285151 826884177 175416816 134580005 499180081 584413288 931603708 229900294 43057184 868738096 241986930 113866328 276522282 744603623 581176504 522298359 455780466 386058109 151674 894127518 534835051 120150660 88249625 565376920 356755475 826124633 59296982 628599020 980789887 680881557 938182001 508318040 544313389 96111302 793964242 415008780 113671250 655511624 654856164 745463889 129156948 548207165 584492850 728370564 184059778 404029715 109730949 59772167 615143872 844776030 81401276 138186749 993729163 535138564 60198324 925033527 144226635 856097503 108376388 760935160 965467564 4801588 402115503 651299413 674323624 981358744 195023130 176797210 865782959 43901837 572865747 752038261 13479725 496324333 732631194 42934054 467241952 761681953 429594264 341872059 172170101 100580071 14131644 80152222 209376908 615422855 143199880 406528293 92073940 472973090 215905786 525363397 518993647 138679885 73633712 185533327 476657203 385367083 3600625 836015401 209821311 101822488 402476710 420369847 664711282 676157531 212787906 726134715 109185412 198212279 996319120 892040672 460082226 493493222 197359202 402585235 291812390 939692566 470778117 581370801 98089574 962099140 535371899 502305238 315927634 69549409 200511918 556269557 214174014 673698297 186391860 790491099 707286270 862585911 147911218 471068696 51440823 253925690 344360126 393232522 731526169 455041291 636037542 76290486 115211246 28650746 220009160 466298244 419938121 414417269 546535012 968080533 119143048 560234172 708773534 852379329 126052763 747729643 568074762 189515867 451285816 729068963 508615009 443471800 587897597 72482920 13083910 714371947 501534129 509141686 962026794 977987359 720905703 336739797 30248225 666894204 840089026 338092130 45654295 775046417 974728209 383405800 434707528 738936897 932384613 982130307 517056479 918225174 911632097 12218491 129554204 798692007 237015219 930257142 488249506 58634354 792706429 816294031 530211729 623647436 116769151 296643231 522756063 566751698 420648359 340469376 479672656 163348904 788207270 259178322 701916422 453100501 324920826 279021886 834464595 373192628 788392460 229178992 31143365 622171150 519439556 188124719 231775730 657076708 58307539 932407149 74494795 864599667 833825989 968486998 167221402 297954110 851246208 861308259 143054853 78976829 694498697 479485222 301508338 880466704 714409351 769300229 428222915 722881236 153798639 559100247 833599715 837014288 190725042 292078058 709173433 213583382 988629652 526633976 241573465 290848324 671814264 212682345 266478471 898750335 780663616 988544984 855376552 470635634 180402620 62140915 348736209 752345270 485485984 727304647 370285586 318589990 644534360 687492485 78418669 664660516 29585180 806883046 480068998 810525921 564438733 374053822 271681749 988439981 115082447 792659159 715812479 828202584 68195589 417337973 143907289 354479083 925166204 632460362 622495467 811500076 381516759 683909365 82900705 527992048 153965517 790953664 33875752 993026413 188371707 94840761 215356838 559831659 386306755 361445425 102531830 988229936 529154332 269507749 291751488 333319323 171904986 942981428 459679098 29899321 883952237 85987902 477033460 423408186 726778299 389038127 572952645 99076564 912664063 877583279 905917099 183786106 872725919 55540098 994593987 156944595 71731889 947231962 958122919 538839360 30632287 745648797 701693264 226874393 238978370 804579958 204141070 184035359 363864245 616190706 494180196 905871227 610485162 891338850 748933338 344043736 855539015 78182970 721017964 87588275 651176319 459405301 43292947 683053801 634496364 600007884 983467356 719901180 580649727 953997053 512858178 804056520 889630810 490653765 239207268 285172599 399301627 219275086 356096003 462897436 37698669 949325060 235995616 253010542 770129642 310281948 225631696 374755082 192314068 609400254 370118992 478065356 942066014 392476777 272134148 550087070 205909613 703096046 171081272 830958014 840987696 980172441 58605521 11558596 148621062 502597067 923837489 638384416 574519263 756389028 424912464 497397600 93452100 622997315 631053585 292839269 800058932 832762591 212364635 566472237 523242850 1085440 976219245 48238729 21696003 917811956 250172564 292435286 387623981 985226622 910893065 437253248 837230113 244336100 277810572 513111292 976728111 965259518 46170089 628489859 637841365 229484755 642366032 448927077 614707866 987889682 402135917 454582850 744172693 550852073 576224096 975072789 247143160 848890475 450893724 933456764 466519653 841465760 267361884 428133297 548993675 953829101 420998614 704035861 24101248 626680129 524938139 665903933 484420458 113881421 355323362 973287758 414419947 154086087 61738625 193337534 952390707 448094479 267385051 779931430 633264791 457251830 151580696 848061495 366877313 357704895 874780642 751981140 132821523 529016671 584819635 713109362 382021971 427741584 336760509 394313837 152079362 250918636 857337096 168792005 506968150 575662430 967183844 703265581 968795649 192767672 357960607 13244155 160144483 409956780 478402560 922172819 32253816 356310194 649161243 220156359 21256889 236647406 511102848 976462790 791930152 958355656 544795444 532697874 146924162 371689246 281041476 870352597 984315439 435639610 395172274 72630777 149516432 283081484 195361221 229046318 288604541 281873894 631049598 724595302 910335468 564045019 38654267 608568888 846501296 78684409 296097724 432988592 379446186 159108467 556137534 937170893 180503196 407199044 124947608 169051756 587211881 577998708 698718870 594514735 807727258 114411394 472763450 419168796 861868987 142026968 315333019 76433386 404715568 895749831 74955634 545466482 121488827 204758645 600094624 568964202 51898998 197958140 198162919 885464945 724442795 438365694 847412769 534603942 759027426 485920269 777056136 301697530 284869919 905684672 137832737 203002989 579403923 473971483 471410266 625010934 603607858 500018296 607743967 622773595 140432233 522116564 356189224 124367906 656719455 759703804 978721163 374005743 364956850 206564768 136948858 139101635 857798634 461883418 861533556 713014917 102397144 262356056 874457408 224128808 55934309 325927649 96070209 37819582 218560020 240779524 130904459 178418916 336315929 429643402 472172857 27966382 274318707 90596674 416545521 68635793 552974261 117625545 658176115 410642990 186756339 826883347 915700483 306071640 500375672 913459153 665014137 517711375 983777013 459125058 329386232 247755436 252887594 346277160 423078330 36297066 256101109 628322690 162958939 398716496 82576522 16650 666060723 109878192 628499868 51206709 84081902 627024592 527698910 21857202 973074746 991443350 318418838 118986779 832986901 776223508 937101575 535131658 633122989 189310851 580602191 154318108 863060107 875729918 475661994 860860750 427239686 550506688 264131776 90036070 405827327 249594621 815150102 401215414 534691081 521992441 98495117 706077557 312072036 858862461 592623375 691059705 891689456 260377414 260787436 923523960 927755366 270036546 86293191 283019189 858246548 428372694 963222765 233980270 144240319 786810943 268892413 543808449 240867170 472729363 732660116 681801766 907867772 145314732 922114163 611729224 718589713 125091423 88022465 292119120 342411072 313737285 968030287 216860582 218186830 392570132 601271327 930493705 727576228 617080725 765354015 672406376 50074546 462565776 764240989 388113394 567402536 639498945 123659211 508981170 692461561 593501234 536521558 291669038 416049994 772547627 28813738 618455940 163227280 825736605 667526232 873868298 159214036 673580386 607401621 379728535 613855311 308232725 122337584 407687968 372365067 345061441 547640859 183271694 717617560 772353155 265120396 865771360 363044299 978575216 892659709 82057405 491577481 948208401 537864541 775166368 580963374 323484169 435730907 673268791 174780045 398544413 45932116 758153266 216658159 673919116 743102451 654715752 289603650 754302706 16925816 402270498 763345542 292468833 877768446 127930653 151742339 697454676 513741632 133465192 740100430 611664423 765179338 933511390 989155185 507200729 935195171 955775038 372422737 493030765 197837636 138845797 636559732 581834648 965882760 902205496 153249037 265274201 777708122 482515330 282152692 1349435 723456337 647263904 624614785 914042141 804715940 801883215 983809958 733714622 128618046 326777398 462665567 346051233 448343440 12081974 430561518 545996630 288880617 325249187 380190608 238253829 781347444 778526306 709330133 62016308 789352422 737427137 225584591 556340177 365327116 350838635 473955486 282837426 905280247 306086084 530717631 959953065 823165854 218793541 652543851 421599536 555833733 922976351 455832482 571253883 438110767 690399008 523952912 828846087 948290649 240081610 251671417 51602002 912466286 634133021 972188008 221045989 920732996 400191919 291509808 175319284 697564020 540661277 127352143 354751789 60179198 143690917 860839767 588104426 230258217 685092660 851872643 954937113 192659443 477976577 599610846 364023421 436512523 700582985 421700200 40962125 465166912 653181384 956093546 379156689 79015592 339946406 698454119 552967508 178532524 135018177 601640584 852056346 859248357 542037616 121532187 497832611 896706717 571206568 440138999 147819685 562293763 717880172 100723323 228133997 614147645 874821423 894345060 702220943 202825028 386555898 175904275 333202580 577691200 228572450 834325827 882499460 206662203 456389732 144244273 376316232 699035437 655804129 428090530 652152997 187250257 802144659 669570679 75158856 906718336 60915339 262102912 213976597 283714567 741421175 481177702 436964407 621421734 297377007 558460761 180133550 679059752 706233604 375180067 440419518 539996023 161830831 797081719 172152891 959365776 559500179 142357345 745136477 401243849 708947765 884471644 900195213 78654495 368010729 892743612 736310631 304174746 288678947 831227968 587542144 406420178 981596896 111012700 716373489 699304091 457976947 830686319 995245545 882763832 596415246 252388333 226748288 192195351 203123319 146816710 360986291 552654106 706625367 602840034 472254234 251916831 710946813 459083850 36416232 295581465 62776741 163443528 457329091 739624602 39800269 784695967 644507868 45239585 803857720 665005157 982843111 228613248 524744722 225276785 301597561 699812039 606801535 436184001 700304143 167750687 107250740 867609857 161636714 759621017 100369288 488920579 94868760 329834680 489443920 48017056 120318070 626475495 714106498 376676214 417122676 553314247 492060752 37149257 358748268 858599579 451067242 846310269 662747299 337159915 727751951 290422625 248138097 61515437 885901553 106744341 545667971 86073034 709809604 45236985 19855946 602074931 907253830 839305781 485722355 921532918 835755700 310528080 971932598 708905356 682099747 215602916 319616386 349222777 663399482 303803452 33947563 78132347 897273517 938391799 92880760 49637099 125951432 975499360 90779180 244043944 530428418 534025447 665642190 240144544 622737029 585954139 973461055 456295369 965875854 279322535 595783345 896581766 349483966 385731551 886750879 15743939 424150655 564640741 706917327 173277262 159458449 903563028 913240266 135706603 235952058 737262632 158381446 899694227 878587264 171049009 518345335 19722267 507523990 448166069 400169735 767465159 128068303 698000447 75485700 436554468 302927125 871082747 975708027 419267728 168024065 868317302 967875027 162953735 690638530 211423902 89524869 728706133 525913281 273659071 785867520 882460493 776890648 820800765 682445677 132802328 424729566 722009391 140552741 261652783 576939656 535188777 112992431 952051955 412736963 367962015 546669629 160415087 180605678 108668819 637896164 79469592 976597332 317180908 120385751 482190410 346476818 404119778 629505154 25675652 373566196 392488779 631659671 980513505 16881990 782768013 934953226 516320861 706774738 978044625 856949182 341676084 74710549 616976022 176943482 42137870 165123224 667259238 118957823 715300697 462804086 356672653 927572378 288793559 172792089 308757247 388998997 814947193 911816417 853437221 982176300 774200543 896461592 623783150 749643568 786830474 290760993 919728391 703434392 338774639 640077923 224092211 179605679 207018333 732512310 160905095 279001542 780345605 854024221 829946560 642581858 668699780 139742530 631550980 641281138 214395602 999596517 757352006 464462040 643124451 482469854 279858748 466758470 681575091 528689695 586972240 838666702 19961740 885860257 320575631 94858455 38266963 580112279 363951873 989385449 862033685 361057430 271865911 252999340 394965412 731947681 381462117 569268007 350279399 312111450 20330333 212810687 603146975 709902555 723655927 979683900 100913156 978719723 716494844 293066958 672055467 125047370 113960481 65314663 708033092 125874065 567411399 194949945 564037854 926727632 188817350 765346402 18369126 737923580 966067746 225548782 889661245 42536785 966332081 358621320 646474598 544218189 21680555 730733934 88650557 96516002 585646775 46749814 918068401 581932475 706064725 850513945 474136142 117256051 519246862 399524999 561527987 541801559 395853105 164621906 520163614 607486227 241285561 663961909 415309096 631050091 131869044 190689941 874051119 770132901 212068738 22003491 942454828 717503613 855683452 138935922 646712808 420278078 773592657 53906471 547848742 905599328 336471820 613462238 697992549 62288238 973918769 830536220 203093147 659587088 193335429 304754091 409764610 455023441 232168981 276617506 675895329 496698651 636986218 340332022 220232637 390546094 107448769 621079757 591960133 56766076 561408940 972636679 531558616 736909120 550321456 986723344 419662360 688695781 127922028 99042542 197170116 371050406 82995032 585610393 619524867 344797828 933383769 103910998 34232439 248617075 343981312 573128877 182966780 3570481 509036616 149833033 215935605 519189050 216478176 906869930 230976549 115307137 743005753 341445217 828309565 444108592 299427730 182369009 21272742 11277152 379738649 397582314 296783468 842322579 486566296 669996868 633057494 320557384 138295671 649958434 974517488 779838072 76374583 553748641 817096975 671532774 251193483 41370275 875021487 449363906 336220619 326351669 585072301 608534147 796541656 467299911 331040641 706862676 422407362 544332708 260665403 791411610 444471907 579342933 266750742 638393240 847096727 43525497 703967377 751756821 572379180 691253390 124483081 165181522 300482387 408681931 671752274 145081143 41429819 738421317 625142751 635381472 53766256 200195450 302050021 2631473 89940467 610073268 362759070 838187069 890413742 325892534 526690463 545698665 850178352 70715826 386484740 428827202 802363900 695275151 822024857 976740306 946374822 46817777 963726916 469079302 429935019 678056465 368158684 295248774 193238848 649816089 225345493 244591581 258488900 833693576 640929273 932577157 359291377 526092346 340127559 166059717 709102172 214599834 156634730 36106892 740415979 447410469 844112436 230529205 385904912 312372219 231653496 492557191 958185109 66040415 384090595 100084168 592002219 823934587 780034648 482732477 99729446 266922269 364575702 536784053 440585633 557687738 942021234 424537624 345508235 625553239 477023559 760273988 88943094 200166731 641842239 17085793 817692302 446863811 34991548 363926002 658281133 318468512 815704303 671890691 635601079 685703421 332374529 121755689 265853297 756897234 511023388 580881968 708888264 570565289 447197951 473264320 685252588 203411989 714022165 840829964 657521571 859683425 877318405 630634171 411292317 172187379 766258967 261702912 818395859 566465041 456805131 563266207 657965529 915539547 320817155 892328061 810706499 892167994 81650588 287946240 855589460 969196115 35444486 522512264 474977806 730400492 339857169 695807826 198203225 10105441 618368155 385558966 574027566 664070263 211603980 956817478 80698995 879912968 141583156 867753079 7095532 24517938 406530953 4998315 558404653 616830722 764504299 55107977 325572143 923703533 723539777 782003572 571533585 927811002 835467173 850373108 746868277 925609954 825218751 247567077 327909995 660576410 889674441 602523489 781716417 660135073 312794537 224365256 155025992 119363661 926534637 822452657 495053643 900148916 933449019 524175770 444509230 136720166 508198313 601858684 487721692 706574671 268967716 781286381 420352717 555489061 942956758 48512077 78723261 45779773 481258454 108094727 651904451 279255524 695239702 852722751 675855877 781265840 102422892 424972595 685958983 886081076 372935145 928557242 115415350 654153888 207590428 408867053 971366268 385921746 136142700 296997131 123536202 931881318 943763378 192791665 658752943 210616375 105873350 625110833 867215016 135518574 242203058 180119597 392125036 103554614 452886119 69258084 304776874 180361815 143683544 628620538 853795668 350110716 699578240 666540174 857601686 749890521 468919862 773666847 950710493 231499869 578191649 662216616 145792326 280349692 822517488 350285041 146371547 540412119 654462261 82792619 597080949 517645504 984000386 811884743 443322322 509206712 88285294 684866140 741910606 966253721 57739903 848903312 87989284 161488637 552225262 328050471 132350016 478216500 216224277 815353923 772787625 524458369 524755947 979500855 849049070 601995691 358792733 430300377 462584667 431648267 548131502 1939301 51634874 839954629 476054723 828085556 225085871 277330063 158755860 510960253 504463804 535850297 593549458 939314371 947523586 478732290 202506224 48895527 455605739 627553621 571656287 662333490 817460336 933616259 411844114 4142499 517623217 714817428 226267421 155442472 610188810 457416051 646323100 148347405 507795367 811524932 139204578 16678200 590137930 72701813 730693297 746493838 339569571 552083501 164844285 272350554 982441984 493944424 781185336 790532232 646075941 780465370 787318457 671212015 806189892 967707199 566873843 783081555 532341117 149929533 309971973 771384825 158057992 171181797 646807339 105628616 529685881 749376720 956735340 115825911 998991978 845803127 516156569 576071419 697880595 649291563 627503872 705930546 169585969 98226444 936704456 2360492 629083585 182144483 332685678 660006484 752648030 969902566 602293621 298180748 583126358 202978445 609244603 840686806 941659755 562192791 204238530 772495724 700301258 184819045 459053758 561288036 63942363 320855624 289570034 676459965 357981981 915713045 19908650 897953630 938945476 379691507 516340511 608256823 400896680 65715789 72372871 345269275 947923361 161171639 894850591 542908317 147776777 527631626 854794467 169627379 253424934 603701293 197213822 806227639 153277716 48674361 290496854 272271913 689779937 985184212 469520973 34931759 617995571 295769557 19872139 896204159 227218865 193018044 798919233 54089992 561133973 782410624 763045799 755983510 538543316 742054509 654983046 330202477 706669782 20146090 473733553 546287678 582081397 895367313 420455779 146746683 789663134 522826377 181551287 540052571 889761192 949440224 375033773 460895099 308089411 769925456 735420080 17971708 766000847 297645180 577023270 447496141 549105951 154469603 50472619 33303917 95816598 768106924 207214948 394881903 994303843 396700398 379076183 393050126 583647 365231280 818393548 853830601 444841535 267170822 245714185 763890377 213909474 659498637 810003077 524047909 617907549 395937211 817046974 185194919 41068237 838754218 479490594 473316360 129880844 674341887 526945923 413206744 838001330 405709651 672593770 124743374 696854480 918526615 822359904 497800236 409512583 564204444 83867370 731698595 624217655 727047499 703814239 139964800 924854900 271627316 2889830 131527310 821037042 792519636 434182570 831443127 67205716 270431441 475669286 853650672 2226758 768429338 96620796 362999386 541326837 230076710 751176585 317686278 34790214 946664133 882175940 360630307 330617264 621082886 567952131 287452105 563013048 157174990 452552130 787190794 477834716 790394987 284355265 421634043 743864763 27202316 41271657 348135898 89427874 341535976 678391468 695982560 648151054 789894888 81346029 167907039 627231344 925168459 929473653 585741846 339701108 990403234 306746483 512835972 709029526 984292527 429364490 639368192 481658841 43347657 175118739 747594756 305974373 506741730 597151733 664397536 527428268 815967268 726368568 434169674 99957163 960072437 936880235 161708223 319508619 326424052 704205579 711978939 414125777 437390549 860753421 97950674 329673831 129197289 965610952 75392774 834071962 295498108 932030549 193129015 443313055 387344994 623181352 406374577 387812337 304284970 134586594 842951780 928547700 454607025 2068719 558141815 654641031 166364428 619330600 459645352 298979127 5225919 635887063 914669394 591145849 990910682 782122576 62277411 490361854 490634160 288264890 698722286 185649776 746484613 888871153 262478261 955568529 844580331 619563366 289753553 753199984 657114963 429427339 209961344 17053203 842808721 247261024 1982272 228459990 75089418 611994145 255913971 560069399 967017957 735514571 391267995 358978697 640454385 198672584 475146629 953298603 518172865 168633299 423694859 385894357 138958173 13396783 901721228 978470004 150794539 423381243 253832956 847093241 380197804 860688301 683694454 166575370 11587116 459313442 332950201 877371079 648721922 658664953 271085116 621283451 19491030 372123857 796598043 773310232 897330340 343114435 433515544 318639319 487455717 650271930 625549003 649831036 878439786 598126761 235271560 440031483 834503775 551393362 684528917 310388746 517216921 119105544 647554285 329783068 374035619 255299075 845287048 424954454 66418414 442841159 359162888 879244101 436013646 736348915 503469903 137219799 992722642 103468937 958125634 102533543 518789266 358350744 432315814 99380693 324804745 279727448 324971376 295426252 84508282 673056842 361855761 352778533 965304211 862545896 560262688 164702713 648474782 954274916 182662758 178814674 882509146 139438724 540661365 838629927 4791949 148126510 220712628 42292593 81130063 984024457 198752315 492632859 576608852 690373437 91794860 718081259 412144561 496914138 944585075 783712038 744167433 82588835 289698367 926027602 875196570 782284037 872090562 306991551 937480108 777397854 106742324 170126261 120722025 479169434 381743259 699009356 391953632 917063231 29653345 368642099 576640954 881952414 717273858 907382307 559436951 81048143 523138804 709677473 143392724 888577434 209744212 369759886 168856949 204485386 279485727 284848142 97415022 783710332 659101901 715566670 132417781 858581935 436402385 165467347 716300558 558851953 980057137 485966328 8398715 772213447 102142646 451886359 827737888 441599276 89738922 31777941 913758234 745164499 342867732 605088555 697928180 38806485 224803105 676314851 551100976 24902783 789408888 101112473 98076100 827477813 388028037 527160722 999130806 2788143 487543502 482837469 915055253 389477608 505605306 555392726 521174581 530244963 698175079 52168547 553460709 955541395 57908320 898666372 215859081 102494577 524796804 97677608 601784643 140287051 418028551 259609510 340499276 480015423 749203390 862255668 927054447 418025913 644617504 693813247 752339765 904669018 767062548 330737959 564116500 620567644 748328980 971610010 500396539 599061946 389371046 442893829 672221914 981414150 87879195 138929260 62469427 608206029 973880838 606220035 652366635 212978704 841421947 92015382 107135869 763132813 2159539 661498534 443387696 293752967 983353788 531975215 349586966 815977683 456894564 398804444 537297126 26532659 306761905 230589272 881635119 174764465 606881942 674827974 86264127 208855781 407242052 383640976 449170421 367753779 272571489 437275933 266977234 600315113 527811353 960490291 496132229 682433613 671249365 391813740 104237079 274243022 285787096 812662172 20240395 177994063 555213501 573796533 837698203 74628000 778735602 359950900 593286252 549137785 381574167 31572555 503675352 836662440 136546002 485026098 898070435 948304045 498122554 388440017 754516117 763346823 321206331 896952152 805815210 256214047 665412833 217570907 520154204 588633100 737892554 333178796 814829008 5436804 39067572 813431672 759931700 757494920 671203875 784059533 677035983 868976665 415546911 136342133 150511626 657206696 323673642 156797318 854978199 833571285 499946574 859347887 729601722 746753395 482687096 952920996 369242655 588840275 184748325 927704856 587783772 612601654 607723092 18870115 814835980 668438799 998438879 829669782 487644440 216077932 300587046 122742908 528315344 400013095 693009011 518965322 298384309 365319246 952739806 651725166 328668530 293022226 169200817 6823623 865263978 461372498 333475302 739446818 140430052 393746853 49169167 624177028 477671892 118689616 283814464 796567998 229120900 7424951 840950786 434840139 922760294 741861837 630448241 129058576 313737163 479555272 762414563 711017052 855927832 931339067 904121318 291722636 978553243 750932121 164394705 453761466 775235496 283919730 263406676 127285988 597134570 440303445 670682778 749435988 919555969 797846958 323899273 631335759 683728027 972044220 219352078 82336356 472988642 152721117 720622269 749705960 190345446 267399842 899587164 324387535 924295326 92481913 837383391 556786862 244935000 62434738 437657482 774924240 173027629 562760127 788005113 761764130 312260263 660833680 95382654 564866201 434068516 91859306 915530406 668697664 955119321 33164243 778185748 46953093 712976227 891323414 913250838 720401209 241890985 527753902 643004681 741180001 252330641 165386814 382923245 731299154 649570884 560633744 92390310 19820460 949383295 323276805 362032339 599332541 408243844 269846242 222496588 261198275 704222017 252404327 958158588 452652780 631701688 297414556 695653459 360093686 852675997 206078732 799302710 851376930 909778282 645931626 904190432 280454807 924782989 487961355 942565861 86328851 557637587 341647233 537911974 995871065 449897709 879385321 731834066 815843107 269503456 183926505 500332381 671163814 362973903 405779323 149153234 903722695 684650945 946777039 629554732 808490127 607829346 758515134 785310603 52237253 733327946 168304128 906833453 307408143 904952544 247844796 676223131 244542991 218029466 232279031 153835609 246163277 521395576 75151970 571439871 628210901 208687496 893495170 512043294 84647466 834211993 63680849 954772551 33558088 985988562 976244250 505971751 994166874 109605733 617930535 634767809 518492865 25653400 998654749 429620887 979950253 73675595 32797790 392040041 35569790 864852754 373094804 442203545 719403610 794361787 716042030 56968519 669127273 429335722 765363660 63417909 953232482 881687881 351922269 761322798 192366189 607093854 463681639 583186499 950893136 762608841 861746816 236634594 336428648 792152722 4694240 808860217 136978833 496961969 24586477 267404452 925918180 790616507 208374825 242339780 488821761 175389919 633993503 967021341 850557439 286351321 204783977 738445773 831818534 537901389 693386030 681183874 837644616 507718284 603281479 948286134 998634015 997615186 242183914 567218737 996588874 602556708 660761125 261146066 57641401 149886615 816060930 556321127 645367616 398385679 458837746 87670210 659510599 31345093 922742462 975656156 446929876 894137829 113249470 361689918 571575262 290001365 159891741 129759870 939392938 108525903 217444301 955657067 439172596 995193527 710006535 204789077 916305035 340214884 976372551 919014593 649433795 493443927 841866902 229787374 196150769 479201382 458357103 284014204 36334091 881091874 98033781 88690490 245725732 462194513 333238517 522129224 72253910 709800754 436872960 279579617 814431999 678148785 749777878 759768565 208389671 618688614 273135600 9269932 210556292 777617162 594673594 365588779 794191384 723736911 425629293 791957019 197483938 133431782 463887764 972656690 887946243 764904978 668710725 506316658 925657894 85781489 12340596 234071927 468804530 174618886 920891210 136957282 152592899 39719700 804199556 922631631 955747840 545332179 827067175 662470386 845264712 756109044 267472536 508061585 323739580 103894662 147692430 880110521 207433778 323094996 945710621 826746662 761785795 611116810 79215212 897243325 969631490 970264073 73919916 401426557 895513754 269507369 960740446 400899803 713805357 330187952 10212767 633767325 758931337 801234193 881809193 510880935 317761764 729172848 992736160 456662012 313509756 446676301 990966825 920300022 168066828 811820433 212418239 136089485 996228116 129021746 738710382 871782591 144381951 710105694 915263722 903422959 324787650 968775955 269108298 302418850 835265905 264517928 744159984 891169793 176319530 268584913 362282602 843931824 301590563 852647707 676502222 450370199 731993404 747242119 407222020 869914280 2907042 631816723 832664616 295575669 266654182 967843303 597216801 124978381 547784894 325069003 142226023 631810097 83317824 773356676 571788435 627405008 578917394 340817272 866335939 999262359 385882161 274127542 180500757 841639055 796222118 308694964 48615431 680802336 499584712 499479770 337834123 619805532 777678416 79154923 547139006 619510838 137656492 762279102 732729844 179235010 331091674 687521342 348536330 793583863 216106983 863259722 554806139 438574648 891765215 929241792 468825298 596391581 497506352 945773611 243274316 239888093 243970260 288663523 60612053 533916137 953873189 807782204 350639767 90253950 972682180 770237119 851537119 191836247 314026246 292180124 848260346 778591718 715897336 608013295 751161493 634284797 812822982 645129607 561090904 631768709 855933173 642617383 83306667 569650902 807125627 293121429 693653376 789127822 397088039 133038990 840102857 388744504 160103777 541785468 532740310 422004552 197859942 417577915 470442094 763369865 323280824 184392968 699173813 53037164 714322505 974177963 612482846 689264475 937867796 309193358 930473535 639160714 518593094 525460972 787307535 61954380 55531924 192863425 137790922 684302861 17273957 966368108 695334666 920741424 394216336 669769812 411109989 50132509 748014303 56138141 835985331 200270908 629108239 961373992 644571886 669801365 381026510 936473949 491172379 861816602 894465016 413598353 498255982 60440454 667971040 976823168 73217206 241684810 601540493 834166985 649117442 140017861 418332577 15302357 62122603 520995673 478651713 482539319 969227408 399104062 123156926 499589279 779804281 954134272 289516141 215095595 572094794 627367174 924684664 118872553 988546191 802950405 180852422 212418431 638642192 74009623 886818492 278739941 1286095 143603475 778632895 192369997 424668526 780212676 423811708 595240022 622141379 52795928 370366488 39667310 797979183 639894025 92515559 319149987 866599407 223130484 190973086 747364163 302473785 42207092 415703491 16351292 124596080 587152693 676189583 357736985 230189113 750763311 350106367 570192155 806848977 292854994 963472081 497841657 790459443 687171849 804708548 51386378 955208665 878782975 724526551 549106528 957326097 601753301 974867251 540014017 588270568 582478702 883170838 221342345 979516321 43905515 785338705 50278576 209365636 916154493 736993237 492989046 874102564 39480180 16992227 141331137 235444738 326399185 360978965 821350593 564179393 192774467 541624778 527031441 728279809 412870464 291464462 446747960 652741756 794598626 696346973 361930988 654221248 187034074 187340668 19905564 86082335 889381972 879712048 443478978 453496229 534550838 539957640 37889552 375021300 968953045 359919119 276907176 84771011 372914298 128433274 599688394 586939093 293379408 869719179 323059561 900577239 686165701 206871980 352133848 329172423 574254277 143647791 553299497 820107766 982324858 915263398 855566786 335768292 890133944 222538170 664779076 981225185 960013221 486512950 268473733 386963127 657128816 864503524 874263984 32633798 741391387 622259225 38965272 997895329 317363137 178755031 950091443 226870437 135558620 952078435 596340433 350360790 45183028 703924504 398552618 115531484 786221383 968930100 212816764 771107005 284973027 450158022 43270465 22357909 150880796 583665869 795754617 629049791 598679132 782362083 398321233 672859213 507847489 876319062 873946505 991322440 641859850 780851730 469374477 383509270 501001848 442062389 712602532 972307368 164851524 819570166 623485573 229881925 370187696 727160509 796685034 663678271 325962284 665443510 821171128 46245811 345859316 48011379 251712410 149675458 576764604 121377156 299331790 807283734 972748613 409743489 592536598 333564472 530478284 835709129 793743741 924402774 947892903 205472038 612395687 47679144 115543269 179660786 848824016 707707829 435650060 526679637 486461041 326672765 865469325 263603870 626024189 844541247 292924468 825483797 377504795 249480620 624693246 646702263 326814902 991668082 524091257 438320829 646424756 19004238 339443158 705244231 231164260 893242971 564823943 588821981 779725717 447289257 147880048 730191791 957233720 833036131 54855 623668750 495657497 17782325 933511684 171684858 521824001 761067943 390202601 430665724 567594389 91649104 727139667 906652075 56601160 14999531 298131319 340754212 453543865 88003476 929715223 688867710 614482157 376944419 288152590 98166011 654695972 995930064 304001376 387429602 913633245 952797147 486482626 453819733 218726410 163951607 343170438 943864241 699026025 129617849 910530474 363621406 107137894 566726890 470535000 365902171 820616285 289770537 380754584 905108647 937243199 759703486 818903158 917879770 759166791 742485862 445727194 101452236 457497257 417621828 559906299 337546137 240778793 104799067 717663544 525402697 814114781 55013016 943809421 762543397 377034534 290496471 356786703 266293943 673333190 9219603 271872966 535052081 170346669 737106504 529831869 859685154 67784489 168949704 929289316 658602909 512799160 735454031 391460616 522617186 133350220 746002901 618231888 498890801 438530012 163239261 814496198 922145140 588251098 648232953 106729729 82246055 578337001 306904643 158347660 722584017 397358313 940795682 989615265 858184374 4862141 909511375 251050364 575166710 585949994 748542249 343834877 654913634 785854485 679978996 70836694 943356634 567367399 225378873 523839068 363423721 321927639 756917890 698120476 744369597 889096974 453139034 902951349 438689208 376946299 17507517 196634018 959185519 402103475 4804660 931482778 498674379 743562328 180147289 559336390 355574181 861637510 43157560 603233528 583719741 674390710 465153384 832740623 333548075 316451759 211193876 670301471 238555379 120312124 743756084 345296546 998718125 978149833 690276149 312970783 319009979 952807237 961726175 190093230 607828072 886303058 589402218 285196360 698631817 387371921 870119726 621057879 25374308 366365373 144171012 442285169 552992956 793549986 44957629 424155910 444501209 492767669 200397071 834737875 174499397 148636246 233807502 717497186 97096835 225690800 550618697 559715123 644335910 615736010 885116809 805055183 938014216 291736758 473573787 277077098 252894520 547807800 572240384 854568191 186601342 772203294 324629749 166862634 426538982 987778091 216209328 833719483 97840819 460324626 562686861 76447498 831516408 764335759 306346212 412757696 997790575 185798150 590916993 419198124 296056865 564126710 796792612 135359184 682799824 30994777 970433224 726899195 940309087 913772169 243558799 570975389 775325434 295184247 999519503 314126259 427155654 476732650 897290477 529116484 778208483 836552360 887456432 720253617 597076585 237448959 879557702 927247949 969459689 650039180 988902721 346433341 806463674 711197301 885099228 943007497 597799900 568288293 450464770 59882434 236504356 782394898 204445505 271729922 563290370 754719196 474617447 524311866 974053515 658183047 49589963 363375891 519584398 933897578 392415280 993809440 588292986 284598554 52144012 674148373 846604707 142098833 156588269 735555556 28252309 693326107 981909243 806510086 962359849 846870962 895146056 560971161 463551929 814710883 708929344 71737059 620191297 434591637 582192402 453956902 44969216 466773430 377997288 410190552 455151392 729736209 652699498 341262665 359571146 630632204 511920593 229237182 387488014 965493231 205856766 624772954 853640997 13061312 724171352 614286608 111353292 33185592 458400313 65972249 30183478 947279140 252645945 813201557 7829921 19239272 884568128 753431127 258605301 556832414 48161998 240712875 243286273 962490075 965166723 864498033 378671599 691904644 323590865 69656107 901977658 41328135 664410154 533961552 706588973 790589357 236310741 756336903 523802225 333992037 415791666 330035347 858245837 806089394 797470869 129484473 421310937 152620612 926094292 378690441 257032112 855574684 602873021 604237037 977320167 648850097 365056773 621415786 312762678 109154580 905031206 931398442 910696791 227216919 499235745 152802322 236261671 47274190 793927353 640622033 359057658 828416621 662136203 363976016 861529604 40069853 517415826 701211484 435986849 626210223 369263359 995873026 984976214 576050691 906574079 829532980 310385740 66812831 972249156 211510361 557677198 315262287 295679551 372394704 115316973 185434471 67373886 248873743 647333610 284200998 219639528 320278273 71663966 428838363 273930296 758176820 468707395 338150341 863672638 55346143 118461460 925187914 232962812 332863082 949660564 738320139 881089490 539760788 521710324 312544895 388650669 7885136 625890213 642290505 576366924 979612539 805911129 801810333 619233511 936061899 700615620 830459298 704318619 930258160 225592534 242515465 845303160 690912401 26897432 246244833 337053842 407544076 490895091 163413005 914623177 25351467 321547421 285727169 225212853 130601382 717658743 609094821 494187633 545377949 940767743 752802058 265134682 773637408 750244827 318806411 246539990 556867182 429748754 469899876 536813103 201135982 923144064 514343725 728914713 316665816 163382507 585591459 104060628 985136030 297446671 910880974 946170452 81120906 597884580 660905711 898327080 435651421 181903895 122287993 437233980 615901251 545140769 562445473 721522340 98358838 678420617 619265933 938233902 259745812 613621657 899058320 680905205 387753973 84143683 961918536 759586017 367704613 756593833 57317919 86002591 128192903 649714754 593327343 390341622 198908109 123691955 922489877 282750145 628749209 639863218 357751092 747568814 124667961 723833892 998340052 22887868 296297513 157901936 416964534 630234289 107491136 377901728 280682026 859834977 20347890 311504758 472896687 673240611 438168947 527080544 46938191 255852221 486163608 982680681 220127282 298419420 26075356 604482485 412451341 446340629 90411410 190034392 946192008 655397507 840012563 542010919 915069614 993413632 167215269 581335844 154158321 24532777 815969606 541123358 237634833 405131274 201162246 275375580 586160266 111560680 936413646 445132038 258964323 750668050 652238289 320262203 203264088 260291126 415473637 833583154 302915655 298119686 339355122 2077482 457174801 843833159 272975877 502823121 170925337 191127093 721475088 708926231 347683189 799792860 756895763 529234309 923154912 679195018 902932131 653844301 384041132 703657259 558969861 135862892 546386468 192686608 756719739 665449030 157346077 157864590 972411823 547545668 713210623 156302411 375525436 819959026 509735235 453087542 652531139 135106665 793193556 923519915 443048604 528471802 904710547 828132968 215173705 102298114 279875234 286748966 8400281 578060420 642384553 883103844 872497510 7601848 143022815 683738412 867259632 108647465 492790603 673998359 907595682 258557808 585247170 304826784 59490099 114555936 625517310 652609008 287952288 429890542 860932933 441698703 768048906 367984635 214535239 401429479 961936650 639298161 460068988 31278693 972014944 75040107 533834278 136833442 108113796 742806462 918690841 465876274 518016515 659486283 875259132 385157215 531145149 351454655 263615624 475962362 472204209 586145906 39103504 976950864 726402187 184338796 599676292 392277144 554292028 633503711 281242106 309983332 237589298 222130422 626983680 84152345 750313457 340687802 806257553 628135379 600252980 242537375 773530962 708314806 872762756 546922041 214241220 203490771 68456102 829961455 824688059 160695984 617620458 446252021 312440468 36777184 136165535 993280148 859555740 192726015 545920232 276390963 936600633 363745992 299882037 85321066 809088274 614498006 452177831 126043740 329926624 15793452 248077481 857911458 145370085 125470333 657013415 36316933 889286351 63112341 559426946 278955164 586504173 4689824 883282607 160757244 377039755 925203245 323980188 460133247 999096098 537091253 528433505 960044421 870569204 526670346 613166952 346713293 234528345 128418706 7974785 13041092 916505030 364007791 432961362 883820251 648664417 421250748 899135366 633917199 466760546 723798258 16000978 920786391 344476257 157989600 14437518 440328240 253614544 237883549 36365453 584210841 975901402 405921168 744764271 548487819 205844246 176703356 400986600 675097996 443975379 991170884 27117531 953604425 679766472 664004031 64940368 683298371 697374393 209537014 601249564 781934449 40328163 286579262 245329840 702502874 484851883 516606672 820599257 488534710 878863038 592959107 71994510 767279813 347171014 255574931 928395327 559450882 91527539 873456653 307876905 681188729 287247928 468850388 887919548 591502348 323570283 187163984 535038918 275275654 253372658 260834115 643334111 792798297 207128566 48041048 751425630 545316948 640367140 692561789 952983226 617558364 112095752 350415075 64490434 65686074 946301257 34901018 422095760 32266770 928662120 178003201 845490468 640283189 995195507 809158454 771090557 415057740 154941153 56330124 25291507 242117854 629840370 350006291 618100364 303004704 708370867 702461167 226707282 727220976 974579491 477857206 61146841 321685772 581495309 630767435 499570593 35303949 748854639 283499401 864827760 691192121 221883469 608453287 805854898 380901089 222349763 83263119 476211500 160229359 309746978 395949467 652522783 510353669 654449562 540084895 51125282 871223594 78571561 60440708 208706965 80353059 187094776 237499552 306973632 634224893 541549986 853173038 713940033 371403928 996051543 9442349 404911501 472295256 936541322 35698714 215866952 792216943 249310300 776618009 116828043 321361045 195327847 969972660 590972626 268171965 704713095 735339891 174893894 423831352 782327307 627754556 723586163 504509981 860257420 837267761 510229278 670147823 704216689 53634026 592535243 524511730 965478218 478197961 494871765 996216473 380834220 64998382 997880419 515225965 125149112 286080010 546676049 177246539 783408368 381547080 420174576 488964223 61630834 479064554 445228215 33652596 777392552 381308545 890476014 67116827 209698629 835387855 179256448 821265388 695161992 725957104 861623677 817902212 55692273 707388463 706271529 948660527 531493231 182859048 243678736 783136737 858373069 199298179 497788750 582042224 431677687 126451854 183563378 303444991 715743849 584730930 218699583 541577335 274121440 599530859 96291771 102847197 982474191 910653465 26941249 640984211 559045073 81367518 282322078 824389321 386482462 933841379 607889046 360233361 96082595 250867023 769490115 414679486 344600378 832372785 137806177 698783070 677491516 274610697 749112103 459477939 830805676 591941694 404119025 151269084 488506681 987775418 55887822 729198831 47669727 760723466 524302876 709856051 977607923 160421330 28164319 400398191 490146664 389169825 675521006 114951535 945173883 755192033 190655017 802212100 964101457 474239070 16919591 501031426 36835307 484844970 304391709 84707183 51602243 537845227 831560893 531527482 991808184 450978519 597892571 397622843 767643283 660729454 926494267 615468976 816462830 868660588 913616897 470383456 311909410 242576804 317306538 583013172 258387455 836339488 993146553 99141438 785864374 495990928 139519682 495675093 683958335 672173558 422191525 100262144 617285265 15081696 993551287 592546033 696960123 409980495 33497879 210348649 638088996 753013910 592916853 197102241 619877295 290965282 808239301 112910487 818867697 256362003 316342843 337799795 216619968 598026808 104892571 349067731 389717544 82642151 523480424 369129988 275187874 164729943 42019251 857449910 580841147 440313940 771418022 726761542 704054795 4925898 71442092 72194776 638950727 588313544 684163828 673317600 474329858 812146886 18661542 756443993 316863890 761852466 295466596 356725035 829810659 988469243 712696576 923675633 39787527 156293754 925495293 757444675 894087086 728754559 67977181 996222828 374695478 258233522 432604725 554525905 118528635 650060825 349799668 355706360 205441341 639656937 706427280 691089669 800238256 804239607 576859536 974013101 636841856 270928419 987275943 619551567 617736355 937963869 650363013 452327416 537969898 466742695 529198921 253761947 236683650 994157516 191680071 639287382 899408610 685760489 685602032 257539011 449823578 625793550 174825834 88483017 985908441 322829455 545062403 982496018 561099066 781522820 27435905 782927183 325663199 845941848 317390344 428341584 924091609 734283550 424625844 853887324 816278783 277916997 653326145 229641167 44129707 595524068 378733413 595445362 324195611 726620908 929276375 879172936 671573446 334492906 574072632 604353464 697759710 722581253 41375637 813248391 330883706 911115350 998403165 563461939 701235076 603437199 755687892 860922536 828595892 583213786 102409265 108253259 714481555 537744496 29650111 508530338 406234810 299955996 637265683 302136325 519464475 727743967 969716762 458744801 861691402 441110069 950607807 127036730 805713171 259311881 626254296 927504395 619895656 80821699 245585217 21586516 798994743 349241781 192181298 944566070 331772922 658618735 532808230 421315540 19532322 39034398 870586382 375592433 612875440 186381625 826503362 426304480 285277287 477748972 144161619 301812083 107288385 963240025 993533929 121663869 898362205 671375366 120115761 616608601 708011790 79872797 562030754 896337916 67492387 999054138 128755549 915651107 924129430 869637425 971091991 497060059 762881449 978420539 454298019 379985459 881777279 638746504 542407528 125327833 220840671 275295956 846927119 298450931 474868707 471678155 740940964 249121418 150905974 461501122 462282326 395546893 714999115 480544933 621529910 229740917 839885159 510275541 340456015 323827850 373098124 170619479 744832802 611186507 487176709 496733781 658689597 938059372 31583807 901559235 668711647 554663357 995397496 951781245 166891942 570253379 555829327 705475710 61495992 445263253 831729591 368600312 62502087 138289804 363160947 664766453 444475816 979207296 575114369 744880621 340419010 492976035 205024207 456371990 375655950 985323182 885012683 626572454 521782611 161484266 134729135 160954728 409672160 516659380 509980880 163212560 410700152 916020865 615820044 616859436 805127881 704210969 378626900 310631157 477866658 140998348 311580725 657932291 253160288 67440104 591544335 248145295 786411017 393230142 787874608 336661740 339986778 120539885 673737400 125987218 656738070 277576386 231351413 32018363 274518754 759970336 98408196 618031111 515521555 473265657 118765203 636805172 549884345 581028409 926443593 798263928 377702668 14075639 964491224 296370650 882993553 258323956 217774796 713549214 475216714 532304205 100728336 9540068 240865071 274301476 815489949 117947035 533469587 134394154 973559986 178094005 876993294 334867030 623043606 985426867 769078603 60195195 27168561 63864204 654179647 314391426 103186867 433051464 84187219 260130725 774197857 985689159 92599620 116480251 5278263 853349072 403030184 536506380 557456324 33382727 568065893 255261531 664351447 401941937 245472114 618274157 103659093 739219173 543139911 100783009 716972710 717091884 287114630 14194338 290505650 227812093 129008669 141363980 740168304 28015490 358491700 108682556 32268333 982780923 457137362 1215484 820458389 768824929 257672189 980341238 603049094 76597827 288279721 216952450 303469856 42302234 319300786 848090429 435063908 827581512 998497010 247524821 229912413 907698895 685713678 503283714 717244809 782894814 813999699 548952191 356236736 132862346 956758194 917219462 732367568 265508029 720203963 141485171 749552259 198573125 246934907 8632383 192466511 903076017 772736759 472280953 57802670 799843723 765841044 893908311 288476225 445460453 581550867 834847429 23285668 794067182 131366969 250033412 569700518 974803018 228240259 510139426 555755708 536578070 117196717 592347205 846392145 270860624 959726556 591241527 223463845 582438253 434634890 199542571 346341206 392410294 791561555 936123303 443282620 639047617 683155715 439379406 178799839 643961525 87294146 117805064 337561147 268780453 399804157 131792260 465773395 129107202 147789845 994825348 74601441 242928060 38402817 690929197 470205653 267404391 129916385 398546382 619900865 929270674 269569542 171138212 369461004 217450039 628683446 95704247 177827837 339495596 436779606 189934062 344654703 142067461 253982484 99588752 474414868 669090287 805714660 366544577 385478540 697483737 2718855 3288335 939302388 901760621 861891118 960422122 831291891 503827735 419376307 471406477 26793312 152901232 665287874 526571053 866114391 437955466 93957080 385170969 54866287 621500166 39370760 814250204 513278868 614011456 173815431 526227886 318395835 953635669 211465231 952138916 129198086 839283119 972292631 631894560 694045626 306209770 117798410 764998203 519272492 851352992 371404708 652917316 989457280 717761047 422311154 668491755 137393910 791155763 464283800 374057156 322023583 773200426 561958198 568826837 842340443 164876431 129978798 824836767 335828596 273532324 651859732 336373720 478441976 502584336 314561058 720422632 754713322 393279649 398530996 224707904 940338051 657511390 364905313 346028100 646623005 853356975 196020744 829280760 378858126 405614880 683188190 777191444 932286065 357958596 757834006 37594042 416184116 709108418 450413203 329138795 19156899 80821714 773082996 542407668 318507874 368054564 244086048 654325433 837667541 639235245 815082057 593430185 699140285 423591930 834328557 911769235 928162574 645032489 466226299 100741975 488973400 466943030 295623461 961241480 434395223 940181034 94014500 384934549 693129335 997265907 810252589 744474561 920996861 842670701 410144486 895095527 186164068 556294474 448823422 863183156 680105403 170589704 595053385 163631242 179852818 913677688 866992255 988006771 238026494 478516380 11787515 647783098 269158213 163912135 214086307 98128985 729655171 639105134 531911399 991398468 411854419 164778308 919289111 49145493 900817155 293647475 525966572 968262334 35065120 795870344 435564812 472513865 583728878 957958587 538414015 647714643 417147470 79751960 981207446 318076639 493043480 541576122 355725539 127788252 700308672 822098538 186471684 80989449 99167783 585094303 373352463 353936109 68929427 800254094 642677187 23597635 334069940 505323602 15359356 678236234 980217300 148801432 222471389 738648190 462427559 391373331 187742346 740035149 313501050 747638042 887740855 527999141 990455180 431783862 54831443 220904999 595013565 552998600 291586791 433700075 482460286 344148492 451020026 884988831 795262280 681059143 157530437 260124456 605582654 440214002 282827557 271191677 573755676 131767833 856414231 764302646 237106426 968643941 394958562 233289386 957214389 958496903 427714776 625822995 794852323 672825256 659003615 199759343 558311876 436869391 965403065 77852304 575588720 64448611 636337357 748762963 378366204 75896496 974427916 385100617 623175078 308048195 784775001 647744042 213083574 829955950 236410562 151500970 162170464 848162126 295285571 152706181 318721218 706480915 998583944 809444826 897433120 841779371 113306061 965549082 112591013 902908978 354650402 113629806 475218230 342507063 313471806 280050727 694356615 559440734 575961237 724772032 847675410 110951645 312641508 664000333 957409746 932150412 121853764 302579615 377079054 47085183 913817324 46072490 258633270 79195372 6924037 814065928 553191907 723081173 23487832 332119946 949014600 609609011 128381437 975769390 878929157 937581397 209335105 53033863 424728119 910511933 387225927 458371354 452560900 613709285 416515971 578993361 191914716 488128740 111842380 720298499 708149247 166176245 171372740 531830198 781996275 458146682 528614179 276615158 713066611 709376022 541728005 445548520 547854068 61861225 414608155 649871112 984545761 85255815 981836492 656311051 22395657 285765721 193179653 101102252 998761604 85301010 339807665 729396071 661886156 390440246 180766162 296218546 519917270 811040107 658738623 67435574 472047789 46541020 791824697 437437244 79575058 514151604 714170946 204804551 919966010 230995939 576267489 776314619 592264814 952637652 422103075 491727162 107439396 920335505 201009435 795933280 507582275 765283366 578137089 283886605 966913293 785944044 754582706 650741439 499580445 42415941 937897809 478926860 573789815 959491022 282992436 648485898 492323653 457922911 49144555 774360283 619278432 725882071 63897708 178158118 981198867 550750352 643298376 868227985 792287653 216021075 291086775 444850867 590807173 854916491 378814709 279561522 596623813 171217525 956366602 81806020 183151902 225514121 523195727 145425307 545873007 511536256 343024360 783714756 213668141 769818249 292383114 798784535 583046901 299516473 134106872 546510358 262534621 972779916 326860979 802057702 95920820 236145846 591975827 278664426 381260289 104046172 484221569 647658804 760107941 770924419 264298578 894959096 648469857 218345773 824597632 486007634 162848401 304409592 989467213 904828958 828752487 965702035 868058143 95109405 675993022 824264619 877009238 776575232 752073338 695701080 764441840 128383719 365717849 164919530 488562615 207517379 237318367 923816199 917262645 199077143 372209327 853072424 312946413 80641915 484433657 672206936 487556700 780929200 492460452 507937454 841375959 276488059 168556285 745732642 949483660 464647760 532173994 287828270 265722606 888158969 509714743 262024728 822105149 231482223 913482595 319049493 86695448 33642009 564668862 26944856 83142279 905621540 194878069 957919719 826359865 353812002 423059060 868818336 530521367 152095403 429698233 961780477 690568751 222635789 87169462 312556 616102777 920996618 363336368 370519017 716999453 66130616 271011579 55039097 282074640 979592141 432716403 9850013 221638378 544485875 782716145 302845222 379917109 726101453 980765762 33007327 426358381 118941737 860052401 109938611 826230009 884261396 108566886 627964971 587149742 908416224 909453143 555392360 993826540 514801973 898907583 557455004 304636857 673207911 678486886 259317377 738836597 358019763 978483921 232482069 120443051 349268364 911045057 891555647 475544453 187597332 504066438 647007353 751716978 436388033 270630524 751009760 433026229 482183566 835738323 275163942 350374962 600902607 940968271 9200738 893744584 313787275 526691693 115842036 368120618 641451121 297096370 367967119 959754658 659461628 599544991 911270830 174682249 122650310 605734421 80987262 787448695 511362894 626714029 102981732 168802882 184672541 155996731 862622888 298508483 455562596 499815241 749941713 438883417 866605398 739457470 865317330 439802022 719388380 755248052 687996089 414053562 269024063 410625090 19174529 939336490 148855046 514804054 156659429 535720384 477522351 421187600 167933518 929527773 149973975 884320308 835378073 579527507 799916850 466848845 479851809 412772592 143082860 36268211 594160759 849622484 410681719 712170589 391282887 609544794 948884134 108233413 982408719 947807850 715964321 473203016 572539857 436304551 507907395 153475739 439390230 368006306 814889925 584587854 791680935 893379950 465770025 869518809 677500258 244532656 242363947 731979850 231548806 891462621 102128803 192187921 151102654 212806021 608895851 231891557 202073757 234231707 872421736 773864566 802715697 143777799 344035272 406483765 326627786 238181150 210900221 192852341 342438180 301810077 340983006 103856086 221884349 598569728 688214945 273681378 276752859 181417709 802020694 672749767 347887832 763168844 936524002 257690367 307560541 110221431 158102810 463026856 523607638 12458382 970050018 349681883 469829411 836158396 167052504 619605921 140958379 704113735 614868614 237359967 21822129 807385793 985440661 368405976 45238833 982098728 158288801 575170901 426572013 976936921 558384807 839212658 291756808 104850516 943797862 321877946 756071779 132004187 481512174 852421453 349540759 309300707 792908459 490021303 906015234 808701536 720694973 498686924 174956324 405072736 855497773 255370925 5809045 705772620 557802527 154046875 820007184 704809804 992099805 231982324 535777575 447981337 183485559 921501131 670123669 629441836 691487622 808119671 560055446 390621961 337477666 167270798 688923273 116363504 388476329 819163585 998616189 381490805 619330346 67438241 287623132 415662356 347679040 872206385 430245310 690597389 548535307 329861902 197062832 336212616 299163007 923696789 110115704 397628129 332409680 659865623 117963834 732662980 537075597 801388971 678641079 636043565 318396881 205169538 274691800 967445385 369119189 285814766 685345173 927551589 189090062 948363019 584561048 787876292 908914644 504723781 807389985 154908996 410755670 531731230 76605038 88883029 491145130 136493548 322190160 971984793 131047472 723896555 421767612 748161764 196845904 120669765 15126811 485311768 443353568 882110081 595936692 777204101 788543766 640266220 634572293 43225810 454251103 165901569 630660605 455760623 18856534 593236377 278012556 295029209 268502746 942153602 32249265 407718143 611059856 920373281 938253173 283967713 98001055 182738564 330140959 906456661 172876792 708287854 888611575 378334971 690562384 833232849 642354556 606642755 621307571 524922311 450846784 152930698 471610668 847749362 28001499 646913264 235346705 474366039 690730829 605949187 797839824 321914382 339114379 457888672 261317081 775583695 881070399 405065539 455007940 849508980 934585962 594840043 63932370 10934821 710294556 975292999 960271195 364709089 755225294 976067366 428622272 232416996 455867246 98039770 843709657 547038517 114854903 412885197 274911999 779508513 221859620 288869838 807686936 537900897 16609577 219345698 497848852 249231414 447202017 21995369 170829895 881392714 213789718 736014598 192311398 78327069 249386684 123021100 343916891 951363968 588836671 344959209 508916993 67174457 721791555 361465441 378189375 132150110 432592116 914041254 207914648 681566313 774825524 225273432 425461340 769115650 349025851 895661939 231286869 437681612 543956728 534386488 785857402 872847077 112411851 982508369 520246626 947863379 23621558 502178873 134904266 548177147 555158618 474902835 943653436 746408493 752457213 505694902 91479711 65242930 894659739 174003702 645758406 855643640 279827693 789811418 623690116 723318167 341184804 185161833 616852547 69260578 321794883 765980776 52727615 429784491 203212294 284212410 410037822 936769394 782096578 617400889 448214644 882866152 296580030 785994916 972104419 501009781 545927781 295776272 389825475 81930362 152672052 42426605 865862181 429915443 545554902 893229302 142040737 94823938 272019850 740554868 836172601 800735031 367696658 823024909 51383176 330051652 102528733 334595698 434647539 831276029 584904055 10572733 518621950 544573490 185463305 767655666 971638248 522231849 58982405 588169932 953078679 379360318 241063669 600976288 476685702 573295854 467133329 754356262 105788396 425913348 231530151 413880884 759540623 726882738 842012996 807289148 300663184 672188312 93174463 943806937 352040915 990884247 221874917 644799302 926601740 749937487 732588816 549333599 920222052 320773147 333163206 73228631 8670226 484033982 305989028 893290904 651937076 581151195 488380795 850548106 462544088 288922432 22270204 552696344 881283938 543628429 654596333 986679895 160574887 949768931 144356093 713122664 855240578 36223788 747307657 88564475 410758415 843662030 564412346 499405117 532894620 618260121 599059466 789677307 809049333 800097315 833803060 942837714 933135777 920493736 315483194 888045217 217258696 213309216 893181909 900508446 273740571 234653702 475841932 177813165 903518523 180246183 71162252 948620018 969484700 594284890 926694356 172366504 862294196 910566591 407484650 469665807 292366113 92348394 691061969 770260283 396870370 961529420 839694721 749809551 164269177 302025429 936507464 708508614 576811212 463020504 134370136 416903684 49338298 211232793 706694953 459256561 633868250 173304177 173086859 814944167 807197679 415406782 118838500 297052988 862437555 622396787 243298577 415402761 815329604 330885251 811488410 920603925 282237189 707984274 787331857 805206005 567733394 746670893 576402427 524342235 365916445 276199215 152437557 890034889 956368360 171072130 304387781 737581636 183128728 857285964 645473166 584504674 213633588 707320864 928716696 724466617 527129832 343156046 588944718 350255176 340193016 676132838 614318694 992679951 353287368 890070285 861049628 346810723 290036586 302597178 409185576 172349376 361742254 891825249 346145460 919580704 824705758 831261812 794393047 545712073 260690440 341287908 9432070 530158455 375048258 8863417 8641265 59577332 656510028 805631111 25959050 350279136 65871359 995605002 296610112 267527275 109481683 834505529 955182675 412925250 526561906 255570317 93763616 917117820 270617452 224854704 992224706 253373805 985581090 930502201 167981357 517541416 14621266 70607767 922053785 397877655 146953055 215046550 814523706 324932649 571048520 329911156 137139497 524734444 759027853 996691396 928427398 644941664 387595747 668001738 72367848 275758486 67445869 594265319 998887533 347926002 757023652 468201351 897570597 125973306 647973277 97933856 302482347 111117361 51959032 394999261 164073990 399985429 803905792 648292371 432095534 616678528 418519107 218339135 151446541 680566890 500204149 54507743 288702170 765561370 388789163 471042301 585272026 631159550 607630092 82108899 591026792 736388270 850498350 951412320 348979252 744185803 151264610 695391535 705792151 115560018 939236460 656359130 100541526 173690117 101445262 248478659 78629557 916248203 458902643 680146773 212437005 713969496 290929919 910322236 10925860 832761661 60277238 448327454 341199522 583655785 593285464 963003724 435719805 921405146 272264991 974983521 473231091 267445328 338763465 365902201 409687580 832263244 102919025 985571208 407736981 677211006 519677253 517336420 667524764 74966686 17673070 398866388 781889675 948425924 234345095 449370109 307869065 738502565 663617942 72137082 872927591 105271275 206822791 928406982 413065547 506255845 973576974 201744095 791603515 245649383 560512974 470579056 745264470 188012878 682420581 597618990 888895289 437762226 943535926 625064854 239310014 40303977 268362977 33263956 307796115 869057238 113073611 881736340 960416203 890042755 640656282 725589794 245025745 77317807 173174113 724720696 237266089 688754939 611219986 565301619 147165929 646213402 498506472 634798050 871255153 232800879 756535263 91244284 364600113 988167828 555547294 113829828 723050471 866649049 100059521 571250979 677637675 703333839 166126411 747709595 949614785 607408904 731163290 568041644 458559672 426208381 828754830 840048079 908609032 10561247 389987275 936284757 612811986 637349425 667907879 949568314 246200648 373117781 586417857 449780379 219546250 396396857 198813946 469822880 156476779 146548311 699757388 92921907 645187535 663347425 324860669 297520888 337128136 560516818 945474904 115661215 789427317 358867628 128103644 759428376 653282106 739344315 983200073 67577981 582469733 712455966 300689131 549806262 262753296 488840474 261315248 307730687 965547255 387522007 647745155 934368247 407182419 227868170 550702229 527845022 553450189 595176077 111573723 867933627 949958620 425397186 506590575 331797251 179858233 162714398 733744602 448869194 195752965 232170760 494653302 95742684 578941685 591234723 964099863 9578857 553542930 956435849 663910240 863631022 719593946 843987706 173567945 588062003 743677413 701998013 217235304 583880208 999425710 77570399 957397644 164937180 556364240 267480956 264301856 252754178 458845072 490419974 559034267 92213841 808463986 775940656 14957063 855534020 328261116 880324827 274286762 663712073 352469945 756474376 876911646 526352389 210837104 931301705 295018628 599345483 703517373 230959782 794966066 456666153 968022850 710455066 640719156 318352696 770507486 105910511 610324871 319149536 145742478 360488857 139779513 666538409 391632840 765221412 731745048 70971245 483739694 311817538 492972548 881448511 421120139 300018601 189226877 548566165 688703069 196377169 423955005 959253226 114612297 873113851 608791666 162303372 175239582 725022094 365560739 841110800 765121970 855932717 277834444 169804195 316155505 760512161 105966043 474466521 275635865 261473247 352991414 942896552 533641429 674534627 760681401 769926089 65634457 784714312 294324665 54105671 790032948 963172994 470256525 494125063 785674372 92749992 342995273 321426650 992951194 624958034 170494665 291855960 933191725 381265 18637343 359356679 459412 669023069 291804782 199436507 108498560 380413410 68675735 988469807 932211429 835215809 257973691 871164645 830687817 129718124 475880283 663392402 342938551 76849070 144008848 124126308 242909672 597251880 335327740 648383607 639885170 224289306 348215888 266410143 984085423 287770579 184433443 7420610 647648121 167201304 112397301 273294339 575448206 256110986 323382415 268252069 124561567 484126457 30424635 948754439 679333534 842583691 840474288 466264201 682281580 178501273 268871397 84285605 491527360 836142970 382538669 858575310 116649405 45650184 382329673 600130597 255439986 882565436 974968163 632698138 702138497 705918112 948112383 926722975 811672217 173788103 499577645 672459632 323348586 697787312 715453565 246497832 983371008 361889692 118080572 86530965 29317746 882479759 900916417 345068805 768037301 697341021 555130432 678577156 655961848 168059177 504432214 568164189 712488649 610990732 558325005 630127815 992339359 219085843 549666163 742364350 297287741 143299769 816365987 640074596 891951360 857364081 564670257 244184299 864460623 207041676 458643596 502735617 592814462 783893007 442367776 404287771 787912151 524756904 295596719 849480133 965430656 653594292 980126773 750016754 883228692 104081805 709249860 832897680 745818733 356350706 279882666 343104095 369006421 319693553 743450019 588961448 26206447 231129988 732010368 606177752 653874307 48905671 612853270 569566385 854875793 792737318 487882083 244544364 703100819 165848678 575794295 743414243 212014099 189257273 696664545 607186268 301114815 600746697 102653053 138412495 715809196 903295402 248141879 876914380 785759643 492756586 430883054 445745136 930623099 299868394 197099475 354725247 957543864 9477325 108167371 473121350 568776755 2126030 9598744 377419218 120210835 506822108 792998357 863259016 610694132 542151792 26029606 81914689 17854871 940792343 654730190 675861664 439714141 867498784 972166492 856426165 386209664 186900645 853034560 855101024 829228821 135929540 186389953 864644205 999098277 544591133 911233499 325610615 77197830 971775109 547818728 496979497 292345404 603441474 779430414 500213329 560119211 275738454 650315373 243158599 762191850 638535308 291391743 292432443 76763713 190685964 157667558 156154059 39014303 785383843 810175298 109956490 627083769 54306902 660120066 166350908 510199658 265515280 661822399 820641249 764614992 556408437 878152610 32017463 619518134 51638946 636658534 893695096 970561899 478132735 323362462 424238341 472984315 454598762 260468586 424146619 561052881 492607275 479391127 973204121 95419189 950970715 356458345 549525305 806603467 600184984 210962145 389458146 757701538 64233491 8954973 976921605 51295929 121576310 852613934 655840511 25975837 818332209 371669018 569132070 338307164 382975974 735768092 592734543 480797340 804322238 509292576 147765113 360097892 797277152 704654650 771437931 901760335 21237041 408871408 8528747 213389537 192742852 985780424 294831445 509377670 17471739 902512149 912013731 520423413 576002049 687452961 455633583 784468384 873238436 367273666 642614910 522020177 587597120 444623537 360483924 920558074 201505911 932026884 347469669 646311514 972075884 800675037 857030849 68468325 458640023 999089778 204513702 105985601 394199942 500819300 874354875 325892231 316987839 7115405 119977900 831396461 726847187 292937476 443192257 32869727 10547066 812619232 109123278 815265049 788198772 866976861 270757390 514680203 80688295 780010980 411530378 169809031 687909893 825617297 25487382 945558521 481603382 236289435 460036767 767718202 499345076 175417815 542628498 489200774 975369090 555381504 507591604 993103575 783766327 299728306 119435611 781079540 606246634 100921895 341102778 399554439 994352606 323662906 737679906 687737851 616325934 953210926 423018649 722039949 214479823 58209012 96213493 464983347 543424800 889356160 399871788 645958529 782230683 357650971 702534659 344426062 560083090 452172210 935840009 978362371 343758999 599043477 773665799 236497080 860237489 561884323 218105804 609861735 541327359 546661820 363877258 443926434 356012257 308656580 751062664 926325078 756618380 302594245 18396595 919964160 578630952 25096630 160244554 300753118 355872898 712284146 619403232 619507323 30955923 464729447 123042173 383149337 295225928 943917930 595185421 371006468 625097630 929946912 722319194 31170579 733763589 606520192 184891469 351163452 507957574 189022020 80174801 284118400 501653264 767260559 591949429 410013676 352404536 713791187 348415763 928009722 99326950 252093500 464393185 719636700 277858133 273468764 758377277 397076215 245978925 929041390 220582948 243632528 596338394 93224895 186307833 448794151 479529300 805331432 709945081 477571145 5070114 164230161 127050141 579421980 801689832 976662214 568800783 848254455 40700084 13950822 453770378 513260342 113872749 142869855 90973050 12176490 360320988 610602628 467949780 621395879 624237190 89119728 278365912 719170566 743752838 96204589 573352952 441495094 757568735 119711974 170517355 81714081 343146806 3601459 903153055 228644737 128645584 283314986 47716759 886150114 742815263 120521479 908824414 603543477 381890101 997858966 275734467 300025618 662715898 956597722 231925538 473384301 146399201 962771840 123575729 959853676 752053920 740082159 70520735 59463716 966901611 712116206 913278544 123172358 803925493 332402098 354697277 428326347 656082135 851197320 615741081 684030385 122045622 342691524 60780220 504947295 254522896 683015450 243724929 670384584 612325638 236356112 934092528 335086718 301407820 41946293 406524633 690774139 342505039 853304093 888605631 725053931 599898421 238673522 483585109 816312265 293645494 658207899 139392160 175882065 87370353 411040596 859380278 553030526 506204907 354806049 357955987 923317358 850506199 808382924 129193819 793847889 867370087 711864980 76888283 577912509 315399314 829196017 935899931 961472481 682108148 952455964 831215492 736443199 489437614 162415581 104061394 204349616 963121799 375843268 457945871 429923775 787472061 363061344 343973280 641498536 458900429 457629537 34395306 870811253 306674596 242343258 498657219 431810135 502706578 909609154 535771011 142753985 533963895 175283957 80011188 30018415 84117264 802146323 766641255 441593582 86740877 676966509 496762081 518588521 135288631 107965621 39397608 613380297 804247398 705868114 355252229 649841180 229260896 327187222 284826086 877969471 642273086 848658424 525615670 749060667 261343849 639268043 705776435 483670762 844094665 448518308 599946377 344457995 489053859 299315015 490728143 41419544 470193731 334340169 80884465 201617403 463731377 192905654 214368309 540479185 362165801 247895235 41074584 555445952 172662736 701138305 250561051 71171784 416222912 193464545 995500985 645697694 279525666 502054548 582322531 286929153 11405100 511132447 68972685 571705316 821740329 564670729 65714088 473790405 973313833 790841097 97327953 506922169 932268005 343077822 298792563 302709717 229166833 805012436 806774968 380871257 997660671 484073761 580217891 860293113 993913606 753308595 126553437 302307155 570109895 260873194 466249790 351522988 379895357 289444346 392780050 137704382 608915963 430189612 892525471 328864397 877507381 484785149 95967177 961734776 944664076 789466581 506626998 849950411 954512392 898174555 476652114 719286945 697945905 807150171 309343320 474180001 916081655 746839477 900780675 876978467 767334203 566511662 126038899 339596859 5990200 614050381 514307643 738997797 81502248 427223583 973253133 74561264 372293604 214193675 905506279 449103032 861814908 665507469 832233795 421821344 404656146 945485301 704920454 407557251 123510991 971731168 504282635 901589217 912408944 810699072 969977750 59421519 107750413 246494219 843413946 266168252 376138085 220195792 297885963 143001515 896601981 558932320 177310262 680049303 136875609 114304927 843987859 825930846 86835766 236639603 772656977 442735930 899980125 48904450 650500533 945155137 195646470 777836140 499460126 715306163 58387211 749201498 523890353 421013569 635674812 264327328 670883181 551325100 132131284 436622908 251788684 910884727 991197961 807774266 976056313 697305936 728771508 384864867 307965364 981999635 810416264 200683708 703842194 306264933 636301183 306776651 808412786 555246505 257663659 130555896 259198868 656683877 699697331 365904823 137900510 97495649 604183433 959985934 935970503 115797323 54918254 286598739 643325262 154559872 226272271 145929722 632260782 207785744 286656867 493531394 989340645 498188856 164905916 527198161 268594646 379751837 142448094 140763378 429550355 626515361 184146861 450099444 245889308 159888681 4610271 198879109 120266997 331411689 127748896 962479337 871841210 589226317 861206308 331539349 32520865 20247403 772128872 939815565 908393161 60507369 515573976 925169998 4506130 179382602 976567236 210542249 2736683 845784046 826955156 773211756 248072907 598101623 167153844 897139460 341021703 655709917 701283869 443920084 243112460 454059560 530971066 225353375 334828957 703878268 490166496 175522678 700694063 549627398 922714007 634636502 560075079 656477709 8301156 256316240 535893174 260547727 148857478 819293121 733237371 889465836 682990588 614487134 622735226 279001196 546787951 426951408 658119532 152132571 358416895 71400309 717398181 589513296 176079807 294617507 327771829 790495582 146297549 766317553 90420622 405030940 205761326 857130039 229454187 600332613 999341152 424577767 662363981 70121244 919110845 788312297 156299490 452526276 926604993 605645226 6708646 616016498 227755375 452666718 554881329 496302375 154940833 360463400 187645420 412810194 767047756 483707900 30164528 523449636 710871135 157213901 544588204 426728989 900681806 314383949 159483030 264116332 987859570 991322849 154444285 593092176 501095252 322517556 394510279 750921741 649793787 902239541 189199950 194204377 957883584 241785333 727439677 923905432 825670196 267110183 113000734 648166821 995614988 456793528 186269435 379522074 898007087 843934132 273914291 672765155 885799657 298641497 584080927 848683679 11558158 658628487 446995747 472802068 412458949 254657321 501678326 48301151 940229996 307647180 429780612 534286533 876793787 240538312 68705372 820224654 870968699 468491309 139915348 482142489 194983376 10824513 656605654 900118033 206480023 897472723 837993545 698817732 928054830 583545030 485090224 845674897 497489550 535627877 446661979 16084489 810127138 221750339 704149101 910485294 113105751 398342382 687801605 377431304 158940758 538280970 691188346 893934671 722972966 17048172 908177667 306042854 974679906 21264676 25746718 331166699 57386218 489823988 761822867 727440840 823734623 366522016 397265476 222034246 111988644 199608089 12433025 298382592 575194502 860043501 977698099 237892501 35353877 780763847 93688873 113748978 643699380 573211131 783905155 201727273 691872814 72216658 874329321 46925659 551925894 383102371 184014975 979356606 335375783 966909602 187676347 694761875 28018297 799468876 140113030 362334362 8283280 868921509 611369799 86218929 26678688 526765975 580610764 211934708 417110860 912646647 271658594 878735310 302151148 525073640 120491797 91049023 690918962 808864709 781181567 283372834 499036625 126465546 828532122 215395760 83563823 656477924 175200736 780556427 775606805 620911401 508665166 415955798 901303397 849027059 617508093 29539686 523318535 298912741 106839750 960085207 606995438 835139980 112597376 140704758 336310274 921988723 318603360 163046821 197300907 672451354 305295714 724093345 123930220 855434099 252294929 534535431 135704690 658852429 35331474 216406940 130705611 364972710 265932670 268109967 847050009 343745267 161260038 350735726 358213851 13894617 516563570 541232626 272166460 199201137 270893092 606863865 719201999 900836683 622166932 584309182 99463052 690703451 233088115 904554528 837083399 56353156 232639941 330447672 470914789 829782607 666211524 894578539 156253679 977044036 231137813 382638093 93596678 252830587 208742090 231274171 290865109 391712345 953615442 3867021 248831365 601971494 291506487 907478302 889369605 252054064 703237655 161137526 93581137 92929154 175915872 150601964 311276114 988969921 611596991 844930762 646374833 351587715 743616539 854132155 275960432 321695901 615080930 90381982 524689169 371245493 644952358 402732285 553302615 644609399 657551850 767131729 120833197 472156307 55832605 435997331 963963067 166609291 466416106 163240207 669409676 533622891 116641753 87287047 815446967 939523375 9375118 402182120 750118983 292283020 960047882 187107759 718547675 47739191 371647392 349644959 147008343 606555686 704469739 690359232 509672695 936559716 579943504 138603655 13997853 336779250 79225877 631240545 433926397 972944545 110742707 769859013 203082816 489764866 958619410 971446796 433027916 302097372 125505226 996264306 186080015 877379001 417645468 741667575 40861275 311424993 146393332 918186222 826407423 787114365 539822538 953182725 349151892 552747268 385633796 34753841 276306953 762164660 10374916 358278080 828145695 507268998 675173256 323641505 559644204 985574031 603588929 198075584 559201074 864773339 322685144 958295783 177193698 82756660 273525468 988512038 537770486 78265931 562119195 896761323 820623226 669576314 268888798 45517731 841878467 410289412 658583918 667578916 862076604 940097578 128785473 882826531 814530225 140501528 789783119 299855867 707935028 986708120 30988091 146544560 375560675 339454833 877269783 802300066 4263216 141467687 637673740 411949075 985348971 169778930 962033191 496669799 621524403 545421639 115508987 264101910 948496409 302089134 926750919 274858487 24781679 562368590 397112361 503162164 435566862 647647121 64379860 821425594 538677430 581432617 386075652 972192514 54027273 331384346 513350425 943712048 935063406 291417103 595407943 590814740 93865257 66876902 877514896 638976259 803032086 812969337 897587466 986825397 862188268 541145091 701298206 139904473 119209829 158822029 429609281 518158086 833917468 359684889 606265894 946820788 945000108 11943449 747743289 571319 260356364 833000132 15304626 430677203 775878048 73144656 333082820 820110416 213067130 498528348 74095528 261101382 544323138 369671622 654888000 196820591 36064267 235228502 904315821 792238200 620583359 65473092 609751292 233606472 953644747 93459900 54118753 878093570 935019351 645458750 103407720 779629210 467266286 554943033 902181626 561000502 360671923 205440287 619072900 899298990 112526520 866035062 943124144 412574451 95564669 49988722 720115798 50837659 672682412 869777265 653795626 35949806 614742301 853180670 115443193 911604354 891245296 709821057 165027815 480570319 675181772 852377752 967683228 188442263 633753177 718181234 551710191 320944640 314817952 55534793 637225836 842998970 727752793 611839935 967228074 965651204 267470965 24520747 932052123 620431021 124199014 482995059 619333220 285510333 592220721 681545108 576055757 317075250 1132606 634665829 686188065 237945274 156757839 45336041 649835140 640669326 170044316 534270728 296507498 304576180 380515173 704194898 470675293 569488667 226324816 306894349 160898035 103840112 331000464 327232653 492359474 435388335 793093599 452455707 37758458 11601702 591870374 916696103 542091944 13995824 559849195 836466546 807190701 190686761 868950554 929989568 899389643 983837077 874350421 604429886 111009848 805834319 377193256 559959571 297606839 563829198 835758067 352062489 805002815 275127176 252123940 166620983 852612664 291665138 670417591 572925543 200859037 164850692 314174896 228870138 314017205 681762704 857910763 360245222 596896833 562799303 825786243 308670795 620586900 118141747 419208997 403996204 859642635 863324356 133586119 115394024 924464672 652844868 96494215 411643839 664092133 389090964 814764392 656518893 994421392 607021023 303990751 503724547 67371074 346997472 380296610 253018915 852410323 337000841 147330274 289760944 4899500 727882992 385149091 536568744 841489913 137006897 528052958 93346122 574128119 369712645 325335362 67464457 208520898 34768975 507763179 14046108 238827352 258891080 825466785 247094979 980704375 187110020 360440033 951455394 674355359 878107890 573809514 31059319 686901264 111569057 451425710 176216000 204099149 749051331 489878628 333922147 308038117 488790908 878402587 395141543 586142228 993195652 564495911 479086264 452255773 901396321 70651352 287558577 371272564 926392419 923497391 648411050 343534166 113007847 927314742 138978827 997636128 355396734 565478804 798809936 89013156 711777886 838349424 399841907 797716561 256324036 898398675 988386037 53221664 556818604 586772230 412268675 774920514 975344315 670350459 218391773 703185259 548244068 63030651 751047776 28913314 435564599 459554004 969247226 892627012 390110264 812579425 334633154 892597405 492347037 747876907 207260772 976732687 304692493 787678239 581723817 720187581 382389505 824720803 406005646 362571660 941907378 481924764 788615559 669900635 133865870 525232298 206653993 611780948 905746732 929240770 340095100 378296809 734363495 668570346 390338326 327701617 719722997 136836233 116591885 899906610 779171993 173054710 606766537 606216674 298527908 199344919 815031766 126527520 734919172 110796087 258211884 170107196 657255970 714186953 598659439 302597513 351205240 61025035 476681299 553839314 843080197 625667935 4163550 357502753 2424007 979025097 846388662 229297078 171037906 989899832 591998467 440712432 570702682 965290354 417750545 646432365 685761364 464734874 506832475 978206695 497575042 836873493 538153033 554913651 813504618 713340554 484644234 815293134 996492689 807615976 75465254 760998645 182739854 248923782 427583040 66937783 455962821 462973244 464815882 348245359 58883002 311160783 688808124 714122297 498418540 261539295 409537084 99454389 626278596 144576072 614833388 222458578 799216425 86607866 223285185 130039036 32843851 513655247 294997442 336508772 806881373 242002957 151795289 922160212 870450622 44026837 177761038 692234112 110242238 317412208 471801898 649322256 382276948 656695252 131317011 51547102 160021576 72970188 648410300 890056043 579277467 185740474 285960756 808922040 68507260 344348087 200232994 209799952 405268475 987893242 927720027 222978529 710450693 998949866 406395669 336282827 349315073 40909171 589027332 17198612 583183186 52574962 192245291 696298637 298835215 752437446 800702315 659262743 267443580 943489215 518465752 244303017 939324566 989663819 831502071 965516863 791755222 724063555 632834942 998703447 181853525 520600239 429835447 55356215 456802208 299666018 334570464 383974842 185230923 508655439 787890798 558488150 993961410 234770215 302614695 633219873 202519623 688965390 191918893 530041419 993425513 858494440 226981765 943843050 154590506 804141509 732205957 697218432 553156802 839377932 661272235 734620181 665337986 179110930 923712041 834173419 891842638 216054313 635933467 332711973 658520060 465631994 37612230 49711521 734882978 487862439 744900221 715437373 861095112 755658689 61869882 66426669 641898344 31689554 879034671 185467048 108561726 935004975 608303748 333477102 381161399 574579075 373762246 446241590 802920777 863412828 805610843 279597515 68930238 675037624 775058315 761230808 366551537 76993332 457640715 171849672 404379652 89138039 19191661 373883042 171867285 176931664 585206315 82151866 975740138 545088148 415868707 868908740 937523834 118359905 122497820 826325559 394160724 192661439 941949050 722565324 436223357 734184052 182470443 642456938 437312586 109080469 430030300 200665160 70692638 124713829 973317361 73617463 574194448 565801408 202945080 24866276 22133044 287397466 702916679 561212458 298883557 313048536 550116805 388827113 651531378 47850416 683144329 182896848 542468492 325225342 350532476 250852374 907003971 279411462 949934575 555425619 154419124 829095366 498329775 208683879 990430299 58697021 960852563 973783891 339131866 415692940 443546131 394918023 274049046 531496857 443864472 747671203 644812528 898738533 273951453 243824599 631560035 877636508 733455840 542589387 458281279 625966147 999788585 903952331 159705220 55388468 492745872 399936864 803073496 646791993 563346488 962333615 807388427 817932879 198951880 166553374 259649065 115578776 882101101 893643076 804659228 529219985 242084832 620071936 575361180 509597407 358364075 298069613 217578921 396441898 972085585 994041028 450825949 471586424 990813614 853789636 9378866 818673665 472231715 335658 454073380 422844939 724112147 186928751 408781925 913756767 218019264 256006384 111254558 244621872 10928074 324257110 510166130 120375670 954891511 93686293 753178922 172938601 871465022 532423356 466393639 793758483 415593944 495558345 162573820 995914081 896721520 535194072 78962321 135020451 355575782 951605048 965488810 62306241 487067072 881318365 380108362 246433951 960509844 143871713 69359618 438721153 671458132 315263881 305545308 941621695 635299499 8159220 801637167 850602652 900995542 28528503 921266505 39193715 82554741 325019069 236234197 976746195 416370331 65307006 439697627 250682743 802918350 126567773 842009861 880377990 860865470 675558392 34479389 476916671 512851107 990505242 894231446 538998756 743058165 430076782 617565567 279962659 265829930 402719195 687306643 741563934 168289526 398206127 7741826 948303123 712422948 951204676 246003696 310818757 556430265 359066506 168738057 850271119 737157426 423760863 465081365 521527255 483318366 353149731 778009641 441798183 523287054 487297592 345805604 248190285 734708975 695767774 825506536 233460650 177555715 541406464 606449580 77761578 721217791 42782808 930258444 647729710 729295974 475909351 213332491 597165864 66147706 35053860 146485199 163915622 497397742 584061294 526759192 715461441 801601673 645600176 876224286 848916993 741236855 284527825 420425367 339460251 485108306 657901015 726476946 989847741 192310902 425618420 395917101 22654716 44259703 664015388 288099574 29173828 28594715 603414965 804442338 313719380 228540197 427701851 636229433 492398932 169568221 258974863 816299845 511907877 874030712 571618421 673917460 410086093 929842839 699993743 954748413 487194161 357128341 98264626 418498895 857250026 759902844 867727094 585083078 444935869 132069264 821333662 239718621 988477908 694462913 882118872 145627411 407256293 939062316 327607096 723331030 383511332 263015169 94058240 815691907 891901931 537635784 996824823 201524219 718580055 611169413 748989870 805451174 176246407 758979337 911358457 638318467 168704177 942651332 61037688 541404406 344467972 435959602 673035347 538128984 893529004 431678157 212887093 812510895 875680788 212986006 599228376 111591114 75170309 157624973 813521006 296293228 500906130 857020616 413747517 857729303 164236382 220323397 507846964 921771129 536282459 343714907 117013974 231280309 532898615 306419536 688364124 347664319 84290655 594544123 496611270 481571611 269222103 555394286 495767380 230977794 35292690 398627549 528893703 731671561 878758999 391646580 226738345 518635324 601645325 395333198 543418311 729921787 860514215 259936341 348015526 399616668 242540068 285801651 943020785 414408843 456938278 861378847 852434132 45731777 194286322 177963748 920682519 690553929 111435304 26227924 47335413 373012780 969280508 144978799 693803681 358571657 246184764 871029399 48614189 493776704 169014402 341656011 649524776 934037071 578396181 361064113 663912166 321598641 682789120 403206555 260438222 230307739 525733891 264889822 384225779 203336009 456941200 507256603 102081889 595580366 198756536 880867408 587469121 521217559 5754995 695051719 248600081 957458624 350783837 393560224 188972804 89545771 562716873 120673931 912735571 95892198 232529328 723509196 938173702 955474095 780656451 36190999 486285072 563492251 537091316 783626631 88550888 434878606 371360016 593034515 169785300 315916055 870079320 635256382 543422267 891152722 429198606 441928468 590193144 328983306 400770939 482118796 947139686 378235237 65119524 673462974 847291779 241604330 818939040 226987124 483977603 387409683 838033406 906988109 383150622 266435964 828323659 848081056 876541772 497532474 674469717 651954554 823206046 457175065 652071793 986350481 533943573 284209120 384955662 686346025 893754231 758104249 598803088 94648669 713377875 964451471 892448044 440285471 716383139 549569470 132375602 720258557 387901847 999548211 657232661 666915431 871974424 78271846 499051151 986321617 879550597 531444153 287068926 100048682 124870713 36795681 125924473 892640873 443230492 61347093 261765937 500284688 844006350 62469779 920635612 151285207 817185126 211120977 149913925 805267243 78136652 941633577 907245280 415388626 425578885 615577365 512535328 130615085 397108405 504492602 595805327 279436371 678076455 689618095 833732630 617466807 366168734 22095464 946497509 747062579 352550144 220402067 144350793 20390976 604582437 239715260 804695478 271721206 168135675 243133465 460647911 743797580 974845020 562750385 328134436 724430398 123151525 461356081 200964521 276627972 565505758 512006363 166598520 469914334 452879070 585172370 673550544 91555324 875954462 830235181 258857266 562684119 717662526 665033077 625791112 815274385 7548519 988965059 338201222 965038555 460358948 379948396 979674857 404249284 240960840 279786158 573215508 128555071 211869651 809979766 604373384 523916493 452742983 68139701 472885059 872661916 214223422 224055196 412217906 886861550 795634483 831536914 750121144 124336422 887564563 30472533 303656340 276022491 612248856 840441001 416052742 46357723 774802846 148612197 494988771 189721308 386933766 211023443 689421830 659611949 849191214 449079276 797151330 337454429 581436314 136803645 351356162 325070887 895850540 571300891 755421634 613204397 615398940 290686020 441617308 191718891 808302148 315376783 554850225 720000506 469731285 394678131 208527574 167579014 953496548 951255907 989090909 539878968 791300264 347513496 381035461 337970116 560334977 355866070 388464767 758640336 347311396 476757622 936607765 36133235 745132369 941760818 568729486 461441326 888630468 565981543 670348171 123103089 605294263 361887797 573694953 441452110 352546315 607950108 314171670 837998242 427755138 750405897 423240739 122504448 285163468 887878186 198620667 931510471 386204014 844557280 649788336 377978986 80977028 754925513 906173886 895405762 854031532 936805490 193422033 966974374 997033340 488846472 598527093 409188893 302143356 197084791 538532060 318669224 913141792 835055610 250055618 155001393 366933476 47399826 830628645 559570232 417412975 318780295 739973618 312594691 936872880 131518501 58916491 591553499 542212042 774346907 643314329 876414390 522580940 332841861 410026477 634267298 118165239 58463091 15439924 589941039 277910511 879771299 599967570 738350125 534183654 759019886 65146111 161669994 986838358 146182506 738403034 976318841 80213611 723138475 545372798 296102406 740363380 377537470 783557983 122444232 451780002 483628484 664793005 445916302 836154835 845859834 984833129 348705314 609888580 182858644 254108990 336397561 348347367 388816814 589868007 157015141 865422407 199722710 633773291 572850184 71039543 389326917 534951825 506762489 890249956 856261492 930446230 711358355 764474036 852139356 82451448 297430759 283259389 372035553 804495499 935337385 149667858 756782357 548373146 995199940 766962554 320324606 792846768 644017849 569857640 875612631 382216299 305257910 439870670 928921258 754116966 755926321 615828994 677412354 511165493 204960552 456494887 56733822 506363218 392188151 790951098 497017094 133035735 907595854 886842713 574070236 631852389 636407232 908473442 525082795 628205394 277335520 490049909 516727395 843512400 477180603 311168799 477987969 435160395 801274955 223388381 972242632 868649704 416371652 822000179 831649392 144538611 547845538 919075017 461354485 54868971 26312609 46421709 135169119 473809111 792181530 351978951 891964269 953043447 989782246 212377086 81953107 247768603 852817424 845860052 103447402 539916071 102878583 625297696 853805061 444999341 450852023 843500444 561709543 375050948 845517413 248839927 183114548 683191423 300028630 455680241 981574139 434016505 389596663 451457852 705331513 755656350 292432050 134489121 199820696 754844827 980261354 333900228 162474521 742303428 497567037 645483825 207875964 254851226 905248734 718695152 606340219 794600160 400835884 116417680 620019758 63680989 441555961 846577956 876356446 523308396 548841752 198283333 578797215 152215658 135159437 857485108 311635127 189269579 841587437 965006072 454086340 572702025 886616274 223393525 756538703 34472135 48474192 159112778 433822407 460212099 118600730 416364999 373432044 613579278 85833750 580952614 428712717 339792087 52441601 936202844 537210123 600738452 716318943 244779142 728298197 83690874 194808793 985835689 644905763 501831757 114082931 305720208 824123616 371032363 294821953 925931135 811492097 519328535 200923107 927153477 111660613 818509342 812710245 69751387 268290934 250321247 117296415 349368336 524356280 949888781 396773741 384942016 486547073 209745802 182429524 512257973 250247840 174823226 382602937 633161707 20924132 425013516 609826354 866302664 150428902 1443878 34442439 338693989 499401671 576546510 997005928 675690891 72865429 497925751 723537047 193953426 531033028 819205880 790505596 242345569 339710210 266289194 617826596 304474943 200663364 387562513 269220113 100053421 968321121 220782088 666185591 383782137 904091462 946079340 431064613 971167292 311868987 367560380 873357903 559328192 197061323 883400509 420898709 839748579 320031492 575076946 112631729 835223607 881066722 277526562 136704162 150183771 327408667 430814830 985965188 718018415 121228006 461998696 28529279 227843589 904845741 430435425 863206569 131119608 725456040 775140263 244445776 443468914 223847300 405258186 334327564 341975223 600256408 441598862 227523125 643445231 119706915 642810556 107557451 835549609 108596393 292335545 874091824 759077188 335081752 298890420 287107764 679146946 295522203 395717000 59564201 274936510 824729866 128078891 937684560 534259308 417581727 930485870 633969846 556597225 271701772 102114742 976689268 228474324 569846357 635806265 456592222 84750218 647991006 378740815 432308730 123122282 620092125 266612879 382389734 948450119 556514641 494724042 916098420 15080449 359693629 862272893 283496487 379341676 48890221 646391232 485142740 353240106 539772181 703212815 209518311 270312753 442288675 903980450 928466122 250742811 260493556 828801106 602858758 105802370 403907409 821188776 289026117 415223554 393989152 378995210 992831682 893241317 256285609 122879609 471806776 487078127 166764927 867156848 723290288 934328862 658435538 725819212 217849379 258523774 759837709 590011155 970026886 61175731 225176489 743455256 778415228 571204571 153123143 639358246 595286942 98630844 751001551 416284024 459724757 506733359 754784108 184897032 278742445 299484477 859728770 536407643 450293815 108887191 5155331 421083585 5930795 126802829 202032769 361879916 818897747 596183215 108631841 341039045 558141141 619825926 830670797 695011428 538919604 669483640 718063107 611831636 867814037 69688944 781390352 555097429 336936045 901939818 698239567 265210496 975294843 136472851 181289699 272876099 485836298 664377604 466931285 718641276 729835690 486922636 787375468 724383641 199384176 221468347 964099775 972775930 622721285 986494617 256175729 654259226 710989013 771893930 408967194 242712269 107228613 518951614 282088212 988594576 848288471 48826090 803180901 699120124 644774248 221139115 32497580 679282131 521032539 434003183 551023693 916888435 950554526 367604853 780166597 63321505 138643738 964654095 6850953 829094094 803363429 50266109 938171216 576998001 78618683 718369764 140016284 532880214 483313976 744268346 711735820 490851447 873542149 176762947 864944936 235951178 852338920 704413097 664041964 986324493 867096414 203879873 331927953 403637989 997337430 840832835 985880776 750130353 368251016 485025515 600723450 721600223 926969279 668252306 116789016 840633928 382340430 441603176 619077577 172200606 518268934 966120453 425810882 102843507 500695357 577072977 968658690 952130845 633329435 961409367 539167100 417322080 883860321 69527018 220747446 979153526 319116097 339817697 854935420 775632962 513822886 111344323 382213036 140471280 758105057 638919146 252678379 946804479 133511661 855231737 824673619 61553734 51512146 88307084 194510853 971859799 795727974 800017961 86773008 896405601 575497499 471093677 814822725 162326669 886951601 89138377 277271772 903981012 615484908 586510710 537502815 712051427 668752444 263419437 263755519 37232493 601890718 164406156 375242669 994122297 703601603 240530439 276713653 248182015 728702664 349850337 560606730 648163187 373656217 834162459 649537146 963526655 591504332 440283923 118094311 747083731 442524152 691543592 993384620 139774670 631880464 982075475 756133216 687401280 225354201 523079398 205585192 760985087 436974658 56874699 153263347 506859168 757724157 539127014 11731616 628429056 919884780 570912319 752614717 43534681 662713824 604809061 984421883 945567683 833142898 433519767 423531729 256305949 567962325 6701389 681935275 812163814 260281841 97727367 65348529 273525943 553178218 900018337 595042196 865837494 485383011 575843886 753810614 178877531 311489200 231202516 389250537 749783457 152198628 478202417 673279368 722765687 894154443 326903166 319959206 945053360 104445396 681146501 762679683 273766463 117478566 17265665 798880163 89047863 756694757 114220617 466840164 698776339 699110740 270727789 952451931 931508417 759051307 627631248 302801457 874811639 620520442 820491790 789230633 163781747 423531124 703200508 806609540 784377970 136767158 549904617 80363352 413422342 874205166 552809304 789871534 777341221 931079742 28784322 793116717 652087034 571081376 714133834 473412758 2492900 189449573 561061426 416678301 926872013 157718794 897737791 787036205 241761483 579715019 759421611 858059803 163669634 607378531 187648369 751803551 390591191 878920993 127797600 943192823 395695763 644858074 622155162 109500471 14018000 821441316 11511438 437357208 906765116 475450215 683523318 378514520 443549422 40304934 417630423 311306583 236945381 894009202 935040208 269655356 569397906 951883261 202299304 314413100 443667367 149157018 854013374 759951086 543635473 35018237 9805319 47827289 327328719 718591873 101378405 900615153 318863571 321128320 285618880 376542322 879769776 33129135 268800912 669462672 992773100 453486277 199512042 807161855 930793513 99582710 794673989 419668110 67481467 662362662 288056901 767508740 175999918 185709717 257696264 486806421 575607887 785617432 797027352 915681639 435543228 308856613 652060165 292357265 865909662 744509181 478807893 787050493 909588928 710729350 117226510 863301382 548568667 535607245 139662095 250306745 460130525 580782116 342094364 292040247 815590325 651124481 475188981 608102237 223457243 824218244 812004364 171336829 71590440 422970393 202351618 148386006 546507205 611365576 913045259 542055654 405232602 257135541 652411058 839323953 60058048 302326884 417165949 215667377 858083177 616891668 271851244 598331511 775573370 746943446 728962527 929360408 224851367 604326089 170057436 605295932 961316908 963509109 235733048 633822044 948576215 221826348 326383778 300264722 127217841 346833778 959765474 373828011 198227758 275239933 819660588 288373720 609670727 511378556 66509889 938286716 447840103 437368048 329013736 113748685 620543288 899565246 342879749 390706811 456406758 365907155 803547451 479515596 97393137 842562962 185547883 805679742 163294854 784934780 512412035 718042998 58684277 76702790 473128268 750095898 232582641 301305382 206460024 599476312 570313900 223945537 401795217 650587565 560664664 375608902 21447122 78991568 556633930 531728619 677869354 91421299 806801974 709794834 903227609 557702513 813343161 30673876 966874229 527217449 573462108 234632356 228195587 9464614 85957477 541246332 216507029 197325436 810286575 998877078 775338458 426219639 624182464 86602279 421975446 230494122 148282791 589025026 15270251 928271531 816316755 836240205 221162643 27668542 523581700 593427725 574679422 387235729 359948284 316998819 170637492 67261715 289850288 541118115 895637218 581804272 627631414 732388000 677275961 574223372 659986173 388734017 686354341 285387059 981566792 418054013 742600000 65638782 555459977 203669833 618395421 464918730 295833143 445263234 59336842 578243926 241484788 575376031 381313102 589411723 859007674 89994000 883853527 677291300 597698363 458030509 513036175 603102356 860049072 770321656 798703851 28361844 766277573 789215183 106663606 173594627 523317891 505577552 643093619 394722361 90618058 2747725 259420845 749367839 554725996 938647281 719959381 674338580 554887980 332530099 526870391 601154326 650625807 773428784 979726028 67393069 476921746 982972769 297710322 380540050 319638365 259181946 454420891 668580101 993284496 525560043 473701619 835215853 152576376 277464183 727480737 606963763 624439720 45399310 464768994 603562929 647233466 479610405 555419758 49583597 487434505 269930398 420519035 630589110 221514057 276481627 716747123 172527082 156586267 276066188 184789793 768509032 756612218 388150467 177924 926503725 351813024 197656514 564721452 121670609 442105236 155419577 319146681 462007784 306181905 50175101 58110238 699732726 634607052 380029095 973515926 948395583 748332591 366060367 728612122 946025661 135125992 685254457 718816117 690540024 653728455 824931477 676999883 396988551 448058701 95026528 32023835 111213781 20227405 834932431 907310625 907966579 791268105 547245030 85309803 601300886 99454622 722885566 509241446 460563811 947519015 344701672 192374056 642112456 52632123 56213352 110691920 457997745 221836175 532548939 542876334 904071865 794933708 975222531 668028457 753634670 828277186 667471078 187111469 665240131 808175839 121034513 749000923 178708692 492292353 441876167 784731165 189195754 441473582 18610967 168207991 556181007 864249759 56328522 937249335 431634761 94005962 24052417 971006522 833060991 867183900 64600359 237887458 920874012 933533716 974666262 323116949 8695579 676113416 51112590 109429341 488530561 922189482 813656638 655337075 801186043 668210087 345763640 324016555 830172365 837944170 655176874 687383187 823446482 699528624 172137699 530248152 380284842 967529044 374064793 223971779 270790570 364214991 80127863 620704805 881650643 466549481 985373870 240816047 185564880 540677479 954690362 948455494 292895429 396276603 58391894 356365153 862953817 85336538 26634887 935169687 701228137 6723494 552618990 567374817 909306035 955975631 451328339 753115127 660530607 563731118 18533933 860738406 980519152 377334208 503950428 872201580 93389666 621982304 571348754 795368908 176907901 465387564 316732851 392419193 229587044 302701064 768470602 687073112 29427320 568584671 712054551 439134269 939033072 865444518 907436821 575253125 21877456 1052843 917604378 203922870 648061121 949821634 386492920 264077026 883144492 787657078 840354567 138666899 251662785 47424756 739168893 791547432 202329597 85157686 164706351 743131222 440918625 627952248 94383041 155711295 25991408 655215812 433049438 133495902 181872159 433517929 349806454 197228700 441543955 236881147 428374612 373165206 605953189 312270208 753470045 39680326 830559179 86195677 152618601 337293084 149621083 496803843 675537714 528342253 747378933 597886905 490038578 472268739 302764712 867618926 200641685 464826154 422755732 654603862 706681338 639445117 223618420 355418737 61578541 119596699 429510082 992801410 864143687 878427741 386547332 528775701 497059510 928108458 169303130 750035236 693035862 446812256 27786615 428861009 434138921 466631032 869509582 388643848 900008449 713715268 624125511 554177757 840863598 885911076 212621688 243966663 580193726 574486580 938137228 391367555 104117620 706778573 392612829 118217113 399736397 882600737 840607197 837025630 486324476 884930506 825534951 74503094 592429447 759761213 250672944 874145709 308375572 995300424 234990942 619288558 201294562 765307397 857258884 797929512 707099425 131331322 684762109 389103411 714548872 39180962 641136720 318229554 815735184 179276285 380039725 446875557 127764474 415765727 131282387 827866461 458294249 918069846 385754321 755758605 134405242 134430513 552068752 64559871 252679222 293928723 465851970 776871811 396743650 974854604 943054363 345331793 786049048 769038624 483082219 841992119 334918711 476958953 49667198 221204746 99102923 8167791 534276399 970316835 959950945 797097870 816296341 376124436 239558921 887436435 224141720 310450165 709964095 418992547 984595434 814546485 74955736 328680282 483531059 537428706 827513030 353926576 557669568 787731217 289448565 933118824 394173035 249177414 366578689 882102484 15425570 298654629 322003469 311375360 992195769 259346674 896951660 422497524 684539099 46664188 981105374 121944212 689759620 826799127 243960479 680615320 753947581 626755543 312889374 686854209 110908055 288818442 508434127 218957419 918506283 895092906 140790305 721762790 239200633 904136790 339845199 798891351 105688480 95447941 522185169 424819107 986631949 119841622 979537875 141134060 622001274 117480105 146710510 20337825 519871640 115782177 251388400 824970653 457374804 457113355 657392573 942924196 497742945 654144001 127318605 912396199 707716660 563645243 710722583 140455565 427520493 145796666 182182275 778095693 5379425 736522162 620347008 136180572 967823277 687637040 58719528 848146140 810377210 138180023 950940700 260913860 838974503 494596404 770828096 592699032 313045036 248053693 232911481 476215465 87104584 575020132 680752765 423527615 621233881 897416500 85258440 354485203 731622251 542734641 332692083 431591026 2334670 154074531 937026854 80506261 560379211 116072725 609461779 664684662 915592853 635283901 161917806 612162443 718620089 433586715 238643267 721290499 934622034 58515743 869666254 979489564 794245033 118373383 794641592 260013259 659775711 860513927 829517132 995241455 878649079 468224991 223774872 917569307 235525052 405868685 417099190 541461540 755456794 210916510 143428380 502553426 447832952 382555375 28469449 592902089 404008426 943146846 855835728 654333192 904520585 247146805 359606572 778808775 346201638 250532626 277147817 597636368 86219405 991328427 469402819 995476185 539488792 893701899 796274535 582036720 247217653 509197660 496862180 397819589 476424871 819732964 565122396 767587317 260875565 32680297 676545713 615109688 618474265 732245114 529774153 235454409 880346476 94171226 807807207 904828469 562671230 609559252 721255854 220300087 621080939 674841359 211160390 96834544 645020354 747314758 462570626 541121318 874776973 998007168 246578523 743396293 539264098 149433557 751721231 482165482 531141174 404125150 104929854 676606922 428139004 383355076 986726476 524670539 349505422 889788278 122969769 714402903 735555685 326283980 635118556 161847323 322252722 419979072 943892773 723894305 140637854 801420630 760032223 877464599 750967317 474084641 88411652 932229329 651003317 209190130 812885325 376963689 295315742 537728497 292069780 228939689 762612910 189483155 180582446 515166412 281359215 652457519 345120328 858318425 158189353 14978563 981926294 209851590 680498050 262994031 704063465 15627934 630764143 143938861 66434063 726273648 691451979 900594912 670779261 688664876 620329742 900715082 616856187 79049457 677992899 119118524 882652129 322926651 986787254 926830254 166262709 738281852 71691361 746189768 367625893 68337413 967505318 657636826 213582147 216796506 669585087 449770849 954335692 454459087 354286411 883941043 890520574 994338244 887112870 896967531 320496219 12066555 701697094 404221167 479652543 993650669 441082690 893577585 785490156 299792625 426419019 576370287 799549993 893596146 906195059 817126346 571442972 219536321 854220981 314338934 943022670 985339054 142121320 976525072 298532929 349294007 709404395 254082563 985064111 637017593 774416514 840803670 323428279 910074820 693439788 309973791 416141014 37713139 805548183 287332004 340310324 758417580 248493015 421735569 369835687 25686786 86873676 192479115 413396097 533363958 65024801 486647651 324318677 781408312 513508523 182318705 385048571 120495362 345508341 220476857 728911647 462590780 155200972 595062358 482900068 57192697 336983899 557224027 782631721 570005562 847753316 299058507 917487695 151457956 246208311 175984947 617484367 556605449 676012602 275451875 507035709 816469145 363653178 836512845 243808098 809241545 950085481 239211726 551013617 8552378 340970875 712658653 66006510 563830080 123361475 997861351 683756500 665111495 542721756 617472573 530462030 990378117 34395334 538552455 528996789 219445264 378300852 371848642 114308323 919783881 838279407 930851918 840105865 139886954 8218310 315462783 829177735 257522180 586692686 251840919 499048261 912131700 265624450 252295842 859720487 880373353 860930306 817747145 25666843 452464397 313390279 465478478 694184148 643332563 539660734 318526894 56345497 584668667 634675088 160667506 162776915 105658567 373311313 920377514 579843378 262403312 311267360 797602098 487185303 294183294 349546128 369752208 365578771 303583589 583750077 236410831 161083585 990941058 646620413 729069910 804489079 863207952 810004908 233591506 313664523 142347758 8443394 748337904 911775881 354351845 256300325 769234016 604038767 731533957 774240308 84498600 44306712 457003157 455841748 890942524 548962108 476381686 921215828 607187618 608487541 902146081 432167477 799244498 83209081 145667254 418062467 754624524 319677994 212044161 476608900 404617832 1654144 5797652 581538710 443559555 977542476 565048464 178290968 62795369 598522432 141758391 77499492 4473101 595586092 964248988 146269776 573500514 615250805 303276899 450999340 772733204 330750425 449693889 366045480 332529730 388258832 33396981 802649016 411609301 596189971 286513956 596631805 338450193 571391614 799884325 367212189 17325181 48907206 656791662 229768438 133469713 847120257 113552553 953534611 125295594 610485514 791416236 184793411 53548962 895168507 326551962 121392403 732682508 427258906 272893450 638478665 178304042 813298632 733318518 534799991 928706792 454562475 238185807 405811261 859459829 490074752 584657582 248868050 649822251 764913736 79752108 830405015 536141774 40408712 577515184 350659008 894857122 292831181 46641970 327396731 279133444 684492404 822947292 340325748 39350719 526152265 626667190 962981843 359876213 442287877 11280753 263126879 803347795 156203677 761823145 513416754 347768704 25321154 527931071 204715529 132532461 114116091 59418951 688795782 469490232 314256124 406047647 567003791 327283682 812581254 83682546 861560432 787035563 967058742 76830852 946707292 529407351 804199220 90458272 142470315 146069599 416177169 968761760 130095255 991060481 939187796 23621350 603638822 24233163 27561671 243253620 635635611 830673728 193174609 700596830 418112930 693527821 213423526 518273522 927435545 895935835 267791844 131363390 604032743 579022069 341835623 493134187 510832147 554294275 116884986 828049928 76913159 52365604 474822400 822641460 951516291 698954286 491612834 747097788 48474454 594350470 217075392 737197522 779983645 66446336 361001184 616143476 338535672 503629145 499540695 513521297 642108528 547479508 816679386 454557817 851682391 232721535 154080625 50895736 396573344 207536343 849404904 591387655 299770180 815946900 627448034 92085387 311491146 798779961 629041023 669295438 483821396 375131461 815639832 712995805 631184913 920024152 401474830 36079909 983742100 564728237 377866938 847661540 428767007 508285098 275084196 711830844 463772112 494504000 730739197 335753125 426277470 116839617 320416835 865096879 744836888 997251880 964786824 899000348 359766911 736369669 786088665 241085243 908519260 134591694 893588495 586919686 806652592 307874863 505000055 109160259 560337686 747093111 65866862 401619818 538949225 499598738 315527358 672199867 255308382 428185648 742633517 822718328 754837719 917181168 458468111 323504520 145952053 208006806 398664508 759315891 543373135 530089875 471623566 53784548 752329476 18236484 163854573 895122831 616738445 44648539 935431423 407639968 317015796 607661813 530953090 877594671 401846562 870710844 261424733 659747164 827856341 209976925 657552860 46630832 978534522 539180037 802015375 743455076 201691924 798303526 431045606 958333678 439071472 317575040 335186733 185653886 782048868 565551644 492657405 159163077 850199256 35489477 891296986 722220724 307875125 850655251 342972050 456439876 880582636 513760326 705339444 575400390 838360740 847181320 153208896 115811827 711548544 633140488 360430210 514359706 257833763 583891291 518435421 61983282 832273153 795862063 710504672 181440481 845877200 794961775 651995178 106658466 997883721 334500237 224759905 938759216 431166906 663461528 254417804 179382494 526908034 618068041 852755104 867772406 334049705 758071136 670486640 210255376 866065128 958780120 262781394 264082838 659853711 626532929 228045021 547786042 748164638 780740501 451963546 73925085 278575444 284920945 323489447 444475928 429914073 599271247 156753610 26336348 729746153 720377776 294011592 120349028 488323770 520500924 753051152 858039275 433358692 691241814 296107986 156875768 636994313 536283509 416152082 325299798 745284475 449187833 569485486 775651352 433933447 896450384 177282305 939404348 169590955 651568620 117459524 977767555 427343876 243399515 268007214 881716120 942516354 505327839 290610724 713013489 106886003 505461673 321871939 533476940 721664120 630761346 836313770 147839548 531126054 977090256 487017040 723952901 685308344 15789988 411491645 531513960 616264415 661211028 528808090 382080965 117436447 944267765 901250000 968071059 933195490 224172447 663856809 210706768 642902639 667842956 871147980 621940339 238335052 784143082 642748130 4302562 158359929 552279017 697310995 956964220 797383383 891061480 61391353 239987444 424682604 265939571 482158103 673375343 156836213 412472680 628671725 724537639 900273306 396882101 328393107 524346088 77566394 93313236 291638660 414872858 25349860 292487388 363272316 840192707 987667458 283143169 18178724 141277758 654843927 621801210 655913690 230654552 682360632 944731776 72049772 862036222 710701353 755069288 438051781 176991360 454824556 905217579 150249719 642940763 580605026 386342721 598431231 886809223 127692380 828066580 214487648 519172351 401198541 722573765 845272727 148624592 105180673 228250937 244631794 367460012 245092609 386157773 779415713 227431948 144331267 286690553 807853505 272301720 592034657 733466509 372256094 646649322 583904137 295250291 977406451 869695871 953624447 234842957 129619519 792418924 574251703 900553785 855512873 104550045 815181473 292715901 134257144 91744178 899784137 149909863 738727651 373264366 205882205 619295126 633778253 612357919 798936114 233105051 997216097 486326810 18218179 631769841 70342886 702181807 145941647 268903875 665755897 988189540 214668853 489712646 320283097 472628047 967215946 954718153 780511788 774377226 126060801 114836039 702969965 468838049 512518499 59859550 285076083 342833347 874429752 341702333 598878247 990657183 389845812 766060572 769457987 295952262 252046534 233076119 152696616 991102160 437404630 691123000 341545376 910316517 373611903 523284995 812938895 779789602 154983694 375115292 355397578 227385817 226723962 700557158 655457574 532203638 946485266 110114169 729066233 837346753 536335885 330572679 104944799 858265063 774429994 140021889 122681435 778822681 357617043 572019806 402554262 922516186 931337786 814684420 173083097 683661654 422350279 724805160 840479485 265260148 369223174 692462389 523473519 482869813 388350405 891266472 390889643 699953651 142052071 366160701 850537608 792618536 636033354 434192951 557488751 433300129 447346050 375090442 835493297 559725982 70371931 433408935 171371735 785256757 679420274 495336522 485138642 402956529 355076135 487697387 314075475 129188149 686684444 82879229 963434943 369658316 443682033 359483875 180502775 642586150 893938162 418809568 819697860 179540806 250765614 300601351 694786147 591706437 905952311 840003497 29790016 533383589 769662346 995399920 528562946 159298494 405668986 337921324 891209190 186443007 612735298 19943986 361963425 656453633 751347272 923743392 910580700 629805705 762990432 459887383 391710967 282011593 109264176 643669394 356206816 296407945 500676200 935780317 626245126 516525309 270490771 737324646 463124575 123671796 445901393 615209934 476278602 18669986 518816940 87265690 33401623 665483144 495035869 946831030 248667665 438083800 530445159 693073533 962486461 127894695 884184403 927966566 129399056 47170360 922748729 325131813 424755270 610539127 173612395 961233553 698376831 145988716 175544494 513446507 393463681 749589388 933607747 325816848 182619162 529165112 926064890 439158 152942880 490961212 858163537 316136759 184840827 779384858 580393827 168173148 871119305 389773190 437717655 40816785 188916285 590669460 653000478 376286813 799571110 276918102 405600764 146695512 879644708 527355410 566084760 221284607 520403083 928929234 633715984 39187995 236906315 328544506 598539833 68823828 916777516 534687799 564981500 607423598 797486732 688716226 345087954 279083816 744994186 528952296 826120997 883859341 159356010 794734062 590056122 20693520 343024819 470107918 423821301 262990115 428994510 608175037 836626897 900232304 644607510 497172208 462378723 99776287 1357761 490165310 586890467 739736507 219109032 952535322 621044282 993977011 465803020 753031779 879358862 715067065 942413867 804202972 157821765 832338682 485292240 249998891 433345918 519588586 503029971 189700003 148780871 64282497 873096049 347616365 923231999 136297605 102398911 411878382 331592368 519546232 721197335 464485629 153757165 148554003 627195854 135016361 837319191 797876382 887457609 170129842 316277033 914413432 826884936 72813697 175665910 214915019 726297175 956774804 480800042 999736443 774995525 496922775 649785281 355082710 36170167 31946365 327169194 434504470 953272465 780173857 952822280 111868881 260045086 545514275 577783311 47659028 1355966 982187327 453588215 612915015 84320635 412282355 348894522 350854877 857611148 366597808 811416407 119585909 301452372 494433486 34061100 761876167 564603476 359063969 657343239 635025709 218277235 485778315 543608252 898101788 815008924 100268735 725678511 445208483 993408492 342807481 699188875 961818021 608423998 583413606 875847054 278412730 95712874 737562939 998583897 151127895 292380416 243916158 252456663 412397745 408137923 283873729 888295841 298912440 723377531 403332931 71628385 942253768 86162754 622950790 325746691 675349606 302298623 862038674 792298803 745937358 416270780 855218110 879219587 231631482 440488345 705030308 218913993 37441675 445349288 174195479 996378418 613164813 600194501 88249828 960679535 416348723 513669859 326770137 591290100 363834840 349820408 267992618 658005377 208900842 175607724 107330809 35855297 621134588 578251766 225451136 85627169 465132159 368654706 188167585 580957740 390124739 398624527 756474527 643973525 982522423 849145925 24478900 192251308 706386023 664351326 962285752 622836915 494009560 853459943 55120628 174887616 71478832 82787870 957369872 710497399 868952335 614914996 630178737 333792402 365796218 176049748 2023496 3964457 658517163 368976383 323904741 332152724 406761067 791679670 386118013 538601646 904116037 359248486 934204017 573006223 514719051 283558723 704224619 724804903 933664579 661226367 737249774 563135391 96873393 555171551 76934946 656531573 389643935 707812676 410985909 34502111 468974843 215562064 619704771 600792877 347784171 580511025 7472372 672259761 634276366 586520518 999723546 38428937 10340426 777738240 900327617 570761187 134146256 907512397 45069978 504367234 734671259 858415296 914091875 224604119 916263090 120636345 880183337 419095937 894762307 291203495 660507192 274361910 755260335 177280276 947327372 229395324 494727124 650374326 412751502 941173769 65140693 139308877 975797263 374376317 634090306 97730837 135663437 368471191 667552928 755824553 875964434 749064564 7121154 120360077 284133742 318146108 867458444 82935141 818702552 522480394 642787166 699682426 742051913 843257112 527481699 602160828 280185947 47680138 623471620 602571747 129163293 252822799 211832328 258608643 444104631 490941546 46792723 285528380 864635491 147237657 93956243 291018745 234888326 583383412 628536970 303633230 789431046 666226236 54665090 631600810 319918625 244501112 982649074 549604086 644330165 531423931 113389349 801678462 283596813 224855115 936438328 683181274 376253576 875727757 774729642 21070630 964555480 893605464 198049124 783492767 835315953 263558065 565730218 85370181 177822395 611831836 753846166 17442354 920949590 309976755 104050510 734411777 398943108 466306769 70798190 849573791 196597522 65579693 354192805 163170661 207769260 658940437 174440863 778794614 770958905 154244820 708344156 608681177 772774559 26055239 387406606 455689224 202510976 937134175 135891870 608300876 638416157 686359721 330989371 801834096 55363594 716363474 670384930 528888214 794383400 347504955 134586629 230579626 123717341 44879972 88607647 2920319 504162542 184117371 910725844 532340713 21426283 48862271 606765360 230693250 958648292 185879475 147246373 599957526 480839567 565168499 745238536 348286628 314597025 68013335 667063993 963382490 617078022 269772776 732652416 308898536 742150282 401190013 614965125 425078960 252944523 788329748 946538835 460863831 510058799 716761746 482832265 515209326 840517913 255302889 500239890 330599135 632945676 532888198 682521663 118453233 965176542 711441736 406553933 525719469 313700966 406355565 307817230 461506697 764476548 306651663 77699944 172940022 693828330 558233219 218047493 203542149 799909605 990326549 339440989 18125894 517829286 585638388 704944504 579971437 46116898 216897334 722644674 205372908 762613164 942618169 48590418 734567961 789086112 980995031 71132428 774951360 734129398 617869847 419417611 968382931 668184684 57808577 608426130 753936053 242362384 908216183 199027396 813033465 438242580 784005103 4354684 280558810 166035253 562233257 132855671 436376808 862345406 41003609 439341796 184524463 552227597 608169289 460621319 790704444 816861101 224667531 372235810 494077512 432379044 601648682 135733151 954528183 778024686 404439498 313112032 133631435 160786753 860464168 120140208 199265902 203865945 493572417 518805949 352193030 14393277 891340845 395710231 531449498 658316814 444629391 861035974 608826900 339202833 732700682 948070061 210526325 912625226 127205028 574962525 156895604 659860495 246048494 269449320 929697436 90612380 230108931 778210607 479074763 885144710 549305783 321966107 870869777 745987070 224023844 625719874 455527111 758751553 236405289 725436958 810939410 620488780 838932069 905551113 328721808 429699898 930344678 857374029 396875575 374178658 810806989 47047871 708840788 252277548 53753963 338133256 725469564 917610653 368799134 89274057 160224824 673462605 882270795 631878046 215661056 63114645 747492925 971812558 168146271 348447888 294681661 496005218 425967517 345817929 451676023 2109119 984504086 78602038 673667667 133755583 451740058 906406197 697371722 28332312 403423114 360071610 241236979 316029387 233928284 580987846 430941311 35021779 734084072 668452074 794156014 593151402 706316527 790143067 373912466 524671443 488202745 293090524 534960523 728072457 950524947 543084587 508623716 103276533 169848610 300124231 240861629 489509048 400386684 412720998 387285440 78855662 809714541 577432312 386284789 437828786 967541843 692136037 299564370 115303529 149085440 351077881 906438631 460946008 405581361 934212688 979216129 837555816 68050880 259781749 716802417 508383887 250433254 761758281 459135656 878341940 459681585 8613926 532715132 820121201 148567173 727162653 598219938 329758338 69656944 726051542 72703720 737796702 500176091 565594932 362120038 936497561 889277217 113750519 813231960 247292830 844290238 73579006 253546163 475130662 625544202 446537272 292400509 234605272 733373065 603076454 788919458 459749922 802680431 347602039 881385386 630778370 663790254 798590545 956334357 588745210 138161307 838453198 471241478 418513073 934698706 751392804 204471467 686439763 796249823 530848817 765308982 81334200 859806163 851494916 143546176 196912777 754891473 876363753 247621143 511104843 620926170 458361831 414050115 757433626 50346071 394889095 869794793 281979127 162216025 410996836 299161421 443918939 483744335 398881010 527261154 939155990 936937861 704125610 667264069 844281764 852858841 440312222 866057517 411126820 894943070 333480878 814025002 431457652 706731374 543296914 781550629 696258307 6649017 815089558 262912231 175102715 620676795 807855928 685750199 637847968 35426293 22848156 492992854 206645740 670629712 545980198 584819861 39846956 57292739 914458142 739504643 471924429 539155218 912611024 764122209 633462443 707676961 449395370 533492026 674557501 816107032 665619621 88926879 713831221 116247414 485708457 661772970 809023816 264045166 39303722 133826770 675177557 765038812 887004586 381113917 318834344 470278288 176668723 813887889 942128079 514632078 188726823 865434096 334394797 802911039 294469569 462496286 595567427 74131783 392903494 568009419 959982962 183574244 143133674 600473220 280968265 746353240 871553319 745898200 532628155 875895538 508431343 501899080 146353278 774608485 488628362 514762850 444614859 731488127 906152062 482555703 700657253 781277778 178862690 423269023 572035306 934288263 808967896 852590396 865025672 101795442 932216044 728208997 775165567 859110493 727229459 251288410 577922356 239685690 550675609 877904183 985276488 465013014 440595764 274629587 344283582 526444335 599715811 354347218 137693082 650736254 218040797 595187709 646570613 483645491 24732853 231011108 510414574 132758898 600086178 663715230 495154322 27400126 272249748 304333226 51604565 209320595 946975552 954361876 917466869 759811503 676715022 470898207 147155059 178229201 771578947 13285070 817976191 984029723 243288865 722920152 365598451 217542261 736918906 812516812 971199373 250749845 669769782 626318939 968250639 458737590 879081585 493437398 183650604 906691298 145199799 516367234 847649339 367454005 201388052 371184148 942793137 472660984 77490418 47532399 231973974 396781964 546317498 268089312 72232753 824169713 816765473 447408504 808879586 844670720 104673179 653478564 929790951 913420284 98488918 107316690 10781646 888823412 94344533 172213417 280210385 378227701 810906014 923481185 970538483 519402991 525127206 11074838 231879306 698733560 887643699 333749088 266226358 224288553 405827460 388704268 570831479 933219665 396116716 984512850 182375159 235748282 798762130 369974035 499140170 50780303 757473923 202306838 362696376 402427219 583614007 51693553 356813001 888769000 107156865 191657021 760557587 573788273 969684443 30274476 440987841 555236568 806409998 569971453 841597873 291740462 256523085 525903134 552282043 971978594 521853211 211595414 952430642 418411733 891702520 20822520 866113638 524513290 225494579 668598736 542320828 396943230 33867963 952148552 816641643 460840675 788025317 436685314 543595563 777937561 620938582 67308430 873297200 186169054 552901425 945094608 109622302 724147743 63388397 39137202 434742758 926419449 995515619 629713301 515447307 481363673 503990362 354495735 189494117 42615579 925467732 245661279 966976171 72569913 69968988 814141799 506352405 248807381 625188995 162600331 295814068 584862838 353914598 163440937 260591400 391980527 980763034 740804463 594523497 82735410 414479273 133178374 971300021 834533163 558822350 889121139 323318138 347743894 702775834 226553573 446896615 178686362 548525532 480210721 891867651 77267053 722788892 507077801 899270591 48778403 414009754 465174989 656842495 283108958 421310077 868213751 15210731 130888986 350148034 794013985 43053726 22196526 828126504 263641103 393307394 923151892 62487431 233207871 635179124 973346104 887216414 275235084 238866885 924836476 63898683 153400751 748292016 624961947 89659825 808442507 126560785 315363522 93316421 238746716 516961437 398969710 642190784 372634140 301632033 458836270 144721467 804828952 808020027 531814832 196677244 597353100 269342676 318834522 730936887 465090174 563791264 903155761 468694586 783914091 591909934 793268524 779748383 363895698 967592686 342314520 519430049 951178238 708571333 443864710 341824943 670518892 51770972 244278597 27197707 675056778 136768490 437227149 800795415 786638387 48447122 376110632 924217565 713623815 403154128 345596781 548815219 745814823 828612148 185216915 50328388 191569601 563337895 444700946 764020947 101462434 804689513 793612582 473370118 849278183 107441323 117161985 227237252 557531321 167233856 513749544 959541670 36249281 887214490 577517373 733798406 87703799 354062824 597826689 970300694 371683981 960881346 430353706 379825117 678056693 306235303 106199745 626114793 626613691 841568546 646651941 632669302 58681792 798978344 325911239 413488920 984566645 330062261 624624820 307569872 921513195 514593320 293088231 190853012 581404660 328324318 736657844 652339491 293871015 888376499 428981194 756855105 129667793 439436466 596168224 797533018 91672351 611250059 3649350 827062192 391098278 822308020 624872604 150820729 338037671 753779507 652045689 772201692 733986959 166356700 446782842 919521590 694595872 450928819 979831151 923830729 55369524 950931340 888479590 617359400 509770480 193377707 295476537 887105068 636730170 590613499 968575007 938792769 226455293 701432723 895812911 352194369 146794974 169895955 271112372 570173229 424756784 855486406 782225741 6214947 168082264 336346626 96559642 760629974 772522085 122130692 278029610 357130504 658975932 141701935 459624793 814881303 884679686 350250049 737880090 637802531 963459038 287063138 244972429 971165188 674860334 861098231 267413529 243115630 341704222 748803441 171295283 614722320 912657312 247716666 460689205 66960113 497684932 690924091 468369170 440722620 828919508 210018597 130109725 746556328 325796726 534553202 178855410 105605651 230492277 564941062 33792460 438502530 524466225 166004003 671880516 316845397 256659911 672565606 222935214 192128446 846072536 837563010 939852807 575545948 429040515 104507342 611758590 426409867 53508820 554110952 743473375 410812082 44533668 595973153 22813090 722085977 212408527 587612404 77894208 531319047 369886036 474111315 147377765 109641927 331867637 652748067 222298486 952289095 508496298 573919459 686057116 849724095 47549461 124256635 737081518 436952531 934965548 43029478 543721110 864809998 562785266 164036116 867847254 557299480 168732539 104561096 955806295 728122196 865556929 425128671 285879323 640629542 849818257 780194866 31872495 559131919 161392514 655816330 783278548 107853530 139468753 657062321 68650151 684934591 804486053 755121009 548413208 29445847 157679580 23468519 436654014 880617504 190389143 993117050 243070154 942211544 357963703 692802243 222534659 687182177 337976444 569934754 774078785 654956564 206990424 77039976 917476586 664055413 392900027 298899641 941769324 302290344 844907111 988776543 438265225 64399187 904380369 944196081 412917377 600318484 336722731 968760421 575748002 540430793 690786424 996225918 716650269 542318365 411746539 670013049 685836613 337421616 961939150 504666220 330070994 510760618 556815006 987688265 288209423 420008003 933229596 367198117 647279108 879725450 845769914 862905317 217817308 740610197 274271196 652753343 666612189 336164141 705455242 298922998 801216131 983298428 956921265 936317756 932901288 128765311 679459795 620182736 745116970 846056015 177758744 503192990 693445804 121339170 587116252 931342700 531008739 279329265 873090359 319796639 628613293 706037654 992340977 965954156 126094265 419965097 994751402 543202108 146221405 138320700 16359544 709785014 866095060 338773888 286970353 402557152 345184282 487101789 855036418 681295853 61110554 662076474 868813856 276915120 186219088 49524280 785635025 726486848 218034354 136936839 261307354 134932222 446460058 428176307 258389869 193200384 748652184 736371370 266341483 774358970 636514153 734061730 182233968 877027147 320470713 646832718 140284445 273042638 689721062 108752136 777347146 172724516 667321557 417521199 551174749 349949278 938440309 724512949 688790563 507989079 577938375 730707548 81574854 239897660 180816423 369117249 112154556 318965501 62764874 601244403 26031119 206264864 786906000 596265326 595339099 477964395 578013066 231287082 144287697 835699382 267648523 200661465 799175818 912366495 560702859 749413170 572845814 990779246 783152782 883663413 351003285 867119083 179518207 648337474 894807829 109732405 434366659 626955178 227651366 515154072 357331189 704241528 425081009 504781301 935593792 296950153 652575069 925465543 428039372 885340048 258378690 560524927 32312865 569038185 61453097 397888857 750932289 743986582 966060932 607052117 665696625 647318837 701882445 7368975 728282531 778338664 341708720 4533138 215796897 193321103 977217503 763203109 782936690 399442124 759502037 100892633 629687253 806798835 853832735 709959327 218970655 917150090 125714943 39553141 149429978 797519119 307712705 411951646 137643368 430123203 738763535 729488283 890223750 454500512 204798804 742688133 300541161 549023872 997858124 925372304 702603482 44962968 295012759 899846128 819633565 482616812 684536004 524597346 320364344 714146673 684259025 34469207 323854601 893763593 129088980 860790928 612717998 424586793 290453132 225985676 752283649 447469972 481676023 786510908 534063553 196465559 172222426 440395242 386608109 184734497 306450992 69189929 18402833 642748621 197840058 182056658 833899409 888379987 582952357 905063966 958182046 564715898 347861701 9493940 109346804 987481625 126799444 778186472 30926890 297170277 246254475 940205744 868940984 49682224 416071189 510428038 85736546 22063634 750346151 986322715 81304631 718271595 755532986 436034594 687817296 40820863 552317178 631565199 975231727 231525436 477970143 249013145 399056054 374584390 824610889 422997634 436309419 509059896 918930958 850324952 486025826 56806690 933371850 658923224 21197987 428046273 154652639 716891399 362901314 729624010 472805578 88938946 54372300 504379666 874896483 895124163 218562368 503606983 72703976 465929042 875579365 685317331 545493691 843676935 403598284 941176065 620366637 474677352 804607992 153051 557266825 488838479 561199671 778481410 530914827 192621373 348894444 401520360 438777139 331684338 926033654 163422593 139759772 815855300 89400098 67493851 373155506 802180752 658091602 579184689 985156219 379798914 513093200 67150674 159546570 927481007 895396097 734557196 217835672 697882294 556061048 885879560 648361883 34437121 44419257 3409578 708573434 173090705 79638392 599510743 733934878 186193094 291928834 636627175 439372101 86853761 374913018 143179685 46830870 413372036 281017562 143867925 502180265 593088277 937352297 759037020 690218048 866025843 627250477 550946124 127177820 540227791 863528074 185064971 863692388 647538050 995403364 261480272 323974125 196812268 369395144 82805722 952493720 873731826 775077374 783741692 968856898 801714981 890121878 113442127 208193894 634497453 903328802 98771888 782702062 499257501 541796088 61536650 497525940 632451515 908583796 155938095 192845222 2170669 351131610 580353632 174279490 21000602 159312860 208214865 338110956 954156873 156005614 670031353 329558220 744802330 781502819 606083606 920782968 309237213 775622849 502619939 728994068 238199442 484603326 380201878 903509536 927118907 709013004 664649885 511377642 75124500 138529395 156751422 888406355 829878659 445022870 406488683 846179393 547943786 619059703 148285552 199456556 379829372 900136546 974636713 747009998 506196465 589211523 925952034 640099261 727221089 367693879 65782943 207055819 785466061 71042060 453829324 487868566 573067168 677992839 182449469 774074223 403875655 448700285 710851149 653258332 401381454 975707695 33858290 883166388 187237457 673156579 700689895 136719940 369917806 527532159 549739972 792929002 764078988 972055974 703013815 588601943 713061331 10259597 719855578 533938594 188167020 762995484 606577764 50685765 408056206 858363926 13759048 247745726 285952420 605635525 923682420 758140459 218966707 496045395 219136961 363588276 225007296 382210347 435319163 283774118 188103821 355059492 176076964 471857981 74398750 777931369 194737893 586945719 358316933 447850839 783426278 640091587 642533307 432463471 409429056 446987184 403863973 851318174 375541732 213027231 70186519 81513138 908851612 302978887 869699816 895569206 509078256 209529740 520011425 398445418 45327242 731133997 962831633 438102611 394573676 794759689 860432218 93189630 380087020 480435295 956428945 730056757 758821115 74226284 667033720 538045906 804193475 970575393 470912872 633465657 707446025 176469833 254221558 607799709 925550738 371895617 343372469 209600963 91837455 364214230 167311669 698925587 264179147 115826198 370721879 764606941 575815780 82468908 487153231 848913618 533974738 692377389 12785902 23703395 400278217 61026274 976002477 173495056 89918111 241238881 422271969 715027889 101911106 139310908 479162256 31533878 801516437 913135104 59201132 853197807 202819524 171225669 718676320 995698185 418360152 48242102 287258855 863515881 217395259 228285700 613820959 48024466 622316498 242260322 829521746 772850321 754951847 275049911 435728758 736437933 449201501 770780263 656546863 400408196 375130906 91036245 570942805 979988686 807639313 737122670 907242471 809690246 603023557 235279974 110618769 863223690 718459905 190103709 373268122 87410566 140002122 456186060 14176956 705799109 297557759 518746202 346067228 748027031 264571845 933338531 737415707 254830726 711550872 24041419 661146090 737980048 769185014 99221361 145077675 489551401 857622703 622240442 237636568 729439893 726822715 270013913 343388809 282546370 799190455 533418360 695943334 724060053 167981117 503945776 547551564 378212812 327067003 379366688 847152753 452771123 839061430 72870107 44328817 172106752 508770398 670636928 438494078 341435858 738432996 723234797 637508449 917862746 622487192 147608596 301115633 798910300 796304991 687296097 523771310 61181653 431959797 245928389 253969232 577905067 402683800 819137737 136822624 915626354 830440976 296362392 305002551 251096982 605806138 577816581 659128093 735354305 723721186 807389830 708319283 19901669 876898835 332617468 144682150 475393780 92530443 633758025 193298680 198578597 420370977 357809420 532306687 180930068 331664704 7230812 550100833 57166674 132568910 425004343 763507852 458092126 397822293 766373366 8546302 368112115 64177046 623128571 105130355 202807835 581820565 149562957 483703728 882192082 859850908 177334408 77711423 729680328 659774367 277863585 819674018 66334866 27784381 540931389 529279721 695998925 136007482 20762711 212937314 607585617 452920662 741620347 436656769 574242595 575486943 134039161 442350765 681790716 773065308 260976769 14223255 174204107 10856205 964199975 641242830 911043994 874808520 974414457 929655622 167798192 873261708 379171432 552584240 814487965 458736950 993915734 648270877 647297389 444186337 728908760 715292075 745078816 384118845 119183522 456124687 277117580 217147262 264655719 266963889 940236449 439809723 971810058 988573181 964414037 2809539 250761273 212401580 497518423 365783765 702865361 25437972 579476985 687183531 822609479 414735575 175909289 887880516 385426045 914537222 333108289 900180558 716921600 465963548 53662692 257945815 750577765 967251934 590534245 519547261 261287860 513377524 910978307 905618436 303996760 147930548 14817776 510005888 629172428 884815932 345317460 190213024 179196550 29060419 589930373 699501944 352382535 710237575 102924358 92853045 159635362 636962519 444062677 536225451 967751030 112120532 418225823 237806506 575084129 80884080 932094152 947133139 221423829 967307743 112272854 141331485 697172484 80910803 238993232 721240208 90926720 479642355 971335963 890941755 232045768 524618709 789413991 551914050 31973284 214859433 964323518 472232349 796408777 485169717 981908630 358318699 373349799 764431768 732356066 381358428 468130570 900274356 549643740 502630084 981372144 601670621 443819642 795243771 583868767 976996336 379883537 455103538 184946520 60580529 111798772 929727146 821769317 176006360 840836861 608409298 814071151 499341398 770038075 120874870 469228327 896661561 689286135 594120461 345392134 540447186 742702113 528918686 222122162 385629678 335545521 802617259 673222032 419250449 215862374 993196736 22466181 690577460 562880905 483290987 901948615 404514720 639361787 571827958 23168517 54099629 450765877 659336455 499480974 908035426 118201501 729019795 723967507 999299741 869499084 978197900 273599503 167678557 632724007 751215514 815171283 471304454 952769477 937862656 500153383 572294106 112085176 46822576 504359530 734649167 729468377 763960294 36385576 373991112 594516035 457181477 314596383 670834706 891567039 50806050 342009350 925459440 121727407 515493355 311828609 236728886 818335141 833684811 443000416 296104019 508054440 603643401 901285995 104363358 524102480 433364122 451732220 771111629 413187370 967896015 986631823 993666328 963696419 842616331 272301114 659081131 802848440 300356975 262791686 656445350 172242404 250807048 362385457 273592093 757859768 966216546 126996585 761612656 985397552 351870047 672330093 634314868 574950017 486562186 378532313 704649497 309503903 310255074 825638113 203760588 446940448 68571925 636711413 467060249 524497373 645352542 765146382 481332454 940896761 497542065 654377439 323720104 600552013 182914933 58482579 839819368 225043982 129818899 239901395 975916943 575013879 256977258 491129356 580418735 200437419 766006306 588200469 689063868 726885448 340250805 912257630 316934935 146667719 3086219 885016636 329547646 8446436 296754098 668602703 121291869 32567300 611149553 526582029 661244421 680446750 76049541 920902383 465276624 451159691 813322598 935789827 369055639 205846467 564496499 495142877 858512959 281807549 627405187 679925645 876923310 2754107 424081983 301971719 635404113 516929316 285620125 941308350 820339586 991939978 613853884 588887161 777860107 103425736 775765650 833880397 313411319 833529427 131902584 774822285 318453545 885971038 926138238 931634700 815730232 68464059 218915348 769693903 218352444 140328083 869614050 666978581 31949166 85707128 813495586 888617225 384577284 926300098 696209939 256444917 285303060 477767625 758345393 981520978 176127255 553938589 67726491 998568217 482459390 678786845 757107151 935561854 456771552 460002794 446004282 509860301 992489725 651553056 216467556 347490320 371351932 67473703 428983750 744321216 376325592 271618871 416370473 906923321 225714839 826035068 784894644 986538766 775008405 806497011 904485719 526645823 843332918 282617717 119151180 927488593 251745579 24424211 216824255 15146961 884286528 796424317 71545150 331198455 201113798 469514056 269706853 994864657 969044813 647465387 55170852 735830207 670254931 955512839 320128685 510642836 70001250 761884178 477318228 380307681 981700748 287773397 185050117 805759217 791012505 650268142 528006424 156374497 280498053 226597601 128419527 205935286 174826047 197775936 381365083 54829337 270746782 580335772 649199307 389463326 643746044 574054604 277619627 446642255 463597386 93053320 985076837 518989422 973622811 2783243 753393108 852111211 11288756 221168967 714843772 87464995 754955827 273715834 722427190 33012686 465480152 145544995 653095599 29777837 426476011 630955276 614470593 463789759 856051523 138910417 314077301 319292745 734627565 959795512 324680702 96653714 821991927 868993787 876957212 853993367 974802713 443025058 200129414 270225055 284697781 362682363 417287613 191383522 671421063 572819595 395464174 836311115 139793198 963018714 223734285 171857485 808607200 246472914 427101147 306162534 172059192 398353452 406149878 4796164 259825172 852795246 654527641 989369726 74804683 850053270 555846469 122887727 735550085 251833604 469419256 406478066 653604816 259626633 119523130 811365993 737809728 142525164 949993101 454062406 838856039 790729549 264998448 983312061 509268730 16543771 245944862 188800967 957544827 454357735 581028670 493448777 680756783 249381099 850498681 236602342 596201452 898688458 829760256 59834046 765228205 455849235 298261728 667862601 956942222 650828871 296139971 30919512 946058829 363051972 602368074 178134026 849073703 264416581 862185014 398781347 771595865 423167848 922588575 363558076 516450860 143137589 698708361 744212567 360003648 294294725 413577855 809882421 914073122 906409057 321430559 926377180 699690143 894109658 740734218 955575310 860700269 345429095 60847377 210539587 875187960 418913124 878014159 291439052 819432675 494858259 268615742 119813005 992027506 127001682 232316399 646919807 709856992 238994016 618733297 385180304 961839487 244453321 506019304 149114125 841288132 90008185 837902565 293309840 605484006 414179557 926283572 366223934 685764236 256668852 658310424 183572640 564647438 365298642 145938745 712122192 739489747 253613860 559628747 856404692 825098015 136966953 738789970 119466789 852429124 127428783 214235231 676445264 457015278 45600920 616640566 879293579 441076536 885971297 316559072 492567527 555775942 686660559 744194631 449644230 341943521 158305574 564416260 975198414 840570431 192063952 963217471 832386662 820190035 573615549 792179310 36725262 481135376 678694497 122405288 850746884 694914474 958106480 255850400 875454635 581673284 647420866 195045512 162709442 84339509 574359366 841219135 361903313 392096936 522848922 420968809 886102012 576577657 749767701 235740084 146741316 572015273 763059485 352323393 702324090 185603810 9161917 887252923 905465847 351163306 447640166 441673224 755008199 345293690 446098772 394130992 566304420 778383255 57479459 282077186 736386595 474211596 782500143 373782682 143438376 836548559 674603553 441533109 438154489 720391496 840032706 959361181 80194470 236057394 237029081 405071526 99942999 511191528 608084700 876655546 318717568 756283508 252620198 888035141 50607812 510566919 776273658 885525961 142047469 489802838 343704031 105140857 722170801 282568771 178789444 957349193 407440904 979446880 515930505 238191683 564587812 104131023 382452927 535420751 42944403 479943814 132464012 911417288 255726812 1536838 138672920 18113554 119775435 88721229 638284839 924735333 635040966 720958314 667430283 442384907 715993523 654157092 366457207 59788458 52287133 393913284 928301546 77816503 878266660 322245542 241550628 523857548 237471662 700551914 120833659 92689082 840033224 425729017 585304985 677863753 457376519 928322082 855081644 956470792 103223293 563371506 141125984 767819036 494595687 622343996 604694170 979673416 536932621 195784242 649211110 31814762 488171885 904503710 59748464 214248521 103736599 307723500 719080688 581856028 816055547 232942504 606504075 441509792 313919615 629903801 834512518 445161454 979605319 426691394 769193201 624702782 773772198 151504425 528790271 587433089 928433182 194496449 873538725 585456058 983823517 968481607 359454417 201821804 156476049 205914648 65223923 276964137 65460757 691439069 552568986 289789133 377851714 347509645 694520286 582212385 321797051 562948867 778750311 521575074 391888933 567909993 505888733 809724706 992571315 574717464 387758358 713402822 493826681 596324637 426160127 921469215 288533190 719253925 891764517 556115178 811506819 530443713 51157221 765821394 269366623 858807486 638679848 114986753 113573502 585471352 893207684 989984336 788998895 250255907 528424080 661947674 676669271 95482593 395104853 38047565 441954139 368190932 793180134 461143812 868787416 986386417 74303651 909973685 780302644 332879142 80123328 105505195 90155493 224221141 468935739 697157491 270733081 717793111 367012815 244302580 547968600 888954658 648354497 48333929 184630699 389062612 75372963 287900539 932790824 895569330 526270196 666655316 687593889 298924977 291010425 330378648 951566813 769046903 766234558 933187721 135698704 608899427 397376035 737469642 620007455 409544064 196933118 569978632 905882576 806724379 948774543 668748942 44985981 318428160 493754710 858406853 542760689 453759505 769059410 110968821 83821917 708338281 11547242 805263407 3093465 593354391 858930839 327302948 457821868 555759231 697124902 941799253 29473489 4902277 250700972 236264769 789684689 73949560 745217009 903780692 810930172 214802371 703819589 520802312 476877540 718975415 662629180 688147526 216674310 944034459 860828663 492894946 357194066 842798177 838041571 438530633 811555748 995691051 294330834 996356040 814595096 723609494 406255992 377750154 932859072 832004179 177090986 519055066 723851817 356557031 974041275 866491889 311183074 92276976 445564915 627473822 563654626 430048892 346102040 521627900 6092291 131613589 243575195 543722199 515202751 894960098 931773772 650446767 231204882 203087138 92503384 673781823 842547802 92148302 104866343 560650598 254595449 378567464 985645009 568635886 38986070 664205021 965722756 798845297 546691947 67287257 975896325 394958609 924249479 25765165 878230813 337634945 471094773 282093725 334839282 220092035 865572635 910517725 213729704 120088494 19461948 44214196 514162542 6454910 414915271 771433922 349711852 103872118 636200532 561709330 21710037 352821125 585891244 118383584 87786258 652885044 936153190 599301476 295542460 910441318 256562774 68558804 628951218 38183186 800991478 73287233 843098096 133391118 247497891 207967019 48029236 955945192 777963742 881885950 109705035 880016798 333814569 41814401 142222916 351584011 206528596 866275022 115490741 207188148 564194710 206333243 197798360 368120148 78348926 426361620 577537957 950612937 17846089 14360914 540589410 586334511 780928986 800425887 481555414 994714007 469766083 997625681 775666271 17156190 884052776 386509271 145230522 485613949 869057509 237402774 659372816 348168494 654788940 246533920 548816006 711900959 265627970 679031673 362691979 23721431 188297158 190015430 331953891 726475261 189781189 769410802 529028346 907230750 924751009 237753946 549346845 750930501 368122131 378988715 451774099 175246570 912847946 587645136 941399164 39861014 958423136 744785860 799194505 526552176 720100014 278318023 938427440 968059068 264368217 461945928 814409116 922777215 614915703 6330728 33790425 523196236 372802066 279055239 582467203 137340340 258216586 634760225 494185972 286986530 337156270 478035155 280718894 625010316 526417493 298688792 283091853 309953906 26756723 445545669 433519394 856824236 155948267 912902922 978073093 816144071 404455286 376838876 109822712 816510843 263595135 195267853 162782085 266848031 462352639 977455271 479942717 414843476 963826704 291265020 848579825 21459199 939107936 105849361 335385473 764017780 170296157 622112160 197720424 957106688 673449492 468714977 734043940 343693676 791200335 825453275 31034316 391810417 543699817 856967008 29220586 938139461 794507714 810617877 698992413 685290417 123334596 112832963 142883525 746714557 494922643 427602700 902466303 7451414 672586301 957047217 368110814 77815863 284821224 74809133 525450886 124938742 64689370 606646875 306095716 117282624 866243892 825665793 830056859 70480687 834432342 204733009 282528974 308926521 251030820 158665065 473343868 298846752 386477772 900544299 787229873 936010703 205397861 897784538 756540952 212712820 177533390 242497961 84702375 598776243 841092086 276360589 223456712 266805838 103343772 238384919 747183188 850603398 7158156 623583602 803516650 890652976 67459470 813579620 345124193 872965415 254559614 597033002 221865380 382764861 921357684 570989918 611736297 608970809 527096849 331861180 973666215 482870747 89664568 919621442 605972048 665147770 390657471 912930644 705587209 404307719 77920954 258874172 113674482 732991272 373937198 882370556 485168346 810717315 138992181 185964914 897741427 703572484 687704737 452212244 366007301 720014200 550435151 982844091 368358825 461510237 104787704 188947161 353285618 868778542 934738249 438662430 250556230 742748769 412242713 434869341 213214881 206738236 777641634 824530049 830719897 423594664 539636380 472332543 443470646 271748869 147196605 919387886 755662268 546044790 955055173 536480701 304895573 755811269 962621591 291499537 464447742 503570022 586230033 424282959 260906111 209599628 830721294 868889309 366859532 86535698 97177605 188680224 343302627 954123615 732780838 195419262 585855179 307597935 155822615 79755165 960907798 969570167 665056326 721270368 857278457 719688826 107154023 277357628 83779719 958432422 726956879 442639705 399134632 332496487 968280615 584805528 2471952 264553559 820122531 442507073 26391866 970723996 152206063 994863860 155075029 251479522 455147275 498036522 374797425 449023091 246221085 327654186 835445871 738471285 53996107 172577968 388488715 265655706 868752398 972148966 259484241 850040509 269425799 414681023 820502065 778980532 345749366 267078153 885680154 294295070 449139846 636564115 700527313 151596471 371362309 513749902 160044463 674277976 55764981 216699340 705534208 860988342 621090618 612983142 518850391 25163989 866492816 9198083 832472835 679649495 370785370 902582612 737300754 943637976 495252556 990387481 816207220 28667011 550294017 660614193 511870729 529581704 644414350 271645546 633834062 358764336 698261445 447034540 411152475 680278533 322797707 355489924 614931118 12688730 919348905 857992521 324430217 998758337 372283219 813182613 920262561 834086057 808936711 787858677 721660855 534283544 152425207 194637566 364003588 19162673 540203661 312158197 31816463 62712042 873074791 262589534 641596058 359940267 379152699 462610164 956678892 161444468 529480874 472785673 997514667 715149446 915528766 856038866 276211789 33912542 700086411 686292993 351734329 998051749 758245634 896966711 643636918 190440710 885574922 761929966 249913556 34262334 150849756 785553136 52197020 725700256 843267090 97076364 513079510 643489191 594845773 709917769 340621053 884368583 872329621 601917718 146599481 104162758 553923169 540038228 911032489 279535346 49148166 244855963 606398865 871662961 997318861 401077273 453987674 306811932 956721248 962200918 494410218 579757902 438695216 351944407 695589678 852138395 926167604 674794646 416117546 449708326 123546807 778460752 579269439 755681168 663192176 998152396 711656118 190439426 237143872 665861305 829445470 923798615 927127444 169737550 688605797 696406023 121717451 546289575 57652032 597068990 253465478 195764220 916439402 155262717 495413081 547937294 576723264 551967583 968274581 116944112 852177147 235310465 596458828 129135777 894705194 734647527 210817306 443034061 996385952 719388203 290895260 294495286 229180304 806212098 780068248 973745881 219273006 364775467 394745093 161475378 726407120 289725141 538713123 942099044 919729835 845505438 865429066 380165904 164865014 915928807 780044794 332713209 2059159 560995181 842035394 619890157 522468030 631561915 730974377 313620594 667550207 872827551 827954996 983849006 308975060 602841709 179817799 209575018 626584258 322934010 848336995 192393900 958090789 656484895 414657764 445078823 713676987 505861361 34425877 783880675 220952390 291273178 363547774 216328175 902058086 760004072 374018895 193424216 399153297 263924102 124561610 662369344 952368159 704521501 364907723 916747927 799374347 73192516 223444656 285799949 21557950 829738626 400736024 410846351 130581087 444166588 764029103 53504972 225729937 317584287 993387184 382627309 79054733 923606978 187765431 854423306 444979014 475783832 268598968 416251974 369728704 143234262 471396784 481232183 626040721 670325544 596654491 807269789 428784436 195419704 672221946 806271320 315995509 594700169 2155142 293578788 576672691 294619315 968112573 427915606 21292365 454025095 21427173 454434771 163388449 279913341 962203765 504017591 415164525 852778778 119105794 479025346 44528338 834156582 829121001 615651482 119639104 31825307 337851935 624268532 506498635 222178423 473859474 260232977 355583981 730956233 455520549 298268928 914137803 955470801 272913151 46730804 965548744 839151010 935305848 858350397 749777405 550441072 872805255 780978870 224728966 864382634 760834023 586473807 627959930 943860845 488346242 501335092 859232903 812121142 256430924 578907608 18483916 725112357 964140394 795650368 943210249 604216283 958363645 204443994 938708790 617190539 591039127 737640366 312206405 968839809 620212387 161826418 487147224 365043839 966618417 44170812 39383320 57256347 257877869 981371511 635912612 877470882 601967779 736142229 153713930 20853098 188180257 283591648 307413357 959890500 27228007 300239299 437909924 196073091 953494994 506019734 244804487 867099498 976745870 301547335 253343853 245239316 482169652 628883908 859261546 129885581 810029367 904919993 553021062 323116147 911390866 251550197 379720682 517560359 83336520 125911554 625111149 75644142 959738919 739411836 627246203 381484710 35147496 874359825 83906848 642621720 762090822 136416093 471531701 914495775 729081637 980007977 238384716 827415174 942278328 781236320 295245983 497198580 73557658 349302299 791033304 121153782 813625584 25433877 280289094 854134884 574325207 706663616 326568869 909679710 875389059 320888067 988391986 41449251 217717970 83035584 575277283 577734178 320432237 797376586 494512978 915068323 566810217 744792304 913478350 82486933 523696038 805557202 337794062 44183512 569826459 252136155 749913064 413580415 318029895 377803208 133270086 722046176 805861964 234294583 376586758 243340759 657947090 642908612 978552447 294431182 113907607 79940857 257051376 37319416 932400433 725254971 129339383 222960445 375343819 915071556 758007887 717948148 663350856 470280653 492650658 384601045 51389262 121330887 884503138 509945223 849817216 653255105 963090115 249656712 832350792 36441755 693557638 879135315 946922599 858799179 382925371 124716442 269417460 485723504 287256646 554584775 751205276 752326560 595980108 428223917 761009117 8179012 577290087 752326668 94697209 537962021 488870354 568447868 509896526 274340621 999667291 180218452 253631204 43498490 52275280 697989155 590743475 695896735 447092978 286875816 737494683 24868220 382622349 156834685 381108514 869979857 924132107 458855679 500990676 507871552 997182286 968102885 629350693 201819837 674932365 751777670 413485189 725745296 341882496 490399925 60171391 430125124 268440247 440565098 723263349 53222741 592087919 564517747 877782052 309019085 923896246 811789465 938537717 574104644 502403333 960253878 123031845 829231585 441984928 973187017 719713741 52639271 295630280 303301619 227777564 472479948 337736749 110389509 222908822 413957934 397814277 266492858 480503145 693226784 648524386 560498650 458324393 659723703 574683563 277333672 842354270 933727064 668044155 463637809 51213377 668446289 61718741 671882094 111734852 607688280 274232760 310732802 223505898 628603045 184578247 535450327 998914584 167912502 18417327 545571452 721847313 971192023 66987859 379033885 742736980 225464306 186776691 911218512 453098977 416268999 923277554 273958843 718765688 53623869 691002174 722644380 779160018 232864204 514333912 377004449 639619342 905063468 214816312 516096574 386889075 538691482 348228986 114700121 404538049 325240258 852511007 981406864 12059128 70304116 804044741 123188538 669858232 665496741 40378324 687342554 775595762 13298897 627494797 718196198 657017261 700977905 484413531 220111112 703280199 709293121 19962687 292513231 428399038 770327664 118446718 683131107 922757236 149024766 556226484 712818520 743234999 3881053 692076543 180728493 584866024 485914518 160599139 505028321 762364249 526927473 698206597 907962020 557086969 549797489 109206691 29125310 658872680 448664827 762958513 38039926 496400213 157756815 268018717 868756958 375046637 10774380 789105554 447761486 45152475 518716387 793359736 701750209 635580730 749716808 103671792 51027128 224723298 454409288 443502561 5448152 430779270 951922218 656675651 826805486 393622535 694266749 807066187 179367862 557395358 802628839 130210544 516853108 251366686 629527596 967937436 787014404 671415246 727054759 497567755 983752570 717490260 344099069 570452720 290760665 250878691 47542802 906121008 178182219 997006546 802291009 7080587 243089044 813949123 214817878 196820269 198285304 768698283 622450041 682041115 213772047 490682165 475070204 167717513 639152545 506163421 392233518 541712043 613720527 366447475 933509070 927663887 739009738 794054187 660402469 153779642 200334560 676869012 752163636 990682340 203428456 617184836 737285647 841106228 64949872 382897778 696236021 604275463 792868854 22717843 982414484 301792638 262464693 980879532 565746971 37595963 376957595 980331351 266907357 80921877 908814544 141577225 277063208 980830561 566573640 717098907 275746706 870530338 201188313 73685013 437757981 889659600 969832168 812318839 633814757 54215511 193054476 575578914 199559926 717922290 604144470 527137353 533648300 153253347 46111886 573122976 423070804 283676759 576128106 227157577 246777971 753277017 314825502 634398576 333758859 971716633 780559340 458995696 423884827 870682473 416578006 302128522 164547248 154236253 981559858 870528169 297574227 946008882 760553966 397485927 458753729 845156292 527263280 291809054 666120634 2419425 945581956 436819669 665091566 502983845 904318546 433201452 411209425 332371019 910537553 142960056 111831088 562232394 519481873 211212058 427988699 644583928 820328768 818561037 44018068 65578525 9613979 705570657 201638639 110361809 431000404 189455033 374539466 595944975 769751961 573014755 803079971 719637478 933551738 7497451 522991888 355061593 506209011 457921176 569207709 570081388 922502057 570763299 874675045 204152952 56082393 155431155 517484179 750351993 209791989 294585544 637819893 182573207 980792708 899340347 944593883 15940530 50792268 339480782 446434715 357499499 977749439 839805318 400229050 435839739 889537344 182863947 720595221 23086515 785737064 601784548 795615605 413585710 480370676 69890618 621435139 43583059 72476279 839201784 301252915 48629360 490826456 73037770 665511970 449649913 931009862 215704566 498639645 899550183 563253147 140370825 937975189 445385378 409757659 846623052 186491714 488774465 593453443 923082150 531606516 48084798 969074940 758126876 3669927 134870964 737303428 16542500 518922944 164117605 899065907 950762545 198075297 769053029 422643813 417984922 344943764 965635270 615539948 882848834 327256458 600487937 959504545 568938945 952970594 948704520 384387213 621299552 38547817 665219682 399544727 968556693 615696285 174994993 607014772 96277837 657463197 187567457 669733452 42007237 207158764 673158528 987800709 446057821 243754372 602400183 124375653 591563547 456774563 780259325 204272329 539402268 369418264 950428559 154846523 463870580 958514692 187604781 93820538 994112099 719889163 387173989 934678653 533720721 620755810 241834830 759099028 560759080 997017668 429425181 156888156 389043982 583004244 111576789 277610791 949406551 776177254 709747996 846491552 330955726 495940269 128996141 234183149 995252495 980317112 294295287 313899573 441334680 711515472 475675815 861160923 188770632 890420479 195606506 485670438 385154185 903462347 689222283 558831401 932740813 53598681 38562613 886289437 896401990 886897255 917413225 966320997 604586638 322293341 208549224 965456322 456663648 261614101 751479867 7002112 528539573 127499555 901981333 126405386 66135334 10423166 138266691 500975808 520084339 619251052 5213400 426446529 991107854 224417070 291641782 881748791 271768134 555189572 44008839 891404917 855096886 949885294 982079606 183566431 675939261 966898550 814302072 455896240 745931377 694524166 637541978 902503001 128706815 571056130 939741717 77792456 646433077 73191016 963825883 245122322 365719672 907518636 632579030 798439364 150812163 957893559 823387690 420797967 284180850 346451046 605465669 752951050 87543959 692544987 570296146 303860800 274027251 459952107 706709691 210816425 311200012 86593971 166983957 328165876 277043614 263552665 276966933 877486887 347972457 604955891 406547031 228991535 378205669 507771063 948892399 874364495 218340950 60614743 678118627 21199421 693254446 766936436 499408716 275850698 362351568 939500499 32054573 813167060 600257076 119989233 398512217 275416835 191295733 307193497 134925963 952234000 431315987 736203488 423804675 827373018 626394784 302955015 747741013 644234389 959238195 652850664 264203516 341005803 896605651 39624202 84642707 622465152 420622343 233522465 318419140 113789054 859052238 396421612 258882370 989243877 553009026 919092911 245709676 495109949 564307588 630522199 871787513 987390328 40056701 187666092 864966264 400734596 106510952 62635307 256782994 515891401 936643835 249087105 215416330 12744653 17831819 142928228 319703326 146309567 825373253 9608412 655110639 423637017 894976828 375756378 511577519 561973278 388203391 839222379 703917063 916121930 171521497 916101301 513347020 228682208 756066683 891028650 860803253 794600205 761041718 244034276 212239420 386983051 272528938 47526321 680950242 296079580 552187989 701634645 503002264 494630525 302952537 223413711 305692540 163337317 736142964 683274251 762499244 130545128 862429883 593849630 757904732 134429061 8626049 858933691 717131803 494984972 343302297 58585190 318426267 970837369 558058304 210083019 960601255 792816688 721271381 142947359 764297605 568928098 971604048 820641156 427330342 793411899 504708092 509524085 603462992 43850122 115858591 384328416 974121666 523334135 253493105 200972913 178216707 409503556 483761666 590237248 772032626 153138514 529273438 289046448 689767183 660471935 844992523 950284912 157004495 776797734 453650114 425723324 995101550 41741956 418125522 691781302 282743933 21690081 548850783 728973239 679352058 55749409 851234294 523843486 164569006 506355994 136355030 552450705 822904981 989092079 992637285 126843042 188568439 923962193 730683163 380802835 59763760 261131360 328500204 854207135 742275134 94580780 133035659 550622786 519990595 430893859 528139126 423031089 194931535 445512293 835466926 238994273 836571886 933457151 385264841 315780614 595961108 609158089 953893775 541196370 453092907 487478642 704793149 141168826 630539709 904618073 285714561 539908396 215357283 159073828 815572121 190181556 199150995 457909751 965844783 132042326 378449264 73658635 668032871 775640504 767919467 31996836 790660705 666366048 941316725 342000245 285837663 156005902 696004807 781683385 625185046 322448427 674688577 721682295 770636340 318138101 291387333 776281966 465237163 19755121 453575936 898543282 552778866 487204736 909639337 33156585 16030899 632340860 345245177 724263740 938976676 148027306 337794468 153247048 55575248 842770282 803626833 52404145 531866995 895240825 167991621 392142674 2623538 111219110 732469844 912551078 213627660 724871666 29579212 717776523 899816540 780967107 22116391 411203088 264835656 526340365 260849098 57562996 162936107 722997119 631511884 117973139 38371404 980183411 598550537 61396996 952430463 754222251 546706720 258165192 450064150 8006484 654418700 332117651 578508056 186470992 110907281 301000539 89936716 691829557 291835541 815161938 245064086 604520044 920891955 668619813 894591688 465723216 63415851 308185039 458906763 249788092 791012756 859027885 529247283 599691483 406709537 52375213 94151675 564543705 650149945 878103074 486611658 225436725 828013360 784060809 397230808 327351841 27219741 543754596 373531313 745025206 98262081 414808805 371008411 8949542 738003148 971551817 797826208 551293472 669436575 946458463 575170643 139616811 430310164 249352602 432670411 591188828 409439119 96556412 103429213 540707307 194882504 532812854 653234091 515796211 572625947 386317289 597341261 412013107 7095783 254886701 117048501 510606973 149647610 913846689 903785456 262545759 900087188 763228753 150286600 863458331 246740226 628182777 343342206 42149426 837727402 310318620 41758163 540955249 11584555 356929864 981830282 602874559 341546171 568967084 101948892 620352453 694826525 429370851 88243246 584512382 160326276 78170973 330890871 411210265 37078471 670719366 786444969 24525472 832035954 27038121 320441808 10679948 233301399 256485271 834018330 414571779 240321038 338200118 703887817 562604548 628750656 538753474 776599848 241182819 165996006 674638949 100369289 123357779 588644334 732767341 518273554 8152792 889842225 57960478 14991255 911732795 462919718 21831996 135198596 343000175 701534741 139608257 974070804 219575380 600523101 106212816 21928745 836778983 659180117 22660174 743715872 536699424 380575379 56389035 894412312 155512262 851617489 774479943 757464985 298512336 862211404 324656893 203264318 393653041 113326900 686970563 337916846 874854296 164331033 1776732 653057966 231939335 96626198 351700670 619478810 494844895 377367012 471497100 916252213 752104023 29746356 768091145 460153360 63141349 74008674 531828989 533823315 633142373 706512590 613921205 142170606 688213794 454050826 488567420 759442500 465144090 888779173 440919483 397343996 415243492 806737952 859616273 994800415 235111375 472415825 339837488 433944958 13993619 372616470 124885750 3513847 261679058 688250892 12138108 389320174 453234079 751384548 897739323 41364094 173410465 66192051 288570241 385512497 208071282 72817981 193142334 831298447 924025482 741376996 642158969 652564831 737178330 531381829 936886637 611628986 691723328 108171289 909899689 765752041 281739025 557228721 95271914 537991206 654762587 663087526 680804275 413405469 752845223 906370853 802785228 610702719 524335177 729732802 345523341 787869136 589897310 598315871 544508555 838008559 798604452 272139307 899615199 402198744 340063572 858647799 692255627 483445743 538566626 583174310 265702446 748346138 971842302 343757951 462112473 219825157 723300702 800802638 327396426 584412696 152331468 120360442 140807056 563849119 106545323 219872450 298609424 95593306 498132610 922308839 239677379 556813319 921165157 398651728 424177543 607116871 889980245 826858687 986933655 452747553 990359397 361301814 941205573 85547956 592448055 208357138 750547739 724798791 579051619 347779538 545833226 579193692 181774142 77113791 483893707 472911596 389972823 460152939 624498639 673010564 571833549 300964722 337897745 836564131 708948525 411531576 247725394 830328830 125808818 900949124 611974979 826581471 606722858 877631326 164172408 285659480 634644906 526304925 567968986 193193142 760210150 583088349 794601314 173049675 324293597 155610600 345808282 397812270 600632913 705165244 53404882 599561982 52176 20701241 89331004 6634226 887990873 584106845 663860749 488121301 918397289 92320063 960412514 285538912 14989684 969066224 427764980 323022218 205461379 629510418 126395224 409483648 120132882 519201413 352602361 131161747 525488526 409618765 6489625 604829400 893671229 349580567 607484879 211754213 516187294 795436873 326080027 549727092 281917496 168153933 268816115 972731879 235586806 966538978 866054820 851442808 947371481 379236269 693794928 360395917 928026236 778246705 1067642 544134311 592139209 436088572 791812706 575402548 956186754 282708416 300819640 68532020 823124869 986233155 61133377 126928635 553975346 771291510 833282826 993999613 831507033 238270787 261634779 473277451 553604101 421549709 124437435 216470147 774816057 845070696 673374981 686777911 508290476 74333451 228189776 510652160 625156823 886131140 709490526 402954410 928968631 201935528 233900648 817606806 182632482 145313366 706889021 639411681 279769604 868988717 242790881 405876083 47631483 563334814 159893012 760557499 671381373 659848992 389975155 101192299 674688924 470096830 66029551 637579000 641094401 734240152 39833055 283125823 903209891 477418046 388460298 371358945 244641850 24490446 746362103 246574712 845434914 783510186 776315186 553746870 120466712 418843196 409535965 482179590 180355327 823408560