base.OptMatch[T:imm,mut,read,R:iso,imm,mut,mutH,read,readH]

mut .some(x: T): R,
mut .empty: R,
mut .some(x: T): R,
mut .empty: R,