don't roll our own static()