for a better code