add token functions