better code organization