put all things together