First 3 rules are completed. 4th rule TODO