added equals
almost done