neated code some more