def METHOD_NAME(coarseMesh, ePos):
    paraBoundary = 10
    mesh = pg.Mesh()
    n1, n2, n3, n4 = None, None, None, None
    for n in coarseMesh.nodes():
        if n.marker() == 1:
            n1 = mesh.createNode(n.pos(), 1)
        elif n.marker() == 2:
            n2 = mesh.createNode(n.pos(), 2)
        elif n.marker() == 3:
            n3 = mesh.createNode(n.pos(), 3)
        elif n.marker() == 4:
            n4 = mesh.createNode(n.pos(), 4)
    mesh.createEdge(n1, n2, 12)
    mesh.createEdge(n2, n3, 23)
    mesh.createEdge(n3, n4, 34)
    mesh.createEdge(n4, n1, 41)
    x = pg.x(ePos)
    y = pg.y(ePos)
    xMin, xMax = min(x), max(x)
    yMin, yMax = min(y), max(y)
    maxSpan = max(xMax - xMin, yMax - yMin)
    borderPara = maxSpan * paraBoundary / 100.0
    n5 = mesh.createNode(xMin - borderPara, yMin - borderPara, 0.0, 5)
    n6 = mesh.createNode(xMax + borderPara, yMin - borderPara, 0.0, 6)
    n7 = mesh.createNode(xMax + borderPara, yMax + borderPara, 0.0, 7)
    n8 = mesh.createNode(xMin - borderPara, yMax + borderPara, 0.0, 8)
    mesh.createEdge(n5, n6, 56)
    mesh.createEdge(n6, n7, 67)
    mesh.createEdge(n7, n8, 78)
    mesh.createEdge(n8, n5, 85)
    for p in ePos:
        mesh.createNode(p)
    return mesh