Add operation factory