build top and bottom separately