All the code put together