@Override
    public void write(org.apache.thrift.protocol.TProtocol oprot, ArrayData struct) throws org.apache.thrift.TException {
      struct.validate();

      oprot.writeStructBegin(STRUCT_DESC);
      oprot.writeFieldBegin(ROWS_FIELD_DESC);
      oprot.writeI32(struct.rows);
      oprot.writeFieldEnd();
      oprot.writeFieldBegin(COLS_FIELD_DESC);
      oprot.writeI32(struct.cols);
      oprot.writeFieldEnd();
      if (struct.data != null) {
        oprot.writeFieldBegin(DATA_FIELD_DESC);
        {
          oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.LIST, struct.data.size()));
          for (java.util.List<java.lang.String> _iter22 : struct.data)
          {
            {
              oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRING, _iter22.size()));
              for (java.lang.String _iter23 : _iter22)
              {
                oprot.writeString(_iter23);
              }
              oprot.writeListEnd();
            }
          }
          oprot.writeListEnd();
        }
        oprot.writeFieldEnd();
      }
      oprot.writeFieldStop();
      oprot.writeStructEnd();
    }
@Override
    public void write(org.apache.thrift.protocol.TProtocol oprot, ArrayData struct)