prototypes rule 2 and rule 3