rebase;
made tests slightly more readable;