def METHOD_NAME(nw: NodeWrangler, basic_color=(0.9473, 0.552, 0.2623, 1.0)):
    # Code generated using version 2.4.3 of the node_transpiler
    group_input = nw.new_node(Nodes.GroupInput,
        expose_input=[('NodeSocketGeometry', 'Geometry', None),
            ('NodeSocketFloat', 'spline parameter', 0.0)])
    material = nw.new_node('GeometryNodeInputMaterial')
    material.material = surface.shaderfunc_to_material(shader_hair_shader, basic_color)
    set_material = nw.new_node(Nodes.SetMaterial,
        input_kwargs={'Geometry': group_input.outputs["Geometry"], 'Material': material})
    pointonmesh = nw.new_node(nodegroup_point_on_mesh().name,
        input_kwargs={'Mesh': group_input.outputs["Geometry"], 'spline parameter': group_input.outputs["spline parameter"], 'Distance Min': 0.03, 'noise amount': 0.0, 'noise scale': 0.0})
    randomrotationscale = nw.new_node(nodegroup_random_rotation_scale().name,
        input_kwargs={'noise scale': 100.0, 'rot mean': (0.47, 0.0, 4.8), ' rot std z': 100.0, 'scale mean': 0.2, 'scale std': 0.0})
    hair = nw.new_node(nodegroup_hair().name,
        input_kwargs={'length resolution': 1, 'cross section resolution': 1, 'scale': 0.3, 'Radius': 0.03, 'Material': material, 'Middle': (0.0, 0.3, 1.0), 'End': (0.0, -1.4, 2.0)})
    instanceonpoints = nw.new_node(nodegroup_instance_on_points().name,
        input_kwargs={'rotation base': pointonmesh.outputs["Rotation"], 'rotation delta': randomrotationscale.outputs["Vector"], 'translation': (0.0, 0.0, 0.0), 'scale': randomrotationscale.outputs["Value"], 'Points': pointonmesh.outputs["Geometry"], 'Instance': hair})
    pointonmesh_1 = nw.new_node(nodegroup_point_on_mesh().name,
        input_kwargs={'Mesh': group_input.outputs["Geometry"], 'spline parameter': group_input.outputs["spline parameter"], 'Distance Min': 0.06, 'parameter min': 0.2, 'noise amount': 0.5, 'noise scale': 2.0})
    randomrotationscale_1 = nw.new_node(nodegroup_random_rotation_scale().name,
        input_kwargs={'rot mean': (1.3, 0.0, 0.0), ' rot std z': 3.0, 'scale mean': 0.3, 'scale std': 0.5})
    hair_1 = nw.new_node(nodegroup_hair().name,
        input_kwargs={'scale': 1.0, 'Material': material, 'Middle': (0.0, 0.5, 1.0), 'End': (0.0, -1.9, 2.0)})
    instanceonpoints_1 = nw.new_node(nodegroup_instance_on_points().name,
        input_kwargs={'rotation base': pointonmesh_1.outputs["Rotation"], 'rotation delta': randomrotationscale_1.outputs["Vector"], 'translation': (0.0, 0.0, 0.0), 'scale': randomrotationscale_1.outputs["Value"], 'Points': pointonmesh_1.outputs["Geometry"], 'Instance': hair_1})
    join_geometry_2 = nw.new_node(Nodes.JoinGeometry,
        input_kwargs={'Geometry': [set_material, instanceonpoints, instanceonpoints_1]})
    group_output = nw.new_node(Nodes.GroupOutput,
        input_kwargs={'Geometry': join_geometry_2}