annotate: move everything to mask functions, and only shared for owner