fixed user facing functions