def METHOD_NAME(
    node: NodeProto,
    graph: ONNXGraph,
    execution_order: int,
) -> Optional[NodeProto]:
    param = ModelInfo._get_node_param_array(node, graph)
    if param is None:
        return
    attributes = get_node_attributes(node)
    if attributes.get("transB", 0) != 0:
        # ensure that param shape is (in_channels, out_channels)
        param = param.transpose()
    return LayerInfo.linear_layer(
        name=node.input[1],
        in_channels=param.shape[0],
        out_channels=param.shape[-1],
        bias=len(node.input) > 2,
        execution_order=execution_order,
        attributes=dict(sparsity=_param_sparsity(param)),
    )