public static function fromArray(array $input) {
        $input = array_map(function($value) {
            return is_array($value) ? ArrayObject::fromArray($value) : $value;
        }, $input);

        return new ArrayObject($input);
    }