add valid func