redo the previous example by adding subviews and constraints