better method define