added i/o formats protection