no asserts in code pls, rather REQUIRE macro