add support for array