more Checking added + unit tests