Start of perl
changed the constraints just a bitand added new tests