equals and hashcode added in proposition and service