public virtual List <YDataSet> parse_dataSets(byte[] json)
    {
        List <string>   dslist = new List <string>();
        YDataSet        dataset;
        List <YDataSet> res = new List <YDataSet>();

        // may throw an exception
        dslist = this._json_get_array(json);
        res.Clear();
        for (int ii = 0; ii < dslist.Count; ii++)
        {
            dataset = new YDataSet(this);
            dataset._parse(dslist[ii]);
            res.Add(dataset);;
        }
        return(res);
    }