def METHOD_NAME(field_names, counts):
    ret = {}
    for base_name, base_dtype in mapper.items():
        for count in counts:
            name = "%s%d" % (base_name, count)
            titles = field_names[:count]
            padded_count = count
            if count == 3:
                padded_count = 4
            names = ["s%d" % i for i in range(count)]
            while len(names) < padded_count:
                names.append("padding%d" % (len(names) - count))
            if len(titles) < len(names):
                titles.extend((len(names) - len(titles)) * [None])
            dtype = np.dtype(dict(
                names=names,
                formats=[base_dtype] * padded_count,
                titles=titles))
            globals()[name] = dtype
            ret[(base_dtype, count)] = dtype
    return ret