add pussub-functions