def METHOD_NAME(
    filename, num_records, dimension, classes=2, data_feature_name="data", multipart=False
):
    """Builds a recordio encoded file of TF protobuf Example objects. Each object
    is a labeled numpy array. Each example has two field - a single int64 'label'
    field and a single bytes list field, containing a serialized numpy array.
    Each generated numpy array is a multidimensional normal with
    the specified dimension. The normal distribution is class specific, each class
    has a different mean for the distribution, so it should be possible to learn
    a multiclass classifier on this data. Class means are determnistic - so multiple
    calls to this function with the same number of classes will produce samples drawn
    from the same distribution for each class.
    Args:
        filename - the file to write to
        num_records - how many labeled numpy arrays to generate
        classes - the cardinality of labels
        data_feature_name - the name to give the numpy array in the Example object
        dimension - the size of each numpy array.
    """
    with open(filename, "wb") as f:
        for i in range(num_records):
            cur_class = i % classes
            loc = int(cur_class - (classes / 2))
            write_numpy_array(
                f,
                data_feature_name,
                cur_class,
                np.random.normal(loc=loc, size=(dimension,)),
                multipart,
            )