'Parameters
input
a sequence of variable-sized elements.'

def __new__(cls, input, dtype='a'):

    if (dtype == 'a'):
        try:
            input = [chararray.array(x, itemsize=1) for x in input]
        except Exception:
            raise ValueError('Inconsistent    input    data    array:    {0}'.format(input))
    a = np.array(input, dtype=np.object)
    self = np.ndarray.__new__(cls, shape=(len(input),), buffer=a, dtype=np.object)
    self.max = 0
    self.element_dtype = dtype
    return self
