add everything that need