sig   module Query :     sig       type t = {         dimensions : string;         end_date : string;         filters : string;         ids : string;         max_results : int;         metrics : string list;         samplingLevel : string;         segment : string;         sort : string list;         start_date : string;         start_index : int;       }       val dimensions :         (GapiAnalyticsV3Model.GaData.Query.t, string) GapiLens.t       val end_date : (GapiAnalyticsV3Model.GaData.Query.t, string) GapiLens.t       val filters : (GapiAnalyticsV3Model.GaData.Query.t, string) GapiLens.t       val ids : (GapiAnalyticsV3Model.GaData.Query.t, string) GapiLens.t       val max_results : (GapiAnalyticsV3Model.GaData.Query.t, int) GapiLens.t       val metrics :         (GapiAnalyticsV3Model.GaData.Query.t, string list) GapiLens.t       val samplingLevel :         (GapiAnalyticsV3Model.GaData.Query.t, string) GapiLens.t       val segment : (GapiAnalyticsV3Model.GaData.Query.t, string) GapiLens.t       val sort :         (GapiAnalyticsV3Model.GaData.Query.t, string list) GapiLens.t       val start_date :         (GapiAnalyticsV3Model.GaData.Query.t, string) GapiLens.t       val start_index : (GapiAnalyticsV3Model.GaData.Query.t, int) GapiLens.t       val empty : GapiAnalyticsV3Model.GaData.Query.t       val render :         GapiAnalyticsV3Model.GaData.Query.t -> GapiJson.json_data_model list       val parse :         GapiAnalyticsV3Model.GaData.Query.t ->         GapiJson.json_data_model -> GapiAnalyticsV3Model.GaData.Query.t     end   module ProfileInfo :     sig       type t = {         accountId : string;         internalWebPropertyId : string;         profileId : string;         profileName : string;         tableId : string;         webPropertyId : string;       }       val accountId :         (GapiAnalyticsV3Model.GaData.ProfileInfo.t, string) GapiLens.t       val internalWebPropertyId :         (GapiAnalyticsV3Model.GaData.ProfileInfo.t, string) GapiLens.t       val profileId :         (GapiAnalyticsV3Model.GaData.ProfileInfo.t, string) GapiLens.t       val profileName :         (GapiAnalyticsV3Model.GaData.ProfileInfo.t, string) GapiLens.t       val tableId :         (GapiAnalyticsV3Model.GaData.ProfileInfo.t, string) GapiLens.t       val webPropertyId :         (GapiAnalyticsV3Model.GaData.ProfileInfo.t, string) GapiLens.t       val empty : GapiAnalyticsV3Model.GaData.ProfileInfo.t       val render :         GapiAnalyticsV3Model.GaData.ProfileInfo.t ->         GapiJson.json_data_model list       val parse :         GapiAnalyticsV3Model.GaData.ProfileInfo.t ->         GapiJson.json_data_model -> GapiAnalyticsV3Model.GaData.ProfileInfo.t     end   module DataTable :     sig       module Rows :         sig           module C :             sig               type t = { v : string; }               val v :                 (GapiAnalyticsV3Model.GaData.DataTable.Rows.C.t, string)                 GapiLens.t               val empty : GapiAnalyticsV3Model.GaData.DataTable.Rows.C.t               val render :                 GapiAnalyticsV3Model.GaData.DataTable.Rows.C.t ->                 GapiJson.json_data_model list               val parse :                 GapiAnalyticsV3Model.GaData.DataTable.Rows.C.t ->                 GapiJson.json_data_model ->                 GapiAnalyticsV3Model.GaData.DataTable.Rows.C.t             end           type t = {             c : GapiAnalyticsV3Model.GaData.DataTable.Rows.C.t list;           }           val c :             (GapiAnalyticsV3Model.GaData.DataTable.Rows.t,              GapiAnalyticsV3Model.GaData.DataTable.Rows.C.t list)             GapiLens.t           val empty : GapiAnalyticsV3Model.GaData.DataTable.Rows.t           val render :             GapiAnalyticsV3Model.GaData.DataTable.Rows.t ->             GapiJson.json_data_model list           val parse :             GapiAnalyticsV3Model.GaData.DataTable.Rows.t ->             GapiJson.json_data_model ->             GapiAnalyticsV3Model.GaData.DataTable.Rows.t         end       module Cols :         sig           type t = { id : string; label : string; _type : string; }           val id :             (GapiAnalyticsV3Model.GaData.DataTable.Cols.t, string) GapiLens.t           val label :             (GapiAnalyticsV3Model.GaData.DataTable.Cols.t, string) GapiLens.t           val _type :             (GapiAnalyticsV3Model.GaData.DataTable.Cols.t, string) GapiLens.t           val empty : GapiAnalyticsV3Model.GaData.DataTable.Cols.t           val render :             GapiAnalyticsV3Model.GaData.DataTable.Cols.t ->             GapiJson.json_data_model list           val parse :             GapiAnalyticsV3Model.GaData.DataTable.Cols.t ->             GapiJson.json_data_model ->             GapiAnalyticsV3Model.GaData.DataTable.Cols.t         end       type t = {         cols : GapiAnalyticsV3Model.GaData.DataTable.Cols.t list;         rows : GapiAnalyticsV3Model.GaData.DataTable.Rows.t list;       }       val cols :         (GapiAnalyticsV3Model.GaData.DataTable.t,          GapiAnalyticsV3Model.GaData.DataTable.Cols.t list)         GapiLens.t       val rows :         (GapiAnalyticsV3Model.GaData.DataTable.t,          GapiAnalyticsV3Model.GaData.DataTable.Rows.t list)         GapiLens.t       val empty : GapiAnalyticsV3Model.GaData.DataTable.t       val render :         GapiAnalyticsV3Model.GaData.DataTable.t ->         GapiJson.json_data_model list       val parse :         GapiAnalyticsV3Model.GaData.DataTable.t ->         GapiJson.json_data_model -> GapiAnalyticsV3Model.GaData.DataTable.t     end   module ColumnHeaders :     sig       type t = { columnType : string; dataType : string; name : string; }       val columnType :         (GapiAnalyticsV3Model.GaData.ColumnHeaders.t, string) GapiLens.t       val dataType :         (GapiAnalyticsV3Model.GaData.ColumnHeaders.t, string) GapiLens.t       val name :         (GapiAnalyticsV3Model.GaData.ColumnHeaders.t, string) GapiLens.t       val empty : GapiAnalyticsV3Model.GaData.ColumnHeaders.t       val render :         GapiAnalyticsV3Model.GaData.ColumnHeaders.t ->         GapiJson.json_data_model list       val parse :         GapiAnalyticsV3Model.GaData.ColumnHeaders.t ->         GapiJson.json_data_model ->         GapiAnalyticsV3Model.GaData.ColumnHeaders.t     end   type t = {     columnHeaders : GapiAnalyticsV3Model.GaData.ColumnHeaders.t list;     containsSampledData : bool;     dataTable : GapiAnalyticsV3Model.GaData.DataTable.t;     id : string;     itemsPerPage : int;     kind : string;     nextLink : string;     previousLink : string;     profileInfo : GapiAnalyticsV3Model.GaData.ProfileInfo.t;     query : GapiAnalyticsV3Model.GaData.Query.t;     rows : string list list;     sampleSize : int64;     sampleSpace : int64;     selfLink : string;     totalResults : int;     totalsForAllResults : (string * string) list;   }   val columnHeaders :     (GapiAnalyticsV3Model.GaData.t,      GapiAnalyticsV3Model.GaData.ColumnHeaders.t list)     GapiLens.t   val containsSampledData : (GapiAnalyticsV3Model.GaData.t, bool) GapiLens.t   val dataTable :     (GapiAnalyticsV3Model.GaData.t, GapiAnalyticsV3Model.GaData.DataTable.t)     GapiLens.t   val id : (GapiAnalyticsV3Model.GaData.t, string) GapiLens.t   val itemsPerPage : (GapiAnalyticsV3Model.GaData.t, int) GapiLens.t   val kind : (GapiAnalyticsV3Model.GaData.t, string) GapiLens.t   val nextLink : (GapiAnalyticsV3Model.GaData.t, string) GapiLens.t   val previousLink : (GapiAnalyticsV3Model.GaData.t, string) GapiLens.t   val profileInfo :     (GapiAnalyticsV3Model.GaData.t,      GapiAnalyticsV3Model.GaData.ProfileInfo.t)     GapiLens.t   val query :     (GapiAnalyticsV3Model.GaData.t, GapiAnalyticsV3Model.GaData.Query.t)     GapiLens.t   val rows : (GapiAnalyticsV3Model.GaData.t, string list list) GapiLens.t   val sampleSize : (GapiAnalyticsV3Model.GaData.t, int64) GapiLens.t   val sampleSpace : (GapiAnalyticsV3Model.GaData.t, int64) GapiLens.t   val selfLink : (GapiAnalyticsV3Model.GaData.t, string) GapiLens.t   val totalResults : (GapiAnalyticsV3Model.GaData.t, int) GapiLens.t   val totalsForAllResults :     (GapiAnalyticsV3Model.GaData.t, (string * string) list) GapiLens.t   val empty : GapiAnalyticsV3Model.GaData.t   val render : GapiAnalyticsV3Model.GaData.t -> GapiJson.json_data_model list   val parse :     GapiAnalyticsV3Model.GaData.t ->     GapiJson.json_data_model -> GapiAnalyticsV3Model.GaData.t   val to_data_model :     GapiAnalyticsV3Model.GaData.t -> GapiJson.json_data_model   val of_data_model :     GapiJson.json_data_model -> GapiAnalyticsV3Model.GaData.t end