Fix mroe bugs and add a harder test