def METHOD_NAME():
    # +---+---+
    # | 5.|13.|
    # +---+---+
    # | 3.|11.|
    # +---+---+
    # | 2.| 7.|
    # +---+---+
    mesh = RectangleMesh(2, 1, 2.0, 1.0, quadrilateral=True)
    extm = ExtrudedMesh(mesh, layers=3, layer_height=1.0, extrusion_type="uniform", periodic=True)
    x, y, z = SpatialCoordinate(extm)
    V = FunctionSpace(extm, "DG", 0)
    f = Function(V).interpolate(conditional(And(x < 1.0, z < 1.0), 2.0,
                                conditional(And(x < 1.0, z < 2.0), 3.0,
                                conditional(And(x < 1.0, z < 3.0), 5.0,
                                conditional(And(x < 2.0, z < 1.0), 7.0,  # noqa: E128
                                conditional(And(x < 2.0, z < 2.0), 11.0, 13.0))))))  # noqa: E128
    val = assemble(f('-')*dS_h)
    assert abs(val - 41.) < 1.e-12
    val = assemble(f('+')*dS_h)
    assert abs(val - 41.) < 1.e-12
    val = assemble(f('-') * dS_v)
    assert abs(val - 31.) < 1.e-12
    val = assemble(f('+') * dS_v)
    assert abs(val - 10.) < 1.e-12
    val = assemble(f * ds_v(1))
    assert abs(val - 10.) < 1.e-12
    val = assemble(f * ds_v(2))
    assert abs(val - 31.) < 1.e-12
    val = assemble(f * ds_v(3))
    assert abs(val - 41.) < 1.e-12
    val = assemble(f * ds_v(4))
    assert abs(val - 41.) < 1.e-12
    val = assemble(f * ds_b)
    assert abs(val - 9.) < 1.e-12
    val = assemble(f * ds_t)
    assert abs(val - 18.) < 1.e-12