improve assertions
change hash code to crazy new version