Interface / Guarded operate, close #111