working aggressive/defensive mode
writing test cases