def METHOD_NAME(self, pc, test, trial):
    Z = test.function_space()
    (v, w) = split(trial)
    (y, z) = split(test)
    a = inner(div(v), div(y))*dx - inner(div(w), div(z))*dx + inner(v, z)*dx + inner(w, y)*dx
    bcs = [DirichletBC(Z.sub(0), zero(), "on_boundary")]
    return (a, bcs)