fix it so that address component type checking is not position dependent