some change to check func