added tons of functionality