def METHOD_NAME(
    initJointPose,
    L,
    M,
    planning_group,
    target_link,
    reference_frame,
    default_or,
    P1_position,
    P1_orientation,
):
    r = Robot(__REQUIRED_API_VERSION__)
    r.move(Ptp(goal=initJointPose, planning_group=planning_group))
    P1 = Pose(position=P1_position, orientation=P1_orientation)
    P2 = Pose(
        position=Point(P1.position.x + L, P1.position.y + L, P1.position.z - M),
        orientation=default_or,
    )
    P3 = Pose(
        position=Point(P1.position.x, P1.position.y + 2 * L, P1.position.z - 2 * M),
        orientation=default_or,
    )
    P4 = Pose(
        position=Point(P1.position.x, P1.position.y + L, P1.position.z - M),
        orientation=default_or,
    )
    ptp1 = Ptp(
        goal=P1,
        acc_scale=0.3,
        planning_group=planning_group,
        target_link=target_link,
        reference_frame=reference_frame,
    )
    ptp2 = Ptp(
        goal=P2,
        acc_scale=0.3,
        planning_group=planning_group,
        target_link=target_link,
        reference_frame=reference_frame,
    )
    ptp3 = Ptp(
        goal=P3,
        acc_scale=0.3,
        planning_group=planning_group,
        target_link=target_link,
        reference_frame=reference_frame,
    )
    ptp4 = Ptp(
        goal=P4,
        acc_scale=0.3,
        planning_group=planning_group,
        target_link=target_link,
        reference_frame=reference_frame,
    )
    lin1 = Lin(
        goal=P1,
        acc_scale=0.1,
        planning_group=planning_group,
        target_link=target_link,
        reference_frame=reference_frame,
    )
    lin2 = Lin(
        goal=P2,
        acc_scale=0.1,
        planning_group=planning_group,
        target_link=target_link,
        reference_frame=reference_frame,
    )
    lin3 = Lin(
        goal=P3,
        acc_scale=0.1,
        planning_group=planning_group,
        target_link=target_link,
        reference_frame=reference_frame,
    )
    lin4 = Lin(
        goal=P4,
        acc_scale=0.1,
        planning_group=planning_group,
        target_link=target_link,
        reference_frame=reference_frame,
    )
    r.move(ptp1)  # PTP_12 test
    r.move(ptp2)  # PTP_23
    r.move(ptp3)  # PTP_34
    r.move(ptp4)  # PTP_41
    r.move(ptp1)
    r.move(lin1)  # LIN_12
    r.move(lin2)  # LIN_23
    r.move(lin3)  # LIN_34
    r.move(lin4)  # LIN_41
    r.move(lin1)
    circ3_interim_2 = Circ(
        goal=P3,
        interim=P2.position,
        acc_scale=0.2,
        planning_group=planning_group,
        target_link=target_link,
        reference_frame=reference_frame,
    )
    circ1_center_2 = Circ(
        goal=P1,
        center=P2.position,
        acc_scale=0.2,
        planning_group=planning_group,
        target_link=target_link,
        reference_frame=reference_frame,
    )
    for radius in [0, 0.1]:
        r.move(Ptp(goal=initJointPose, planning_group=planning_group))
        seq = Sequence()
        seq.append(ptp1, blend_radius=radius)
        seq.append(circ3_interim_2, blend_radius=radius)
        seq.append(ptp2, blend_radius=radius)
        seq.append(lin3, blend_radius=radius)
        seq.append(circ1_center_2, blend_radius=radius)
        seq.append(lin2, blend_radius=radius)
        seq.append(ptp3)
        r.move(seq)