initial unbound checking and annotations just for ids