add OS checking