all of thes test suite is implemented. Need to test and then is good to go