tidied up equals method (split long single line into multiple) for clarity
tidied up equals method -- long single line slit into multiple smaller
lines
clearer equals method - long boolean expression split into several shorter
ones