Updated with more tests.