sig   module Version :     sig       type t = { major : int; minor : int; }       val major :         (GapiPagespeedonlineV1Model.Result.Version.t, int) GapiLens.t       val minor :         (GapiPagespeedonlineV1Model.Result.Version.t, int) GapiLens.t       val empty : GapiPagespeedonlineV1Model.Result.Version.t       val render :         GapiPagespeedonlineV1Model.Result.Version.t ->         GapiJson.json_data_model list       val parse :         GapiPagespeedonlineV1Model.Result.Version.t ->         GapiJson.json_data_model ->         GapiPagespeedonlineV1Model.Result.Version.t     end   module Screenshot :     sig       type t = {         data : string;         height : int;         mime_type : string;         width : int;       }       val data :         (GapiPagespeedonlineV1Model.Result.Screenshot.t, string) GapiLens.t       val height :         (GapiPagespeedonlineV1Model.Result.Screenshot.t, int) GapiLens.t       val mime_type :         (GapiPagespeedonlineV1Model.Result.Screenshot.t, string) GapiLens.t       val width :         (GapiPagespeedonlineV1Model.Result.Screenshot.t, int) GapiLens.t       val empty : GapiPagespeedonlineV1Model.Result.Screenshot.t       val render :         GapiPagespeedonlineV1Model.Result.Screenshot.t ->         GapiJson.json_data_model list       val parse :         GapiPagespeedonlineV1Model.Result.Screenshot.t ->         GapiJson.json_data_model ->         GapiPagespeedonlineV1Model.Result.Screenshot.t     end   module PageStats :     sig       type t = {         cssResponseBytes : int64;         flashResponseBytes : int64;         htmlResponseBytes : int64;         imageResponseBytes : int64;         javascriptResponseBytes : int64;         numberCssResources : int;         numberHosts : int;         numberJsResources : int;         numberResources : int;         numberStaticResources : int;         otherResponseBytes : int64;         textResponseBytes : int64;         totalRequestBytes : int64;       }       val cssResponseBytes :         (GapiPagespeedonlineV1Model.Result.PageStats.t, int64) GapiLens.t       val flashResponseBytes :         (GapiPagespeedonlineV1Model.Result.PageStats.t, int64) GapiLens.t       val htmlResponseBytes :         (GapiPagespeedonlineV1Model.Result.PageStats.t, int64) GapiLens.t       val imageResponseBytes :         (GapiPagespeedonlineV1Model.Result.PageStats.t, int64) GapiLens.t       val javascriptResponseBytes :         (GapiPagespeedonlineV1Model.Result.PageStats.t, int64) GapiLens.t       val numberCssResources :         (GapiPagespeedonlineV1Model.Result.PageStats.t, int) GapiLens.t       val numberHosts :         (GapiPagespeedonlineV1Model.Result.PageStats.t, int) GapiLens.t       val numberJsResources :         (GapiPagespeedonlineV1Model.Result.PageStats.t, int) GapiLens.t       val numberResources :         (GapiPagespeedonlineV1Model.Result.PageStats.t, int) GapiLens.t       val numberStaticResources :         (GapiPagespeedonlineV1Model.Result.PageStats.t, int) GapiLens.t       val otherResponseBytes :         (GapiPagespeedonlineV1Model.Result.PageStats.t, int64) GapiLens.t       val textResponseBytes :         (GapiPagespeedonlineV1Model.Result.PageStats.t, int64) GapiLens.t       val totalRequestBytes :         (GapiPagespeedonlineV1Model.Result.PageStats.t, int64) GapiLens.t       val empty : GapiPagespeedonlineV1Model.Result.PageStats.t       val render :         GapiPagespeedonlineV1Model.Result.PageStats.t ->         GapiJson.json_data_model list       val parse :         GapiPagespeedonlineV1Model.Result.PageStats.t ->         GapiJson.json_data_model ->         GapiPagespeedonlineV1Model.Result.PageStats.t     end   module FormattedResults :     sig       module RuleResults :         sig           module UrlBlocks :             sig               module Urls :                 sig                   module Result :                     sig                       module Args :                         sig                           type t = { _type : string; value : string; }                           val _type :                             (GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Result.Args.t,                              string)                             GapiLens.t                           val value :                             (GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Result.Args.t,                              string)                             GapiLens.t                           val empty :                             GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Result.Args.t                           val render :                             GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Result.Args.t ->                             GapiJson.json_data_model list                           val parse :                             GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Result.Args.t ->                             GapiJson.json_data_model ->                             GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Result.Args.t                         end                       type t = {                         args :                           GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Result.Args.t                           list;                         format : string;                       }                       val args :                         (GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Result.t,                          GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Result.Args.t                          list)                         GapiLens.t                       val format :                         (GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Result.t,                          string)                         GapiLens.t                       val empty :                         GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Result.t                       val render :                         GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Result.t ->                         GapiJson.json_data_model list                       val parse :                         GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Result.t ->                         GapiJson.json_data_model ->                         GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Result.t                     end                   module Details :                     sig                       module Args :                         sig                           type t = { _type : string; value : string; }                           val _type :                             (GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Details.Args.t,                              string)                             GapiLens.t                           val value :                             (GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Details.Args.t,                              string)                             GapiLens.t                           val empty :                             GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Details.Args.t                           val render :                             GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Details.Args.t ->                             GapiJson.json_data_model list                           val parse :                             GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Details.Args.t ->                             GapiJson.json_data_model ->                             GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Details.Args.t                         end                       type t = {                         args :                           GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Details.Args.t                           list;                         format : string;                       }                       val args :                         (GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Details.t,                          GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Details.Args.t                          list)                         GapiLens.t                       val format :                         (GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Details.t,                          string)                         GapiLens.t                       val empty :                         GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Details.t                       val render :                         GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Details.t ->                         GapiJson.json_data_model list                       val parse :                         GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Details.t ->                         GapiJson.json_data_model ->                         GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Details.t                     end                   type t = {                     details :                       GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Details.t                       list;                     result :                       GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Result.t;                   }                   val details :                     (GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.t,                      GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Details.t                      list)                     GapiLens.t                   val result :                     (GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.t,                      GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.Result.t)                     GapiLens.t                   val empty :                     GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.t                   val render :                     GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.t ->                     GapiJson.json_data_model list                   val parse :                     GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.t ->                     GapiJson.json_data_model ->                     GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.t                 end               module Header :                 sig                   module Args :                     sig                       type t = { _type : string; value : string; }                       val _type :                         (GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Header.Args.t,                          string)                         GapiLens.t                       val value :                         (GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Header.Args.t,                          string)                         GapiLens.t                       val empty :                         GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Header.Args.t                       val render :                         GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Header.Args.t ->                         GapiJson.json_data_model list                       val parse :                         GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Header.Args.t ->                         GapiJson.json_data_model ->                         GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Header.Args.t                     end                   type t = {                     args :                       GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Header.Args.t                       list;                     format : string;                   }                   val args :                     (GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Header.t,                      GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Header.Args.t                      list)                     GapiLens.t                   val format :                     (GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Header.t,                      string)                     GapiLens.t                   val empty :                     GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Header.t                   val render :                     GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Header.t ->                     GapiJson.json_data_model list                   val parse :                     GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Header.t ->                     GapiJson.json_data_model ->                     GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Header.t                 end               type t = {                 header :                   GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Header.t;                 urls :                   GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.t                   list;               }               val header :                 (GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.t,                  GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Header.t)                 GapiLens.t               val urls :                 (GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.t,                  GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.Urls.t                  list)                 GapiLens.t               val empty :                 GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.t               val render :                 GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.t ->                 GapiJson.json_data_model list               val parse :                 GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.t ->                 GapiJson.json_data_model ->                 GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.t             end           type t = {             localizedRuleName : string;             ruleImpact : float;             urlBlocks :               GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.t               list;           }           val localizedRuleName :             (GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.t,              string)             GapiLens.t           val ruleImpact :             (GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.t,              float)             GapiLens.t           val urlBlocks :             (GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.t,              GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.UrlBlocks.t              list)             GapiLens.t           val empty :             GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.t           val render :             GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.t ->             GapiJson.json_data_model list           val parse :             GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.t ->             GapiJson.json_data_model ->             GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.t         end       type t = {         locale : string;         ruleResults :           (string *            GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.t)           list;       }       val locale :         (GapiPagespeedonlineV1Model.Result.FormattedResults.t, string)         GapiLens.t       val ruleResults :         (GapiPagespeedonlineV1Model.Result.FormattedResults.t,          (string *           GapiPagespeedonlineV1Model.Result.FormattedResults.RuleResults.t)          list)         GapiLens.t       val empty : GapiPagespeedonlineV1Model.Result.FormattedResults.t       val render :         GapiPagespeedonlineV1Model.Result.FormattedResults.t ->         GapiJson.json_data_model list       val parse :         GapiPagespeedonlineV1Model.Result.FormattedResults.t ->         GapiJson.json_data_model ->         GapiPagespeedonlineV1Model.Result.FormattedResults.t     end   type t = {     formattedResults : GapiPagespeedonlineV1Model.Result.FormattedResults.t;     id : string;     invalidRules : string list;     kind : string;     pageStats : GapiPagespeedonlineV1Model.Result.PageStats.t;     responseCode : int;     score : int;     screenshot : GapiPagespeedonlineV1Model.Result.Screenshot.t;     title : string;     version : GapiPagespeedonlineV1Model.Result.Version.t;   }   val formattedResults :     (GapiPagespeedonlineV1Model.Result.t,      GapiPagespeedonlineV1Model.Result.FormattedResults.t)     GapiLens.t   val id : (GapiPagespeedonlineV1Model.Result.t, string) GapiLens.t   val invalidRules :     (GapiPagespeedonlineV1Model.Result.t, string list) GapiLens.t   val kind : (GapiPagespeedonlineV1Model.Result.t, string) GapiLens.t   val pageStats :     (GapiPagespeedonlineV1Model.Result.t,      GapiPagespeedonlineV1Model.Result.PageStats.t)     GapiLens.t   val responseCode : (GapiPagespeedonlineV1Model.Result.t, int) GapiLens.t   val score : (GapiPagespeedonlineV1Model.Result.t, int) GapiLens.t   val screenshot :     (GapiPagespeedonlineV1Model.Result.t,      GapiPagespeedonlineV1Model.Result.Screenshot.t)     GapiLens.t   val title : (GapiPagespeedonlineV1Model.Result.t, string) GapiLens.t   val version :     (GapiPagespeedonlineV1Model.Result.t,      GapiPagespeedonlineV1Model.Result.Version.t)     GapiLens.t   val empty : GapiPagespeedonlineV1Model.Result.t   val render :     GapiPagespeedonlineV1Model.Result.t -> GapiJson.json_data_model list   val parse :     GapiPagespeedonlineV1Model.Result.t ->     GapiJson.json_data_model -> GapiPagespeedonlineV1Model.Result.t   val to_data_model :     GapiPagespeedonlineV1Model.Result.t -> GapiJson.json_data_model   val of_data_model :     GapiJson.json_data_model -> GapiPagespeedonlineV1Model.Result.t end