only check access at init time