use pick macro only in minimal valid scope