sig   module TargetingInfo :     sig       type t = {         adsAppearOn : string;         description : string;         location : string;         siteLanguage : string;       }       val adsAppearOn :         (GapiAdsenseV1_4Model.CustomChannel.TargetingInfo.t, string)         GapiLens.t       val description :         (GapiAdsenseV1_4Model.CustomChannel.TargetingInfo.t, string)         GapiLens.t       val location :         (GapiAdsenseV1_4Model.CustomChannel.TargetingInfo.t, string)         GapiLens.t       val siteLanguage :         (GapiAdsenseV1_4Model.CustomChannel.TargetingInfo.t, string)         GapiLens.t       val empty : GapiAdsenseV1_4Model.CustomChannel.TargetingInfo.t       val render :         GapiAdsenseV1_4Model.CustomChannel.TargetingInfo.t ->         GapiJson.json_data_model list       val parse :         GapiAdsenseV1_4Model.CustomChannel.TargetingInfo.t ->         GapiJson.json_data_model ->         GapiAdsenseV1_4Model.CustomChannel.TargetingInfo.t     end   type t = {     code : string;     id : string;     kind : string;     name : string;     targetingInfo : GapiAdsenseV1_4Model.CustomChannel.TargetingInfo.t;   }   val code : (GapiAdsenseV1_4Model.CustomChannel.t, string) GapiLens.t   val id : (GapiAdsenseV1_4Model.CustomChannel.t, string) GapiLens.t   val kind : (GapiAdsenseV1_4Model.CustomChannel.t, string) GapiLens.t   val name : (GapiAdsenseV1_4Model.CustomChannel.t, string) GapiLens.t   val targetingInfo :     (GapiAdsenseV1_4Model.CustomChannel.t,      GapiAdsenseV1_4Model.CustomChannel.TargetingInfo.t)     GapiLens.t   val empty : GapiAdsenseV1_4Model.CustomChannel.t   val render :     GapiAdsenseV1_4Model.CustomChannel.t -> GapiJson.json_data_model list   val parse :     GapiAdsenseV1_4Model.CustomChannel.t ->     GapiJson.json_data_model -> GapiAdsenseV1_4Model.CustomChannel.t   val to_data_model :     GapiAdsenseV1_4Model.CustomChannel.t -> GapiJson.json_data_model   val of_data_model :     GapiJson.json_data_model -> GapiAdsenseV1_4Model.CustomChannel.t end