/*! MG2Widget 15-09-2016 */;/*7P1RCD3H9R0M*/var I10C;var I11C;(function(I10C){ I10C.ScriptBegin || (I10C.ScriptBegin = function(){}); I10C.ScriptEnd || (I10C.ScriptEnd = function(){});I10C.PostMessage || (I10C.PostMessage = function(){ return this.postMessage.apply(this, arguments); });I10C.Location || (I10C.Location = function i10cloc(ba$e, isWrite, op){ var locat1onPresent = Object.getOwnPropertyNames(ba$e).indexOf('locat1on') !== -1; return (!isWrite) ? ( locat1onPresent ? ba$e.locat1on : (ba$e.location || ba$e.locat1on)) : (locat1onPresent ? {set href(v) {ba$e.locat1on.href = v;}, get href() {return i10cloc(ba$e,false,op);}} : {set href(v) {ba$e.location = v;}, get href() {return i10cloc(ba$e,false,op);}});}); I11C.PreLocationContextProxy || (I11C.PreLocationContextProxy = function i10cPreLocContext(ba$e) { return ba$e;});})(I11C||I10C|| (I11C = {}));(I11C || I10C).ScriptBegin(); function iePollyfill(){for(var a,b=function(){},c=["assert","clear","count","debug","dir","dirxml","error","exception","group","groupCollapsed","groupEnd","info","log","markTimeline","profile","profileEnd","table","time","timeEnd","timeStamp","trace","warn"],d=c.length,e=window.console=window.console||{};d--;)a=c[d],e[a]||(e[a]=b)}function getRootUrl(a){return a.toString().replace(/^(.*\/\/[^\/?#]*).*$/,"$1/")}function isValidZipCode(a){return isNumeric(a)&&a.length>0&&a.length<=5}function getPropertyElementByKey(a,b){return"[object Array]"===Object.prototype.toString.call(a)?a.map(function(a){return a[b]}):a[b]}function isTabletDevice(){wUtils.log("--- utilities.isTabletDevice");var a=(navigator.userAgent||navigator.vendor||window.opera,{Ipad:function(){return navigator.userAgent.match(/ipad/i)},AndroidTablet:function(){return!navigator.userAgent.match(/(?=.*\bAndroid\b)(?=.*\bMobile\b)/i)&&navigator.userAgent.match(/Android/i)}});return a.Ipad()||a.AndroidTablet()}function isMobileDevice(){wUtils.log("--- utilities.isMobileDevice");var a=navigator.userAgent||navigator.vendor||window.opera;wUtils.info("userAgent",a);var b=/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i;return b.test(a)}function EmptyCreateRegistration(){var a=this;this.zipCode=ko.observable(),this.email=ko.observable().extend({required:{params:!0,message:"Please enter a valid email"},pattern:{message:"The email is in a wrong format",params:patterns.email}}).extend({focusable:!0}),this.emailLowerCase=ko.computed(function(){return void 0!==a.email()?a.email().toString().toLowerCase():void 0}),this.email.busy=ko.observable(!1),wUtils.addIsCompleted(this.email),wUtils.addHasBeenCompleted(this.email),wUtils.addTyping(this.email),this.emailDelay=ko.computed(this.email).extend({rateLimit:{method:"notifyWhenChangesStop",timeout:0}});var b="Password do not match";this.password=ko.observable().extend({required:{params:!0,message:"The Password required"},atLeast1Letter1Number:!0,minLength:{params:7,message:"Please enter a password with at least 7 characters, one number and one letter."},maxLength:20,validation:{validator:function(b,c){return b===a.confirmPassword()},message:b},focusable:!0}),this.passwordText=ko.observable().extend({focusable:!0}),wUtils.addTyping(this.passwordText),this.confirmPasswordText=ko.observable().extend({focusable:!0}),wUtils.addTyping(this.confirmPasswordText),wUtils.addIsCompleted(this.password),wUtils.addHasBeenCompleted(this.password),wUtils.addTyping(this.password),this.confirmPassword=ko.observable().extend({required:{params:!0,message:"The Confirm Password required"},validation:{validator:function(b,c){return b===a.password()},message:b},focusable:!0}),wUtils.addIsCompleted(this.confirmPassword),wUtils.addHasBeenCompleted(this.confirmPassword),wUtils.addTyping(this.confirmPassword),this.isNewUser=ko.observable(!1),this.isEmailPreset=ko.observable(!1),this.isEmailAvailable=ko.observable(!1),this.customerRegistrationId=ko.observable(),this.showPassword=ko.observable(!1),this.showCreateRegistration=ko.computed(function(){return this.isEmailAvailable()&&!this.email.busy()&&this.email.isCompleted()&&this.email.isValid()},this),this.busyCreatingRegistration=ko.observable(!1),this.showEmailAlreadyExist=ko.computed(function(){return!this.isEmailAvailable()&&!this.email.busy()&&this.email.isCompleted()&&this.email.isValid()},this)}function IUserProvider(){var a=this;a.isLogged=function(){throw"IUserProvider.isLogged() should be implemented"},a.getUserByMasterId=function(){throw"IUserProvider.getUserByMasterId() should be implemented"},a.getCustomerRegistrationId=function(){throw"IUserProvider.getCustomerRegistrationId() should be implemented"}}function MG2Provider(a){var b=new IUserProvider;return b.serverUrl=a,b.name="MG2Provider",b.user={},b.isLogged=function(){return void 0!==w$.cookie("igmRegID")&&void 0!==w$.cookie("igmContent")},b.getCustomerRegistrationId=function(){return wUtils.log("--- self.getCustomerRegistrationId"),w$.cookie("igmRegID")},b.getContent=function(){return wUtils.log("--- self.getContent"),w$.cookie("igmContent")},b}function OfferService(){"use strict";function a(a){return c.$.get(config.System.Url+"/getOffers/"+a.pid+"/"+a.zipcode)}function b(a){return c.$.get(config.System.Url+"/isZipDeliverable/"+a)}var c=this;injector("config","utils","jquery",function(a,b,d){c.config=a,c.utils=b,c.$=d})();return{getOffers:a,isZipDeliverable:b}}function PaymentURLGeneratorPaymentBase(){this.params="MUST-IMPLEMENT",this.serverUrl="MUST-IMPLEMENT",this.urlAction="MUST-IMPLEMENT",this.config="MUST-IMPLEMENT",this.getURL=function(){wUtils.log("PaymentURLGeneratorPaymentBase.getURL");var a,b=this.params;return a=this.isEncryptedMode()?this.getURLByEncryptedConsumerId(b):this.getURLByConsumerIdEmail(b)},this.isEncryptedMode=function(){return wUtils.log("PaymentURLGeneratorPaymentBase.isEncryptedMode"),isNotNullOrEmpty(this.params.encryptedConsumerId)},this.isRedirectMode=function(){return wUtils.log("PaymentURLGeneratorPaymentBase.isRedirectMode"),this.config.DefaultValues.SecurePayment.CurrentMode==this.config.UI.SecurePayment.Modes.Redirect}}function PaymentURLGeneratorPaymentNonSubscriber(a,b){this.params=a,this.serverUrl=b,this.urlAction="securePaymentSubscription"}function PaymentURLGeneratorPaymentPremium(a,b){this.params=a,this.serverUrl=b,this.urlAction="securePaymentPremium"}function PaymentURLGeneratorPaymentStopped(a,b){this.params=a,this.serverUrl=b,this.urlAction="securePaymentStopped"}function PaymentURLGeneratorPaymentUpgrade(a,b){this.params=a,this.serverUrl=b,this.urlAction="securePaymentUpgrade"}function SubscriptionPanelURLGenerator(a,b){this.params=a,this.serverUrl=b,this.urlAction="subscriptionPanel"}function SubscriptionPanelURLGeneratorUpgrade(a,b){this.params=a,this.serverUrl=b,this.urlAction="subscriptionPanel/upgrade"}function Address(a){var b=this;b.firstName=ko.observable().extend({required:{params:!0,message:"First Name is Required"},focusable:!0}),b.lastName=ko.observable().extend({required:{params:!0,message:"Last Name is Required"},focusable:!0}),b.company=ko.observable(),b.address=ko.observable().extend({required:{params:!0,message:"Address is Required"},focusable:!0}),b.aptUnit=ko.observable().extend({focusable:!0}),b.city=ko.observable().extend({required:{params:!0,message:"City is Required"},focusable:!0}),b.state=ko.observable(a).extend({focusable:!0}),b.phoneNumber=ko.observable().extend({phoneUS:{params:!0,message:"Invalid Phone Number"},focusable:!0}),b.zipCode=ko.observable().extend({number:!0,required:{params:!0,message:"ZipCode is Required"},minLength:{params:5,message:"Zip Code Invalid"},maxLength:{params:5,message:"Zip Code Invalid"},focusable:!0}),b.fullName=ko.computed(function(){return void 0===b.firstName()||void 0===b.lastName()?"":b.firstName()+" "+b.lastName()}),b.isValid=ko.computed(function(){var a=ko.validation.group(b,{deep:!0})();return 0===a.length}),wUtils.addIsCompleted(b.firstName),wUtils.addIsCompleted(b.lastName),wUtils.addIsCompleted(b.company),wUtils.addIsCompleted(b.address),wUtils.addIsCompleted(b.aptUnit),wUtils.addIsCompleted(b.city),wUtils.addIsCompleted(b.zipCode),wUtils.addIsCompleted(b.phoneNumber),wUtils.addTyping(b.zipCode),wUtils.addTyping(b.phoneNumber),b.firstName.subscribe(wUtils.observableSubscribeFilterOnlyAlphanumeric,b.firstName),b.lastName.subscribe(wUtils.observableSubscribeFilterOnlyAlphanumeric,b.lastName),b.company.subscribe(wUtils.observableSubscribeFilterAlphanumeric,b.company),b.address.subscribe(wUtils.observableSubscribeFilterAlphanumeric,b.address),b.aptUnit.subscribe(wUtils.observableSubscribeFilterAlphanumeric,b.aptUnit),b.city.subscribe(wUtils.observableSubscribeFilterAlphanumeric,b.city),b.zipCode.subscribe(wUtils.observableSubscribeFilterNumber,b.zipCode)}function CmsData(a){"use strict";function b(){var b={content:"widget.content",landings:"widget.landings"};this.getContentsByType=function(b){return a.jsonData.content.filter(function(a){return a.Type==b})},this.getContentByType=function(a){return this.getContentsByType(a).shift()},this.getDataByType=function(a){var b=this.getContentByType(a);if(b&&b.Data)return JSON.parse(b.Data)},this.getCopies=function(){return this.getDataByType(b.content)},this.getLandings=function(){return this.getDataByType(b.landings)}}function c(){this.getNotificationByCode=function(a){var b=this.getCopies().GlobalNotifications.filter(function(b){return b.ErrorCodes.indexOf(a)>-1});return b.length>0?b[0]:void 0},this.getNotificationTextByCode=function(a){var b=this.getNotificationByCode(a);if(void 0!==b)return b.Text}}b.apply(this),c.apply(this)}function Gift(a){var b=a;return b}function Offer(a){var b=this;return void 0!==a&&(b=a),b.gifts=ko.observable([]),b.isAlertShown=ko.observable(!1),b.Premiums&&w$(b.Premiums.Premium).each(function(){b.gifts().push(new Gift(this))}),b.isEmpty=function(){return wUtils.log("self.isEmpty"),wUtils.info("offerRaw",a),isNullOrEmpty(a)},b.getPricingDiplay=function(a){return isNumeric(a)?String.fromCharCode(a):a},b.pricingDisplay=ko.computed(function(){return b.getPricingDiplay(b.PricingDisplay)}),b.priceText=ko.computed(function(){var a="";switch(b.pricingDisplay()){case"T":a="$"+parseFloat(b.PricingTerm).toFixed(2);break;case"A":a="$"+parseFloat(b.PricingAnnually).toFixed(2)+" per year";break;case"M":a="$"+parseFloat(b.PricingMonthly).toFixed(2)+" per month";break;case"W":a="$"+parseFloat(b.PricingWeekly).toFixed(2)+" per week";break;default:a="$"+parseFloat(b.PricingWeekly).toFixed(2)+" per week"}return a},this),b.offerPriceText=ko.computed(function(){return b.OfferText+" "+b.priceText()}),b.hasGifts=ko.computed(function(){return b.gifts().length>0}),b.showEzPay=ko.computed(function(){return void 0===b.IsEzPayOffer?!1:isNotNullOrEmpty(b.IsEzPayOffer)?"true"==b.IsEzPayOffer.toLowerCase():!1}),b.isEzPay=ko.observable(!1).extend({validation:{validator:function(a,c){var d=!0;return b.showEzPay()&&"false"==b.EzPayOptional.toLowerCase()&&!a&&(d=!1),d},message:"You must Check EzPay"}}),b.hasPaymentMethod=function(a){if(!b.PaymentOptions)return!1;if(!b.PaymentOptions.PaymentOption)return!1;var c=!1;return w$.isArray(b.PaymentOptions.PaymentOption)?b.PaymentOptions.PaymentOption.forEach(function(b){return b.TypeCode==a?void(c=!0):void 0}):b.PaymentOptions.PaymentOption.TypeCode==a&&(c=!0),c},b.isBest=ko.computed(function(){return"true"===b.IsBestOffer}),b.isAddressRequired=ko.computed(function(){return b.hasPaymentMethod("AR")}),b.hasCreditCard=ko.computed(function(){return b.hasPaymentMethod("CC")}),b.hasBankAccount=ko.computed(function(){return b.hasPaymentMethod("BK")}),b.hasBilled=ko.computed(function(){return b.hasPaymentMethod("BL")}),b.hasCash=ko.computed(function(){return b.hasPaymentMethod("CA")}),b.hasCheck=ko.computed(function(){return b.hasPaymentMethod("CK")}),b.hasBilled=ko.computed(function(){return b.hasPaymentMethod("BL")}),b.hasVendorCheck=ko.computed(function(){return b.hasPaymentMethod("VC")}),b.hasPaidPass=ko.computed(function(){return b.hasPaymentMethod("PP")}),b.hasTrialSubscription=ko.computed(function(){return b.hasPaymentMethod("TS")}),b.hasFreeRegistration=ko.computed(function(){return b.hasPaymentMethod("FR")}),b.hasToSelectedPayment=ko.computed(function(){return b.hasCreditCard()||b.hasBankAccount()||b.hasBilled()}),b.hasSpecificProduct=function(a){if(!isNotNullOrEmpty(b.OfferComponents))return!1;if(isNullOrEmpty(a))return!1;var c=b.OfferComponents;if(void 0===c)return!1;if(void 0!==c.OfferComponents&&void 0!==c.OfferComponents[a])return"true"===c.OfferComponents[a].toString().toLowerCase();if(void 0!==c.OfferComponent){var d=Array.isArray(c.OfferComponent);if(d){var e=c.OfferComponent.filter(function(b){return b[a]===!0||"true"===b[a]});return e.length>0}if(c.OfferComponent[a])return"true"===c.OfferComponent[a].toString().toLowerCase()}return!1},b.hasDigitalProducts=ko.computed(function(a){var c="IsDigital";return b.hasSpecificProduct(c)}),b.hasPrintProducts=ko.computed(function(){var a="IsPrint";return b.hasSpecificProduct(a)}),b.hasEEditionProducts=ko.computed(function(){var a="IsEedition";return b.hasSpecificProduct(a)}),b.hasDigitalAndPrintProducts=ko.computed(function(){return b.hasDigitalProducts()&&b.hasPrintProducts()}),b.getPrices=ko.computed(function(){function a(a){var b=a.PricingTerm;void 0!==a.IsPrint&&(a.IsPrint!==!0&&"true"!==a.IsPrint.toString().toLowerCase()||(c+=parseFloat(b))),void 0!==a.IsDigital&&(a.IsDigital!==!0&&"true"!==a.IsDigital.toString().toLowerCase()||(d+=parseFloat(b)))}if(!isNotNullOrEmpty(b.OfferComponents))return!1;for(var c=0,d=0,e=Object.keys(b.OfferComponents),f=0,g=e.length;g>f;f++){var h=b.OfferComponents[e[f]];if(void 0!==h)if(Array.isArray(h))for(var i=0;i0}),b.getTotalAmountFormated=ko.computed(function(){return b.getAmountCharge().toFixed(2)}),b.hasTermsCondition=ko.computed(function(){return void 0!==b.TermsConditions&&"object"!=typeof b.TermsConditions}),b.cssClass=ko.computed(function(){return"offer-promotionid-"+b.PromotionId+"-planid-"+b.PlanId}),b.showMarketingText=ko.observable(!1),b.clickMarketingText=function(){b.showMarketingText(!b.showMarketingText())},b.busySubscribing=ko.observable(!1),b.getOfferTextSegment=function(a){return wUtils.getTestSegmentByIndex(b.OfferText,a)},b.getOfferTextWithGift=function(a,c){return null!==c.premium()?wUtils.getTestSegmentByIndex(b.OfferText,a)+" + "+c.premium().Name:wUtils.getTestSegmentByIndex(b.OfferText,a)},b.showImage=ko.computed(function(){return void 0===b.ImagePath||"string"==typeof b.ImagePath}),b}function PaymentMethod(a,b,c,d){var e=this;return e.text=a,e.value=b,e.displayText=ko.observable(e.text),e._cssClass=c,e._isSelectedCssClass=d,e.isSelected=ko.observable(!1),e.isActive=ko.observable(!0),e.cssClass=ko.computed(function(){var a=e._cssClass;return e.isSelected()&&(a+=" "+e._isSelectedCssClass),a}),e}function ProccessCompletedResult(a,b,c){return this.Success=a,this.Errors=b,this.ConfirmationNumber=c,this}function StudentInformation(a){var b=this;b.lastName=ko.observable().extend({required:{onlyIf:a.hasStudentInformation,message:"The last name required"},focusable:!0}),b.firstName=ko.observable().extend({required:{onlyIf:a.hasStudentInformation,message:"The first name required"},focusable:!0}),b.studentId=ko.observable().extend({required:{onlyIf:a.hasStudentInformation,message:"The student id required"},focusable:!0}),b.isValid=ko.computed(function(){var a=ko.validation.group(b,{deep:!0})();return 0===a.length}),wUtils.addIsCompleted(b.lastName),wUtils.addIsCompleted(b.firstName),wUtils.addIsCompleted(b.studentId)}function Subscription(a,b){function c(a){wUtils.log(k+": "+a)}function d(a,b){wUtils.info(k+": "+a,b)}var e,f,g,h,i,j=this,k="core.entities.Subscription";injector("creditCard","bankAccount","address","offer","eventTopics","utils",function(a,b,c,d,k,l){e=a,f=b,g=c,h=d,j.Topics=k,i=l})();j.subscriberMasterId=ko.observable(),j.accountNumber=ko.observable(),j.confirmationNumber=ko.observable(),j.smartOfferSegment=ko.observable(),j.email=ko.observable().extend({required:{params:!0,message:"The email required"},pattern:{message:"The email is in a wrong format",params:patterns.email},focusable:!0}),j.emailDelay=ko.computed(j.email).extend({rateLimit:{method:"notifyWhenChangesStop",timeout:400}}),j.sEmailAvailable=ko.observable(!1),j.paymentMethod=ko.observable().extend({required:{params:!0,message:"Payment Method required"}}),j.paymentMethodSelected=function(a){var b=!1;return j.paymentMethod()&&(b=j.paymentMethod()==a),b},j.creditCard=new e(j),j.bankAccount=new f(j),j.hasStudentInformation=ko.observable(!1),j.studentInformation=ko.observable(new StudentInformation(j)),j.getEncryptedCustomerRegistrationId=function(){return c(".getEncryptedCustomerRegistrationId"),void 0===j.providerUser()?null:void 0===j.providerUser().masterId?null:j.providerUser().masterId},j.getCustomerRegistrationId=function(){return c(".getCustomerRegistrationId"),void 0===j.providerUser()?null:isNotNullOrEmpty(j.providerUser().consumerId)?j.providerUser().consumerId:isNotNullOrEmpty(j.providerUser().CustomerRegistrationId)?j.providerUser().CustomerRegistrationId:null},j.setCustomerRegistrationId=function(a){c(".setCustomerRegistrationId"),isNotNullOrEmpty(a)&&(isNotNullOrEmpty(j.providerUser())&&isNotNullOrEmpty(j.providerUser().consumerId)?j.providerUser().consumerId=a:j.providerUser({consumerId:a}))},j.clearProviderUser=function(){j.providerUser(void 0)},j.addressInformation=ko.observable(new g),j.billingInformation=ko.observable(new g),j.billingIsDelivery=ko.observable(!0),j.billingIsNotDelivery=ko.computed({read:function(){return!j.billingIsDelivery()},write:function(a){j.billingIsDelivery(!a)}}),j.OptInSpecialOffers=ko.observable(!0),j.OutDigital=ko.observable(!1),j.offer=ko.observable(new h).publishOn(j.Topics.Offer,!1,i.comparerAlwaysFalse),j.backUpOfferForUpsell=ko.observable(),j.upsellOffer=ko.observable(),j.hasUpsellOffer=function(){return void 0!==j.upsellOffer()},j.providerUser=ko.observable(),j.password=ko.observable().extend({required:{params:!0,message:"The Password required"},minLength:7,maxLength:20,validation:{validator:function(a,b){return a===j.rePassword()},message:"Password and RePassword are not equals."}}),j.rePassword=ko.observable(),j.zipCode=ko.observable().extend({required:{params:!0,message:"The ZIP Code is required"},focusable:!0}),j.zipCode.subscribe(wUtils.observableSubscribeFilterNumber,j.zipCode),j.promotionId=ko.observable(),j.isEmailAvailable=ko.observable(!1),j.planDescription=ko.observable(),j.firstName=ko.observable(),j.lastName=ko.observable(),j.fullName=ko.computed(function(){return j.firstName()+" "+j.lastName()}),j.isValidToPay=ko.computed(j.isValidToPay,j),j.premium=ko.observable(null),a&&function(){var e=this;c(".Constructor"),"object"!=typeof a&&(a=JSON.parse(a)),d("subscriptionRaw",a);var f=function(a){c(".Constructor.setZipCode");var b=parseInt(a);b>0&&(this.billingInformation().zipCode(a),this.addressInformation().zipCode(a)),this.zipCode(a)};if(a.Defaults&&a.Defaults.State&&(e.addressInformation(new g(a.Defaults.State)),e.billingInformation(new g(a.Defaults.State))),b)a.SubscriberMasterId&&e.subscriberMasterId(a.SubscriberMasterId),a.subscriberMasterId&&e.subscriberMasterId(a.subscriberMasterId),a.AccountNumber&&e.accountNumber(a.AccountNumber),a.Zip&&(e.zipCode(a.Zip),e.billingInformation().zipCode(a.Zip),e.addressInformation().zipCode(a.Zip)),a.SmartOfferSegment&&e.smartOfferSegment(a.SmartOfferSegment),a.PlanDescription&&e.planDescription(a.PlanDescription),a.planDescription&&e.planDescription(a.planDescription),a.FirstName&&e.firstName(a.FirstName),a.LastName&&e.lastName(a.LastName);else{a.SubscriberMasterId&&e.subscriberMasterId(a.SubscriberMasterId),a.subscriberMasterId&&e.subscriberMasterId(a.subscriberMasterId);var i=[];a.ZipCode&&i.push(a.ZipCode),a.zipCode&&i.push(a.zipCode),f.apply(e,i),a.PromotionId&&e.promotionId(a.PromotionId),a.OfferRaw&&e.offer(new h(a.OfferRaw)),a.offer&&e.offer(new h(a.offer)),a.ProviderUser&&e.providerUser(a.ProviderUser),a.providerUser&&e.providerUser(a.providerUser),a.Email&&e.email(a.Email),a.email&&e.email(a.email),a.IsEmailAvailable&&e.isEmailAvailable(a.IsEmailAvailable),a.paymentMethod&&e.paymentMethod(a.paymentMethod),a.PlanDescription&&e.planDescription(a.PlanDescription),a.planDescription&&e.planDescription(a.planDescription)}}.apply(j)}function CreditCardValidator(a){var b=this;b.validate=function(b){var c=null;return b=wUtils.removeSpaces(b),b=wUtils.filterNumbers(b),a.forEach(function(a){var d=new RegExp(a.regEx),e=d.test(b);e&&(c={name:a.name,code:a.code})}),c}}function CreditCardRecognizer(){var a=this;a.recognitions=[{name:"VISA",code:"vi",regEx:/^4\d*$/},{name:"Master Card",code:"mc",regEx:/^5[1-5]\d*$/},{name:"American Express",code:"ae",regEx:/^3[47]\d*$/},{name:"Diners Club",code:"dc",regEx:/^3(?:0[0-5]|[68][0-9])\d*$/},{name:"Discover",code:"d",regEx:/^6(?:011|5[0-9])\d*$/},{name:"JCB",code:"jcb",regEx:/^(?:2131|1800|35)\d*$/}],a.recognize=function(b){var c=null;return b=wUtils.removeSpaces(b),b=wUtils.filterNumbers(b),a.recognitions.forEach(function(a){var d=new RegExp(a.regEx),e=d.test(b);e&&(c={name:a.name,code:a.code})}),c}}function newsletterVM(){function a(a){return c("isGlobalUnsubscribe"),3==a.EmailPreferenceType_Id}function b(){c("uncheckAllButGlobalUnsubscribe"),f.listCategoryNewsletters().forEach(function(b){d("category",b),b.Items.forEach(function(b){d("item",b),a(b)||b.OptIn(!1)})})}function c(a){wUtils.log(g+"."+a)}function d(a,b){wUtils.info(g+"."+a,b)}function e(){f.getUserProfileByEmail()}var f=this;f.config=ko.observable().subscribeTo("config"),f.serverUrl=serverUrl,f.listCategoryNewsletters=ko.observableArray(),f.listSelectedCategoryNewsletters=ko.observableArray(),f.email=ko.observable().extend({required:{params:!0,message:"The email is required"},pattern:{message:"The email is in a wrong format",params:patterns.email},focusable:!0}),f.profileData=ko.observable({LastName:ko.observable().extend({required:{params:!0,message:"The last name is required"}}),FirstName:ko.observable().extend({required:{params:!0,message:"The first name is required"}}),ZipCode:ko.observable().extend({required:{params:!0,message:"The postal code is required"},zipCode:!0}),City:ko.observable().extend({required:{params:!0,message:"The city is required"}}),State:ko.observable().extend({required:{params:!0,message:"The province is required"}}),Email:ko.observable(),BirthYear:ko.observable(),BirthMonth:ko.observable(),BirthDay:ko.observable(),Gender:ko.observable(),IsValid:function(){var a=f.profileData();return a.LastName.isValid()&&a.FirstName.isValid()&&a.ZipCode.isValid()&&a.City.isValid()&&a.State.isValid()&&a.BirthMonth.isValid()},FireAllErrors:function(){var a=f.profileData();a.LastName.notifySubscribers(a.LastName()),a.FirstName.notifySubscribers(a.FirstName()),a.ZipCode.notifySubscribers(a.ZipCode()),a.City.notifySubscribers(a.City()),a.State.notifySubscribers(a.State()),a.BirthMonth.notifySubscribers(a.BirthMonth())}}),f.onEmailStep=ko.observable(!1),f.onProfileStep=ko.observable(!1),f.profileData().BirthMonth.extend({datePreviousThanToday:{params:[f.profileData().BirthYear,f.profileData().BirthMonth,f.profileData().BirthDay]}}),f.initializeProfileData=function(a){a&&(f.profileData().LastName(a.LastName),f.profileData().FirstName(a.FirstName),f.profileData().ZipCode(a.ZipCode),f.profileData().City(a.City),f.profileData().State(a.State),f.profileData().BirthYear(a.BirthYear),f.profileData().BirthMonth(a.BirthMonth),f.profileData().BirthDay(a.BirthDay),f.profileData().Gender(a.Gender),f.profileData().Email(f.email()))},f.birthDays=wConstants.birthDays,f.birthMonths=wConstants.birthMonths,f.birthYears=wConstants.birthYears,f.genders=wConstants.genders,f.Provinces=wConstants.CanadianProvinces,f.cookieContent=void 0,f.categoryColors=[],f.registrationId=ko.observable(),f.defaultEmailPrefTypeId=0,f.flow=ko.observable(),f.selectedCategoryId=ko.observable(),f.viewStep=void 0,f.outFromAllEmailCommuncations=ko.observable(!1),f.displayMoreInfo=ko.observable(!1),f.setMoreInfo=function(){f.displayMoreInfo(!f.displayMoreInfo())},f.goToPreferences=function(){var a={email:f.email()};mg2WidgetAPI.openNewsletter(a)},f.newsletterParams=ko.observable().syncWith("newsletterParams"),f.newsletterParams.subscribe(function(a){c("newsletterParams has changed"),d("data",a),a&&f.prepareView(a)}),f.currentPaperCode=function(){var a=f.newsletterParams().siteCode;return a&&f.config().System.AvailableSiteCodes.indexOf(a.toUpperCase())>-1?a.toUpperCase():""},f.Visibility={Widget:ko.observable(!1),EmailBox:ko.observable(),Profile:ko.observable(),NewslettersList:ko.observable(),messageBox:ko.observable(),errorMessageBox:ko.observable(),unsubscribeConfirmation:ko.observable(),Loading:{Init:ko.observable(!0),Profile:ko.observable(!1),Submit:ko.observable(!1)},ShowAllNewsletters:ko.observable(!0),ShowProfileStep:ko.observable(!1),Email:{Sending:ko.observable(!1),Sent:ko.observable(!1)},HideCloseButton:ko.observable(!1)},f.Visibility.Loading.Wheel=ko.computed(function(){return f.Visibility.Loading.Init()}),f.message=ko.observable(),f.errorMessage=ko.observable(),f.isListMode=ko.observable(),f.isListMode.subscribe(function(){w$(".newsletters-list .slideOnOff :checkbox").iphoneStyle("refresh")}),f.profileStepDone=ko.observable(!1),f.SelectAllText=ko.computed(function(){return"Select all"+(f.isListMode()?"":" items in this category")}),f._hasSlideValueChanged=function(a,b){var c=w$(a).prop("checked"),d=b();return c!==d()},ko.bindingHandlers.slideCheck={init:function(a,b){w$(a).bind("iphoneChange",function(c,d){if(f._hasSlideValueChanged(a,b)){var e=w$(a).prop("checked");b()(e)}});var c=b();w$(a).prop("checked",c())},update:function(a,b){if(f._hasSlideValueChanged(a,b)){var c=b();w$(a).prop("checked",c())}}},f.setView=function(a){c("self.setView"),c(a),f.viewStep=a;var b=f.Visibility,d=wConstants.newsletterViewStep;b.EmailBox(!1),b.Profile(!1),b.NewslettersList(!1),b.messageBox(!1),b.unsubscribeConfirmation(!1),b.errorMessageBox(!1),b.Loading.Init(!1),f.onEmailStep(!1),f.onProfileStep(!1),a===d.email&&b.EmailBox(!0),a===d.profile&&(b.Profile(!0),isMobileDevice()||isTabletDevice()||f.onProfileStep(!0)),a===d.newsletters&&(b.NewslettersList(!0),w$("#chkViewMode").iphoneStyle(),w$(".chkSelectAll").iphoneStyle(),f._refreshCategorySlides()),a===d.successMessage&&b.messageBox(!0),a===d.unsubscribeConfirmation&&b.unsubscribeConfirmation(!0),a===d.errorMessage&&b.errorMessageBox(!0),a||b.Loading.Init(!0),f.newsletterParams().hideCloseButton&&b.HideCloseButton(!0)},f.initialize=function(a,b,e){c("--- self.initialize"),d("cookieContent",a),f.cookieContent=a,f.categoryColors=b,f.defaultEmailPrefTypeId=e},f.prepareView=function(){function a(){function a(a){a?b():c()}function c(){f.setView(wConstants.newsletterViewStep.email),f.Visibility.Widget(f.newsletterParams().show)}f.getRegistrationEmailFromCookie(a)}function b(){var a=f.newsletterParams(),b=[];b[wConstants.newsletterFlow.unsubscribe]=f.UnsubscribeNewsletter,b[wConstants.newsletterFlow.open]=f.GetNewsletters,b[wConstants.newsletterFlow.link]=f.LinkNewsletter,b[wConstants.newsletterFlow.profileChange]=f.changeProfile;var c=b[a.flow];c(),f.Visibility.Widget(a.show)}c("self.prepareView"),f.setView(),f.initViewMode(f.newsletterParams()),f.profileStepDone(!1),d("config",f.config()),f.Visibility.ShowProfileStep(f.config().Newsletter.ShowProfileStep),f.registrationId(f.newsletterParams().registrationId),f.email(f.newsletterParams().email),f.email()?b():a(),setTimeout(function(){isMobileDevice()||isTabletDevice()||f.onEmailStep(!0)},500)},f.Close=function(){c("self.Close"),f.profileStepDone(!1),d("self.profileStepDone()",f.profileStepDone()),mg2WidgetAPI.closeNewsletter()},f.GetNewsletters=function(){c("self.GetNewsletters"),f.clearList(),f.Visibility.ShowProfileStep()&&!f.profileStepDone()?f.getUserProfileByEmail():f.getNewslettersByEmail()},f.SaveProfile=function(){return c("self.SaveProfile"),f.profileData().IsValid()?(f.profileStepDone(!0),void f.updateUserProfile()):void f.profileData().FireAllErrors()},f.UnsubscribeNewsletter=function(){if(c("--- self.UnsubscribeNewsletter"),void 0===f.email())return c("Email is empty"),void f.showErrormessage("Please enter you email and press unsubscribe button");f.Visibility.Loading.Submit(!0);var a={Email:f.email(),NewsletterIdsList:void 0,RegistrationId:f.registrationId(),PaperCode:f.currentPaperCode()};void 0!==f.newsletterParams().newsletterIdsList&&f.newsletterParams().newsletterIdsList.length>0&&(a.NewsletterIdsList=f.newsletterParams().newsletterIdsList.join(","));var b=f.serverUrl+"unsubscribeNewsletter";w$.post(b,a,function(a,b){c("------- .done"),c(a),f.setView(wConstants.newsletterViewStep.unsubscribeConfirmation),f.clearList(),f.newsletterParams(void 0)}).fail(function(a){f.showErrormessage(),c("------- .fail - err:"),c(a)}).always(function(){c("------- .complete"),f.Visibility.Loading.Submit(!1)})},f.UpdateNewsletter=function(){if(c("--- self.UpdateNewsletter"),void 0===f.email())return c("Email is empty"),void f.showErrormessage("Please enter you email and press SAVE button");f.Visibility.Loading.Submit(!0);var a={PreferencesList:f._getPreferencesList(),Email:f.email(),RegistrationId:f.registrationId(),PaperCode:f.currentPaperCode()},b=f.serverUrl+"updateNewsletter";w$.post(b,a,function(a,b){c("updateNewsletter.done"),d("returnedData",a),f.showMessage("You are now signed up to receive your selected newsletters from The Chronicle Herald.")}).fail(function(a){f.showErrormessage(),c("updateNewsletter.fail"),d("error",a)}).always(function(){c("updateNewsletter.complete"),f.Visibility.Loading.Submit(!1)})},f.updateUserProfile=function(){if(c("--- self.updateUserProfile"),void 0===f.email())return c("Email is empty"),void f.showErrormessage("Please enter you email and press SAVE button");f.setView();var a=f.profileData(),b={LoginName:f.email(),Password:"",UserProfile:{LastName:a.LastName(),FirstName:a.FirstName(),ZipCode:a.ZipCode().toUpperCase(),City:a.City().toUpperCase(),State:a.State(),BirthYear:a.BirthYear(),BirthMonth:a.BirthMonth(),BirthDay:a.BirthDay(),Gender:a.Gender(),Email:f.email()},PaperCode:f.currentPaperCode()};c(b);var d=f.serverUrl+"updateUserProfile";w$.post(d,b,function(a,b){c("------- .done"),c(a),f.GetNewsletters()}).fail(function(a){f.showErrormessage(),c("------- .fail - err:"),c(a)}).always(function(){c("------- .complete")})},f.LinkNewsletter=function(){if(c("--- self.LinkNewsletter"),void 0===f.email())return void c("Email is empty");if(void 0===f.registrationId())return void c("RegistrationId is empty");var a={Email:f.email(),RegistrationId:f.registrationId(),PaperCode:f.currentPaperCode()},b=f.serverUrl+"linkNewsletter";w$.post(b,a,function(a,b){c("------- .done"),c(a)}).fail(function(a){c("------- .fail - err:"),c(a)}).always(function(){c("------- .complete")})},f.changeProfile=e,f.initiateUserProfileUpdate=function(){if(void 0!==f.email()){f.Visibility.Email.Sending(!0),f.Visibility.Email.Sent(!1);var a={Email:f.email(),PaperCode:f.currentPaperCode()},b=f.serverUrl+"initiateUserProfileUpdate";w$.post(b,a,function(a,b){f.Visibility.Email.Sending(!1),f.Visibility.Email.Sent(!0)}).fail(function(a){f.Visibility.Email.Sending(!1)})}},f.SelectCategory=function(a,b){f.selectedCategoryId(a);var c=ko.utils.arrayFilter(f.listCategoryNewsletters(),function(b){return b.Selected=b.EmailPreferenceCategory_Id==a,b.Selected?b.CSS(b.Color+" selected"):b.CSS(b.Color),b.Selected});f.listSelectedCategoryNewsletters(c),f._refresh(),b!==!1&&f._refreshCategorySlides(),scrollParentToChildInnerId&&scrollParentToChildInnerId("white-BG.widget-NL.mg2-bootstrap","preferencesList")},f.enterSubmit=function(a,b){if(13===b.keyCode){switch(c("ENTER key pressed"),c(f.email()),f.viewStep){case wConstants.newsletterViewStep.email:f.GetNewsletters()}return b.preventDefault(),!1}return!0},f.ShowAllNewsletters=function(){f.newsletterParams().categoryIdsList=[],f.newsletterParams().newsletterIdsList=[],f.GetNewsletters()},f._refresh=function(){var a;f.isListMode()?(a=f.listCategoryNewsletters(),f.listCategoryNewsletters([]), f.listCategoryNewsletters(a)):(a=f.listSelectedCategoryNewsletters(),f.listSelectedCategoryNewsletters([]),f.listSelectedCategoryNewsletters(a))},f._refreshCategorySlides=function(){var a=w$(".newsletters-list .slideOnOff :checkbox");a&&a.length>0&&a.iphoneStyle();var b=w$(".chkSelectAll");b&&b.length>0&&b.iphoneStyle()},f.initViewMode=function(a){c("self.initViewMode"),d("params",a);var b=a.viewMode;d("viewMode",b),b||(b=isMobileDevice()?wConstants.newsletterListMode.list:wConstants.newsletterListMode.tabs),f.isListMode(b===wConstants.newsletterListMode.list)},f.validateEmail=function(){return f.email.valueHasMutated(),f.email.isValid()},f.getNewslettersByEmail=function(){if(c("--- self.getNewsletterByEmail"),!f.validateEmail())return c("Email is invalid"),void f.setView(wConstants.newsletterViewStep.email);f.setView();var a={Email:f.email(),CategoryIdsList:void 0,NewsletterIdsList:void 0,EmailPreferenceTypeId:f.defaultEmailPrefTypeId,PaperCode:f.currentPaperCode()};void 0!==f.newsletterParams().categoryIdsList&&f.newsletterParams().categoryIdsList.length>0&&(a.CategoryIdsList=f.newsletterParams().categoryIdsList.join(",")),void 0!==f.newsletterParams().newsletterIdsList&&f.newsletterParams().newsletterIdsList.length>0&&(a.NewsletterIdsList=f.newsletterParams().newsletterIdsList.join(",")),f.Visibility.ShowAllNewsletters(void 0!==a.CategoryIdsList||void 0!==a.NewsletterIdsList);var b=f.serverUrl+"getNewsletterByEmail";w$.post(b,a,function(a,b){if(c("------- .done"),0===a.length){c("No data available");var d=f.config().Newsletter.CustomerServicePhone;return message="Sorry but there is no available data at this moment. Please contact customer service at "+d+" for further assistance.",void f.showErrormessage(message)}var e=a.map(function(a){return a.Items}).reduce(function(a,b){return a.concat(b)},[]).filter(function(a){return 3===a.EmailPreferenceType_Id}).shift();e&&e.OptIn&&f.outFromAllEmailCommuncations(!0);var g=f.addExtendedAttrs(a);f.listCategoryNewsletters(g);var h=g[0].EmailPreferenceCategory_Id;void 0!==f.newsletterParams().defaultCategoryId&&(h=parseInt(f.newsletterParams().defaultCategoryId)),c(h),f.SelectCategory(h,!1),c(f.listCategoryNewsletters()),f.setView(wConstants.newsletterViewStep.newsletters)}).fail(function(a){c("------- .fail - err:"),c(a)}).always(function(){c("------- .complete")})},f.getUserProfileByEmail=function(){if(c("--- self.getUserProfileByEmail"),!f.validateEmail())return c("Email is invalid"),void f.setView(wConstants.newsletterViewStep.email);f.setView();var a={Email:f.email(),PaperCode:f.currentPaperCode()},b=f.serverUrl+"getUserProfileByEmail";w$.post(b,a,function(a,b){c("getUserProfileByEmail.callback"),d("profileData",a),d("self.newsletterParams()",f.newsletterParams()),a?(f.initializeProfileData(a),f.registrationId(a.RegistrationId),f.newsletterParams().flow===wConstants.newsletterFlow.profileChange?f.setView(wConstants.newsletterViewStep.profile):f.getNewslettersByEmail()):(f.initializeProfileData({LastName:void 0,FirstName:void 0,ZipCode:void 0,City:void 0,State:void 0,BirthYear:"",BirthMonth:"",BirthDay:"",Gender:"",Email:f.email()}),f.setView(wConstants.newsletterViewStep.profile)),c(f.profileData())}).fail(function(a){c("------- .fail - err:"),c(a)}).always(function(){c("------- .complete")})},f.addExtendedAttrs=function(e){var g=0;return w$.each(e,function(e,h){h.Color=f.categoryColors[g],h.CSS=ko.observable(),h.CSS(h.Color),h.selectedAll=ko.observable(!1),h.selectedAll.subscribe(function(a){w$(".newsletters-list .slideOnOff :checkbox:visible:enabled[emailPreferenceType_Id!='3']").prop("checked",a).trigger("iphoneChange").iphoneStyle("refresh")}),w$.each(h.Items,function(e,g){function h(e){if(c("subscribeOptIn"),d("item",g),d("itemOptin",e),a(g)){var h=i("#chk"+g.EmailPreference_Id);e&&(b(),j(h,g.EmailPreference_Id)),f.outFromAllEmailCommuncations(e),k(h,g.EmailPreference_Id)}}function i(a){return w$(".newsletters-list .slideOnOff :checkbox").not(a)}function j(a){c("uncheckAllUI"),a.prop("checked",!1).trigger("iphoneChange").iphoneStyle("refresh")}function k(a){c("refreshAllCheckboxesStyles"),a.iphoneStyle("refresh")}var l=g.OptIn;g.OptIn=ko.observable(l),g.OptIn.subscribe(h)}),g++,g==f.categoryColors.length&&(g=0)}),e},f.shouldBeDisabled=function(a){return f.outFromAllEmailCommuncations()&&3!==a},f._getPreferencesList=function(){var a=[];return w$.each(f.listCategoryNewsletters(),function(b,c){w$.each(c.Items,function(b,c){a.push(new f._preference(c))})}),JSON.stringify(a)},f._preference=function(a){var b=this;b.EmailPreference_Id=a.EmailPreference_Id,b.OptIn=a.OptIn()},f.getRegistrationEmailFromCookie=function(a){if(c("--- self.getRegistrationEmailFromCookie"),void 0===f.cookieContent)return c("Cookie is empty"),void a(!1);var b={CookieValue:f.cookieContent},d=f.serverUrl+"getRegistrationEmailFromCookie";w$.post(d,b,function(b,d){c("------- .done"),c(b),f.email(b.EmailAddress),f.registrationId(b.RegistrationID),a(!0)}).fail(function(b){c("------- .fail - err:"),c(b),a(!1)}).always(function(){c("------- .complete")})},f.showMessage=function(a){f.setView(wConstants.newsletterViewStep.successMessage),f.message(a),f.clearList(),f.newsletterParams(void 0)},f.showErrormessage=function(a){if(void 0===a||""===a){var b=f.config().Newsletter.CustomerServicePhone;a="We couldn't update your newsletter preferences. Please contact customer service at "+b+" for further assistance."}f.setView(wConstants.newsletterViewStep.errorMessage),f.errorMessage(a),f.newsletterParams(void 0)},f.clearList=function(){f.listCategoryNewsletters([]),f.listSelectedCategoryNewsletters([])};var g="baseNewsletterWidgetViewModel"}function PaymentURLGeneratorPaymentBase(){this.params="MUST-IMPLEMENT",this.serverUrl="MUST-IMPLEMENT",this.urlAction="MUST-IMPLEMENT",this.config="MUST-IMPLEMENT",this.getURL=function(){wUtils.log("PaymentURLGeneratorPaymentBase.getURL");var a,b=this.params;return a=this.isEncryptedMode()?this.getURLByEncryptedConsumerId(b):this.getURLByConsumerIdEmail(b)},this.isEncryptedMode=function(){return wUtils.log("PaymentURLGeneratorPaymentBase.isEncryptedMode"),isNotNullOrEmpty(this.params.encryptedConsumerId)},this.isRedirectMode=function(){return wUtils.log("PaymentURLGeneratorPaymentBase.isRedirectMode"),this.config.DefaultValues.SecurePayment.CurrentMode==this.config.UI.SecurePayment.Modes.Redirect}}function PaymentURLGeneratorPaymentNonSubscriber(a,b){this.params=a,this.serverUrl=b,this.urlAction="securePaymentSubscription"}function PaymentURLGeneratorPaymentPremium(a,b){this.params=a,this.serverUrl=b,this.urlAction="securePaymentPremium"}function PaymentURLGeneratorPaymentStopped(a,b){this.params=a,this.serverUrl=b,this.urlAction="securePaymentStopped"}function PaymentURLGeneratorPaymentUpgrade(a,b){this.params=a,this.serverUrl=b,this.urlAction="securePaymentUpgrade"}function SubscriptionPanelURLGenerator(a,b){this.params=a,this.serverUrl=b,this.urlAction="subscriptionPanel"}function SubscriptionPanelURLGeneratorUpgrade(a,b){this.params=a,this.serverUrl=b,this.urlAction="subscriptionPanel/upgrade"}function Mg2WidgetAPI(){function a(a){wUtils.log(f+"."+a)}function b(a,b){wUtils.info(f+"."+a,b)}var c,d,e=this,f="Mg2WidgetAPI",g=!1,h={};e.serverUrl=function(){return void 0===e.getConfig()||void 0===e.getConfig().System||void 0===e.getConfig().System.Url?"ServerUrl:UNDEFINED":e.getConfig().System.Url},e.init=function(a,b){void 0!==a&&(d=a),h=ko.mapping.fromJS(b),ko.postbox.publish("options",h)},e.readyWithConfig=function(){a("self.readyWithConfig");var b=g&&void 0!==e.getConfig();return a("readyWithConfig",b),b},e.waitForReadyAndConfig=function(){return a("--- waiting: Mg2WidgetAPI.ready and config"),a(g),e.readyWithConfig()&&(a("!!! READY with Config !!!"),clearInterval(c),d()),e.ready},e.setReady=function(c){a("--- Mg2WidgetAPI.setReady"),g=c,b("ready",g),ko.postbox.publish("ready",g)},e.getConfig=function(){return e._config},e.setConfig=function(a){e._config=a,ko.postbox.publish("config",e._config)},e.getContent=function(){a("--- Mg2WidgetAPI.getContent");var b=e.getConfig();return a(b),isNotNullOrEmpty(b)&&"undefined"!=typeof b.Content?(a(b.Content),b.Content):{error:"Config not Defined"}},e.updateContent=function(b){a("--- Mg2WidgetAPI.updateContent"),a(b);var c=e.getConfig();isNotNullOrEmpty(c)&&"undefined"!=typeof c.Content&&(c.Content=b,e.setConfig(c))},e.showWidgetContainer=ko.observable(!1).syncWith("showWidgetContainer"),e.open=function(){return a("--- Mg2WidgetAPI.open"),e.showWidgetContainer(!0),!0},e.close=function(){return a("--- Mg2WidgetAPI.close"),e.showWidgetContainer(!1),!0},e.toogle=function(){a("--- Mg2WidgetAPI.toogle");var b=e.showWidgetContainer();return e.showWidgetContainer(!b),!0},e.status=function(){return a("--- Mg2WidgetAPI.status"),e.showWidgetContainer()},e.eventHandlers={},e.addEventHandlers=function(b){return a("--- Mg2WidgetAPI.addEventHandlers => params"),a(b),b?(b.onProccessCompleted&&(e.eventHandlers.onProccessCompleted=b.onProccessCompleted),void(b.onWidgetClosed&&(e.eventHandlers.onWidgetClosed=b.onWidgetClosed))):(a("addEventHandlers has NO parameters"),!1)},e.executeProccessCompleted=function(c){a("--- Mg2WidgetAPI.executeProccessCompleted"),b("self.eventHandlers.onProccessCompleted:",e.eventHandlers.onProccessCompleted),b("result:",c),e.eventHandlers.onProccessCompleted&&e.eventHandlers.onProccessCompleted(c)},e.executeWidgetClosed=function(b){a("--- Mg2WidgetAPI.executeWidgetClosed"),e.eventHandlers.onWidgetClosed&&e.eventHandlers.onWidgetClosed(b)},e.updateDefaultPromotionIdZipcode=function(b){if(a("--- Mg2WidgetAPI.updateupdateDefaultPromotionIdZipcodeContent"),b.promotionId&&b.zipCode){var c=e.getConfig();return c?(c.Services.Offer.DigitalDefault.PromotionId=b.promotionId,c.Services.Offer.DigitalDefault.ZipCode=b.zipCode,e.setConfig(c),void 0):{error:"Config is not defined"}}},e.updateFindOffersPromotionIds=function(b){if(a("--- Mg2WidgetAPI.updateFindOffersPromotionIds"),b.promotionIds){var c=e.getConfig();return c?(c.Services.Offer.Find.PromotionIds=b.promotionIds,void e.setConfig(c)):{error:"Config is undefined"}}},e._securePayment=function(c,d){switch(a("--- Mg2WidgetAPI._securePayment"),b("params",c),b("callback",d),c.securePaymentMode){case e.getConfig().UI.SecurePayment.Modes.PopUp:openSecurePayment(c.securePaymentURL,d);break;case e.getConfig().UI.SecurePayment.Modes.Redirect:var f=e.getConfig().DefaultValues.SecurePayment.DefaultReturnURL;isNotNullOrEmpty(c.returnUrl)&&(f=c.returnUrl);var g;isNullOrEmpty(c.byQueryString)?g=c.securePaymentURL+"?returnUrl="+encodeURIComponent(f):(g=c.securePaymentURL,b("params.returnUrl",c.returnUrl),isNullOrEmpty(c.returnUrl)&&(g+="&returnUrl="+encodeURIComponent(f))),a("REDIRECT to: "+g),((I11C || I10C).PreLocationContextProxy)(window).locat1on=g}},e._openPayment=function(c,d){if(a("--- Mg2WidgetAPI._openPayment"),!e.readyWithConfig())return!1;var f=d.validateParams();return b("errors",f),isNotNullOrEmpty(f)&&f.length>0?!1:(c.securePaymentURL=d.getURL(),c.securePaymentMode=e.getConfig().DefaultValues.SecurePayment.CurrentMode,void e._securePayment(c,function(a){e.executeProccessCompleted(a)}))},e.openPaymentNonSubscriber=function(b){a("--- Mg2WidgetAPI.openPaymentNonSubscriber"),e._openPayment(b,new PaymentURLGeneratorPaymentNonSubscriber(b,e.serverUrl()))},e.openPaymentUpgrade=function(b){a("--- Mg2WidgetAPI.openPaymentUpgrade"),e._openPayment(b,new PaymentURLGeneratorPaymentUpgrade(b,e.serverUrl()))},e.openPaymentPremium=function(b){a("--- Mg2WidgetAPI.openPaymentPremium"),e._openPayment(b,new PaymentURLGeneratorPaymentPremium(b,e.serverUrl()))},e.openPaymentStopped=function(b){a("--- Mg2WidgetAPI.openPaymentStopped"),e._openPayment(b,new PaymentURLGeneratorPaymentStopped(b,e.serverUrl()))},e.getOffers=function(b,c){return a("--- Mg2WidgetAPI.getOffers"),isNullOrEmpty(b.promotionId)?"promotionId REQUIRED":isNullOrEmpty(b.zipCode)?"zipCode REQUIRED":w$.getJSON(e.serverUrl()+"/getOffers/"+b.promotionId+"/"+b.zipCode,function(a){a.success?c(a.offers):c(void 0,a.error)})},e.getPromotions=function(b){return a("--- Mg2WidgetAPI.getPromotions"),w$.getJSON(e.serverUrl()+"/promotions/",function(a){a.success?b(a.offers):b(void 0,a.error)})},e.getSmartOffers=function(b,c){return a("--- Mg2WidgetAPI.getSmartOffers"),isNullOrEmpty(b.smartOfferSegment)?"smartOfferSegment REQUIRED":isNullOrEmpty(b.zipCode)?"zipCode REQUIRED":w$.getJSON(e.serverUrl()+"/getSmartOffers/"+b.smartOfferSegment+"/"+b.zipCode,c)},e.linkSubscription=function(b,c){return a("--- Mg2WidgetAPI.linkSubscription"),w$.post(e.serverUrl()+"/linkSubscription",b,c)},e.linkSubscriptionECRID=function(b,c){return a("--- Mg2WidgetAPI.linkSubscriptionECRID"),w$.post(e.serverUrl()+"/linkSubscriptionECRID",b,c)},e.newsletterParams=ko.observable().syncWith("newsletterParams"),e.showNewsletterContainer=ko.observable(!1).syncWith("showNewsletterContainer"),e.newsletterLoaded=!1,e.openNewsletter=function(b){return a("self.openNewsletter"),e.newsletterLoaded?(e._initWidget(wConstants.newsletterFlow.open,b,!0),!0):void NewsletterCoreLauncher(function(){return e._initWidget(wConstants.newsletterFlow.open,b,!0),e.newsletterLoaded=!0,!0})},e.changeProfile=function(b){return a("self.changeProfile"),e.newsletterLoaded?(e._initWidget(wConstants.newsletterFlow.profileChange,b,!0),!0):void NewsletterCoreLauncher(function(){return e._initWidget(wConstants.newsletterFlow.profileChange,b,!0),e.newsletterLoaded=!0,!0})},e.unsubscribeNewsletter=function(b){return a("self.unsubscribeNewsletter"),e.newsletterLoaded?(e._initWidget(wConstants.newsletterFlow.unsubscribe,b,!0),!0):void NewsletterCoreLauncher(function(){return e._initWidget(wConstants.newsletterFlow.unsubscribe,b,!0),e.newsletterLoaded=!0,!0})},e.linkNewsletter=function(b){return a("self.linkNewsletter"),e.newsletterLoaded?(e._initWidget(wConstants.newsletterFlow.link,b,!0),!0):void NewsletterCoreLauncher(function(){return e._initWidget(wConstants.newsletterFlow.link,b,!0),e.newsletterLoaded=!0,!0})},e._initWidget=function(b,c,d){a("self._initWidget"),e.showNewsletterContainer(!1);var f=e.getNewsletterParams(b,c,d);return e.newsletterParams(f),e._toggleNewsletterVisibility(d),!0},e.getNewsletterParams=function(a,b,c){var d={flow:a,show:c,email:void 0,viewMode:void 0,newsletterIdsList:[],categoryIdsList:[],registrationId:void 0,defaultCategoryId:void 0,siteCode:"",newsletterID:void 0,hideCloseButton:void 0,isEmailEncrypted:!1};return void 0!==b&&(d.email=b.email,d.viewMode=b.viewMode,d.newsletterIdsList=b.newsletterIdsList,d.categoryIdsList=b.categoryIdsList,d.registrationId=b.registrationId,d.defaultCategoryId=b.defaultCategoryId,d.siteCode=b.siteCode,d.newsletterID=b.newsletterID,d.hideCloseButton=b.hideCloseButton,d.isEmailEncrypted=b.isEmailEncrypted?b.isEmailEncrypted:!1),d},e.closeNewsletter=function(){return a("self.closeNewsletter"),e.newsletterParams(void 0),e._toggleNewsletterVisibility(!1),e.executeWidgetClosed(),!0},e._toggleNewsletterVisibility=function(a){a===!0?(w$(".widget-body").show(),w$("body").addClass("fixedBody")):(w$(".widget-body").hide(),w$("body").removeClass("fixedBody"))},e.encrypt=function(b,c){a("--- self.encrypt");var d;if(uiConfig&&uiConfig.Security&&uiConfig.Security.Token&&(token=uiConfig.Security.Token),uiConfig&&uiConfig.System&&uiConfig.System.ServerUrl&&(d=uiConfig.System.ServerUrl),!b)return void a("Data is undefined");if(d){var e=d+"encrypt";w$.post(e,b,function(a,b){return c(a)}).fail(function(b){a("------- .fail - err:"),a(b)}).always(function(){a("------- .complete")})}else a("------ServerUrl is not defined")},e.decrypt=function(b,c){a("--- self.decrypt");var d,e="2A6C6B90-904C-4320-94F2-6941E946EC94";if(uiConfig&&uiConfig.Security&&uiConfig.Security.Token&&(e=uiConfig.Security.Token),uiConfig&&uiConfig.System&&uiConfig.System.ServerUrl&&(d=uiConfig.System.ServerUrl),!b)return void a("Encrypted is undefined");var f={data:b,token:e};if(d){var g=d+"decrypt";w$.post(g,f,function(a,b){c(a)}).fail(function(b){a("------- .fail - err:"),a(b)}).always(function(){a("------- .complete")})}else a("------ServerUrl is not defined")}}function newsletterApplyBindings(){function a(a){wUtils.log(b+"."+a)}var b="newsletterApplyBindings";a("newsletterApplyBindings"),ko.applyBindings(newsletterVMO,w$("div.newsletters")[0]);var c,d=new MG2Provider(serverUrl);a("mg2Provider.isLogged()",d.isLogged()),d.isLogged()&&(c=d.getContent()),a("cookieContent",c);var e=["red","yellow","green","violet","orange","blue"],f=0;newsletterVMO.initialize(c,e,f)}function PaymentURLGeneratorPaymentBase(){this.params="MUST-IMPLEMENT",this.serverUrl="MUST-IMPLEMENT",this.urlAction="MUST-IMPLEMENT",this.config="MUST-IMPLEMENT",this.getURL=function(){wUtils.log("PaymentURLGeneratorPaymentBase.getURL");var a,b=this.params;return a=this.isEncryptedMode()?this.getURLByEncryptedConsumerId(b):this.getURLByConsumerIdEmail(b)},this.isEncryptedMode=function(){return wUtils.log("PaymentURLGeneratorPaymentBase.isEncryptedMode"),isNotNullOrEmpty(this.params.encryptedConsumerId)},this.isRedirectMode=function(){return wUtils.log("PaymentURLGeneratorPaymentBase.isRedirectMode"),this.config.DefaultValues.SecurePayment.CurrentMode==this.config.UI.SecurePayment.Modes.Redirect}}function PaymentURLGeneratorPaymentNonSubscriber(a,b){this.params=a,this.serverUrl=b,this.urlAction="securePaymentSubscription"}function PaymentURLGeneratorPaymentPremium(a,b){this.params=a,this.serverUrl=b,this.urlAction="securePaymentPremium"}function PaymentURLGeneratorPaymentStopped(a,b){this.params=a,this.serverUrl=b,this.urlAction="securePaymentStopped"}function PaymentURLGeneratorPaymentUpgrade(a,b){this.params=a,this.serverUrl=b,this.urlAction="securePaymentUpgrade"}function SubscriptionPanelURLGenerator(a,b){this.params=a,this.serverUrl=b,this.urlAction="subscriptionPanel"}function SubscriptionPanelURLGeneratorUpgrade(a,b){this.params=a,this.serverUrl=b,this.urlAction="subscriptionPanel/upgrade"}function Mg2WidgetAPI(){function a(a){wUtils.log(f+"."+a)}function b(a,b){wUtils.info(f+"."+a,b)}var c,d,e=this,f="Mg2WidgetAPI",g=!1,h={};e.serverUrl=function(){return void 0===e.getConfig()||void 0===e.getConfig().System||void 0===e.getConfig().System.Url?"ServerUrl:UNDEFINED":e.getConfig().System.Url},e.init=function(a,b){void 0!==a&&(d=a),h=ko.mapping.fromJS(b),ko.postbox.publish("options",h)},e.readyWithConfig=function(){a("self.readyWithConfig");var b=g&&void 0!==e.getConfig();return a("readyWithConfig",b),b},e.waitForReadyAndConfig=function(){return a("--- waiting: Mg2WidgetAPI.ready and config"),a(g),e.readyWithConfig()&&(a("!!! READY with Config !!!"),clearInterval(c),d()),e.ready},e.setReady=function(c){a("--- Mg2WidgetAPI.setReady"),g=c,b("ready",g),ko.postbox.publish("ready",g)},e.getConfig=function(){return e._config},e.setConfig=function(a){e._config=a,ko.postbox.publish("config",e._config)},e.getContent=function(){a("--- Mg2WidgetAPI.getContent");var b=e.getConfig();return a(b),isNotNullOrEmpty(b)&&"undefined"!=typeof b.Content?(a(b.Content),b.Content):{error:"Config not Defined"}},e.updateContent=function(b){a("--- Mg2WidgetAPI.updateContent"),a(b);var c=e.getConfig();isNotNullOrEmpty(c)&&"undefined"!=typeof c.Content&&(c.Content=b,e.setConfig(c))},e.showWidgetContainer=ko.observable(!1).syncWith("showWidgetContainer"),e.open=function(){return a("--- Mg2WidgetAPI.open"),e.showWidgetContainer(!0),!0},e.close=function(){return a("--- Mg2WidgetAPI.close"),e.showWidgetContainer(!1),!0},e.toogle=function(){a("--- Mg2WidgetAPI.toogle");var b=e.showWidgetContainer();return e.showWidgetContainer(!b),!0},e.status=function(){return a("--- Mg2WidgetAPI.status"),e.showWidgetContainer()},e.eventHandlers={},e.addEventHandlers=function(b){return a("--- Mg2WidgetAPI.addEventHandlers => params"),a(b),b?(b.onProccessCompleted&&(e.eventHandlers.onProccessCompleted=b.onProccessCompleted),void(b.onWidgetClosed&&(e.eventHandlers.onWidgetClosed=b.onWidgetClosed))):(a("addEventHandlers has NO parameters"),!1)},e.executeProccessCompleted=function(c){a("--- Mg2WidgetAPI.executeProccessCompleted"),b("self.eventHandlers.onProccessCompleted:",e.eventHandlers.onProccessCompleted),b("result:",c),e.eventHandlers.onProccessCompleted&&e.eventHandlers.onProccessCompleted(c)},e.executeWidgetClosed=function(b){a("--- Mg2WidgetAPI.executeWidgetClosed"),e.eventHandlers.onWidgetClosed&&e.eventHandlers.onWidgetClosed(b)},e.updateDefaultPromotionIdZipcode=function(b){if(a("--- Mg2WidgetAPI.updateupdateDefaultPromotionIdZipcodeContent"),b.promotionId&&b.zipCode){var c=e.getConfig();return c?(c.Services.Offer.DigitalDefault.PromotionId=b.promotionId,c.Services.Offer.DigitalDefault.ZipCode=b.zipCode,e.setConfig(c),void 0):{error:"Config is not defined"}}},e.updateFindOffersPromotionIds=function(b){if(a("--- Mg2WidgetAPI.updateFindOffersPromotionIds"),b.promotionIds){var c=e.getConfig();return c?(c.Services.Offer.Find.PromotionIds=b.promotionIds,void e.setConfig(c)):{error:"Config is undefined"}}},e._securePayment=function(c,d){switch(a("--- Mg2WidgetAPI._securePayment"),b("params",c),b("callback",d),c.securePaymentMode){case e.getConfig().UI.SecurePayment.Modes.PopUp:openSecurePayment(c.securePaymentURL,d);break;case e.getConfig().UI.SecurePayment.Modes.Redirect:var f=e.getConfig().DefaultValues.SecurePayment.DefaultReturnURL;isNotNullOrEmpty(c.returnUrl)&&(f=c.returnUrl);var g;isNullOrEmpty(c.byQueryString)?g=c.securePaymentURL+"?returnUrl="+encodeURIComponent(f):(g=c.securePaymentURL,b("params.returnUrl",c.returnUrl),isNullOrEmpty(c.returnUrl)&&(g+="&returnUrl="+encodeURIComponent(f))),a("REDIRECT to: "+g),((I11C || I10C).PreLocationContextProxy)(window).locat1on=g}},e._openPayment=function(c,d){if(a("--- Mg2WidgetAPI._openPayment"),!e.readyWithConfig())return!1;var f=d.validateParams();return b("errors",f),isNotNullOrEmpty(f)&&f.length>0?!1:(c.securePaymentURL=d.getURL(),c.securePaymentMode=e.getConfig().DefaultValues.SecurePayment.CurrentMode,void e._securePayment(c,function(a){e.executeProccessCompleted(a)}))},e.openPaymentNonSubscriber=function(b){a("--- Mg2WidgetAPI.openPaymentNonSubscriber"),e._openPayment(b,new PaymentURLGeneratorPaymentNonSubscriber(b,e.serverUrl()))},e.openPaymentUpgrade=function(b){a("--- Mg2WidgetAPI.openPaymentUpgrade"),e._openPayment(b,new PaymentURLGeneratorPaymentUpgrade(b,e.serverUrl()))},e.openPaymentPremium=function(b){a("--- Mg2WidgetAPI.openPaymentPremium"),e._openPayment(b,new PaymentURLGeneratorPaymentPremium(b,e.serverUrl()))},e.openPaymentStopped=function(b){a("--- Mg2WidgetAPI.openPaymentStopped"),e._openPayment(b,new PaymentURLGeneratorPaymentStopped(b,e.serverUrl()))},e.getOffers=function(b,c){return a("--- Mg2WidgetAPI.getOffers"),isNullOrEmpty(b.promotionId)?"promotionId REQUIRED":isNullOrEmpty(b.zipCode)?"zipCode REQUIRED":w$.getJSON(e.serverUrl()+"/getOffers/"+b.promotionId+"/"+b.zipCode,function(a){a.success?c(a.offers):c(void 0,a.error)})},e.getPromotions=function(b){return a("--- Mg2WidgetAPI.getPromotions"),w$.getJSON(e.serverUrl()+"/promotions/",function(a){a.success?b(a.offers):b(void 0,a.error)})},e.getSmartOffers=function(b,c){return a("--- Mg2WidgetAPI.getSmartOffers"),isNullOrEmpty(b.smartOfferSegment)?"smartOfferSegment REQUIRED":isNullOrEmpty(b.zipCode)?"zipCode REQUIRED":w$.getJSON(e.serverUrl()+"/getSmartOffers/"+b.smartOfferSegment+"/"+b.zipCode,c)},e.linkSubscription=function(b,c){return a("--- Mg2WidgetAPI.linkSubscription"),w$.post(e.serverUrl()+"/linkSubscription",b,c)},e.linkSubscriptionECRID=function(b,c){return a("--- Mg2WidgetAPI.linkSubscriptionECRID"),w$.post(e.serverUrl()+"/linkSubscriptionECRID",b,c)},e.newsletterParams=ko.observable().syncWith("newsletterParams"),e.showNewsletterContainer=ko.observable(!1).syncWith("showNewsletterContainer"),e.newsletterLoaded=!1,e.openNewsletter=function(b){return a("self.openNewsletter"),e.newsletterLoaded?(e._initWidget(wConstants.newsletterFlow.open,b,!0),!0):void NewsletterCoreLauncher(function(){return e._initWidget(wConstants.newsletterFlow.open,b,!0),e.newsletterLoaded=!0,!0})},e.changeProfile=function(b){return a("self.changeProfile"),e.newsletterLoaded?(e._initWidget(wConstants.newsletterFlow.profileChange,b,!0),!0):void NewsletterCoreLauncher(function(){return e._initWidget(wConstants.newsletterFlow.profileChange,b,!0),e.newsletterLoaded=!0,!0})},e.unsubscribeNewsletter=function(b){return a("self.unsubscribeNewsletter"),e.newsletterLoaded?(e._initWidget(wConstants.newsletterFlow.unsubscribe,b,!0),!0):void NewsletterCoreLauncher(function(){return e._initWidget(wConstants.newsletterFlow.unsubscribe,b,!0),e.newsletterLoaded=!0,!0})},e.linkNewsletter=function(b){return a("self.linkNewsletter"),e.newsletterLoaded?(e._initWidget(wConstants.newsletterFlow.link,b,!0),!0):void NewsletterCoreLauncher(function(){return e._initWidget(wConstants.newsletterFlow.link,b,!0),e.newsletterLoaded=!0,!0})},e._initWidget=function(b,c,d){a("self._initWidget"),e.showNewsletterContainer(!1);var f=e.getNewsletterParams(b,c,d);return e.newsletterParams(f),e._toggleNewsletterVisibility(d),!0},e.getNewsletterParams=function(a,b,c){var d={flow:a,show:c,email:void 0,viewMode:void 0,newsletterIdsList:[],categoryIdsList:[],registrationId:void 0,defaultCategoryId:void 0,siteCode:"",newsletterID:void 0,hideCloseButton:void 0,isEmailEncrypted:!1};return void 0!==b&&(d.email=b.email,d.viewMode=b.viewMode,d.newsletterIdsList=b.newsletterIdsList,d.categoryIdsList=b.categoryIdsList,d.registrationId=b.registrationId,d.defaultCategoryId=b.defaultCategoryId,d.siteCode=b.siteCode,d.newsletterID=b.newsletterID,d.hideCloseButton=b.hideCloseButton,d.isEmailEncrypted=b.isEmailEncrypted?b.isEmailEncrypted:!1),d},e.closeNewsletter=function(){return a("self.closeNewsletter"),e.newsletterParams(void 0),e._toggleNewsletterVisibility(!1),e.executeWidgetClosed(),!0},e._toggleNewsletterVisibility=function(a){a===!0?(w$(".widget-body").show(),w$("body").addClass("fixedBody")):(w$(".widget-body").hide(),w$("body").removeClass("fixedBody"))},e.encrypt=function(b,c){a("--- self.encrypt");var d;if(uiConfig&&uiConfig.Security&&uiConfig.Security.Token&&(token=uiConfig.Security.Token),uiConfig&&uiConfig.System&&uiConfig.System.ServerUrl&&(d=uiConfig.System.ServerUrl),!b)return void a("Data is undefined");if(d){var e=d+"encrypt";w$.post(e,b,function(a,b){return c(a)}).fail(function(b){a("------- .fail - err:"),a(b)}).always(function(){a("------- .complete")})}else a("------ServerUrl is not defined")},e.decrypt=function(b,c){a("--- self.decrypt");var d,e="2A6C6B90-904C-4320-94F2-6941E946EC94";if(uiConfig&&uiConfig.Security&&uiConfig.Security.Token&&(e=uiConfig.Security.Token),uiConfig&&uiConfig.System&&uiConfig.System.ServerUrl&&(d=uiConfig.System.ServerUrl),!b)return void a("Encrypted is undefined");var f={data:b,token:e};if(d){var g=d+"decrypt";w$.post(g,f,function(a,b){c(a)}).fail(function(b){a("------- .fail - err:"),a(b)}).always(function(){a("------- .complete")})}else a("------ServerUrl is not defined")}}function NewsletterCoreLauncher(a){"use strict";function b(a){wUtils.log(h+"."+a)}function c(a,b){wUtils.info(h+"."+a,b)}function d(){var a=document.getElementById("mg2Widget-newsletter-container");a.innerHTML="

LOADING ...

"}function e(){b("callServer");var a={cache:!1,dataType:"jsonp",jsonp:"callback",url:serverUrl+"newsletterHtml"};c("JSON.stringify(requestData)",JSON.stringify(a)),w$.ajax(a).done(f).fail(g)}function f(d){b("onSucess"),c("widget.config",d.config);var e=w$("#mg2Widget-newsletter-container"),f=document.getElementById("mg2Widget-newsletter-container");return c("mg2WidgetContainer",e),0===e.length?void b("WARNING: mg2Widget-newsletter-container element is missing"):(e.removeClass("widget-body").addClass("widget-body"),mg2WidgetAPI.setConfig(d.config),c("mg2WidgetAPI.getConfig()",mg2WidgetAPI.getConfig()),f.innerHTML=d.html,newsletterApplyBindings(),void a())}function g(a){throw b("onError"),c("error",a),a}var h="NewsletterCoreLauncher";b("NewsletterCoreLauncher"),d(),e()}var uiConfig={};uiConfig.System={ServerUrl:"//enewsletter.postmedia.com/",Security:{Token:"2A6C6B90-904C-4320-94F2-6941E946EC94"}},iePollyfill();var scriptMg2Widget=document.getElementById("scriptMg2Widget"),scriptSrc,serverUrl;void 0!==scriptMg2Widget&&null!==scriptMg2Widget&&(scriptSrc=scriptMg2Widget.attributes.src.value,serverUrl=getRootUrl(scriptSrc),uiConfig&&uiConfig.System.ServerUrl&&(serverUrl=uiConfig.System.ServerUrl)),function(a,b,c){function d(d,e){function f(b){a(g).each(function(){var c=a(this);this===b.target||c.has(b.target).length||c.triggerHandler(e,[b.target])})}e=e||d+c;var g=a(),h=d+"."+e+"-special-event";a.event.special[e]={setup:function(){g=g.add(this),1===g.length&&a(b).bind(h,f)},teardown:function(){g=g.not(this),0===g.length&&a(b).unbind(h)},add:function(a){var b=a.handler;a.handler=function(a,c){a.target=c,b.apply(this,arguments)}}}}a.map("click dblclick mousemove mousedown mouseup mouseover mouseout change select submit keydown keypress keyup".split(" "),function(a){d(a)}),d("focusin","focus"+c),d("focusout","blur"+c),a.addOutsideEvent=d}(jQuery,document,"outside"),function(a){"function"==typeof define&&define.amd?define(["jquery"],a):a("object"==typeof exports?require("jquery"):jQuery)}(function(a){function b(a){return h.raw?a:encodeURIComponent(a)}function c(a){return h.raw?a:decodeURIComponent(a)}function d(a){return b(h.json?JSON.stringify(a):String(a))}function e(a){0===a.indexOf('"')&&(a=a.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\"));try{return a=decodeURIComponent(a.replace(g," ")),h.json?JSON.parse(a):a}catch(b){}}function f(b,c){var d=h.raw?b:e(b);return a.isFunction(c)?c(d):d}var g=/\+/g,h=a.cookie=function(e,g,i){if(void 0!==g&&!a.isFunction(g)){if(i=a.extend({},h.defaults,i),"number"==typeof i.expires){var j=i.expires,k=i.expires=new Date;k.setTime(+k+864e5*j)}return document.cookie=[b(e),"=",d(g),i.expires?"; expires="+i.expires.toUTCString():"",i.path?"; path="+i.path:"",i.domain?"; domain="+i.domain:"",i.secure?"; secure":""].join("")}for(var l=e?void 0:{},m=document.cookie?document.cookie.split("; "):[],n=0,o=m.length;o>n;n++){var p=m[n].split("="),q=c(p.shift()),r=p.join("=");if(e&&e===q){l=f(r,g);break}e||void 0===(r=f(r))||(l[q]=r)}return l};h.defaults={},a.removeCookie=function(b,c){return void 0===a.cookie(b)?!1:(a.cookie(b,"",a.extend({},c,{expires:-1})),!a.cookie(b))}}),jQuery.base64=function(a){function b(a,b){var c=g.indexOf(a.charAt(b));if(-1===c)throw"Cannot decode base64";return c}function c(a){var c,d,e=0,g=a.length,h=[];if(a=String(a),0===g)return a;if(g%4!==0)throw"Cannot decode base64";for(a.charAt(g-1)===f&&(e=1,a.charAt(g-2)===f&&(e=2),g-=4),c=0;g>c;c+=4)d=b(a,c)<<18|b(a,c+1)<<12|b(a,c+2)<<6|b(a,c+3),h.push(String.fromCharCode(d>>16,d>>8&255,255&d));switch(e){case 1:d=b(a,c)<<18|b(a,c+1)<<12|b(a,c+2)<<6,h.push(String.fromCharCode(d>>16,d>>8&255));break;case 2:d=b(a,c)<<18|b(a,c+1)<<12,h.push(String.fromCharCode(d>>16))}return h.join("")}function d(a,b){var c=a.charCodeAt(b);if(c>255)throw"INVALID_CHARACTER_ERR: DOM Exception 5";return c}function e(a){if(1!==arguments.length)throw"SyntaxError: exactly one argument required";a=String(a);var b,c,e=[],h=a.length-a.length%3;if(0===a.length)return a;for(b=0;h>b;b+=3)c=d(a,b)<<16|d(a,b+1)<<8|d(a,b+2),e.push(g.charAt(c>>18)),e.push(g.charAt(c>>12&63)),e.push(g.charAt(c>>6&63)),e.push(g.charAt(63&c));switch(a.length-h){case 1:c=d(a,b)<<16,e.push(g.charAt(c>>18)+g.charAt(c>>12&63)+f+f);break;case 2:c=d(a,b)<<16|d(a,b+1)<<8,e.push(g.charAt(c>>18)+g.charAt(c>>12&63)+g.charAt(c>>6&63)+f)}return e.join("")}var f="=",g="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",h="1.0";return{decode:c,encode:e,VERSION:h}}(jQuery);var w$=jQuery.noConflict();w$.support.cors=!0;var wJQuery=jQuery.noConflict();wJQuery.support.cors=!0,function(){!function(a){var b=this||(0,eval)("this"),c=b.document,d=b.navigator,e=b.jQuery,f=b.JSON;!function(a){"function"==typeof require&&"object"==typeof exports&&"object"==typeof module?a(module.exports||exports):"function"==typeof define&&define.amd?define(["exports"],a):a(b.ko={}); }(function(g){function h(a,b){return null===a||typeof a in m?a===b:!1}function i(b,c){var d;return function(){d||(d=setTimeout(function(){d=a,b()},c))}}function j(a,b){var c;return function(){clearTimeout(c),c=setTimeout(a,b)}}function k(a,b,c,d){l.d[a]={init:function(a,e,f,g,h){var i,j;return l.ba(function(){var f=l.a.c(e()),g=!c!=!f,k=!j;(k||b||g!==i)&&(k&&l.ca.fa()&&(j=l.a.lb(l.e.childNodes(a),!0)),g?(k||l.e.U(a,l.a.lb(j)),l.gb(d?d(h,f):h,a)):l.e.da(a),i=g)},null,{G:a}),{controlsDescendantBindings:!0}}},l.g.aa[a]=!1,l.e.Q[a]=!0}var l="undefined"!=typeof g?g:{};l.b=function(a,b){for(var c=a.split("."),d=l,e=0;ec;c++)m[b[c]]=a});var n={propertychange:!0},o=c&&function(){for(var b=3,d=c.createElement("div"),e=d.getElementsByTagName("i");d.innerHTML="",e[0];);return b>4?b:a}();return{mb:["authenticity_token",/^__RequestVerificationToken(_.*)?$/],r:function(a,b){for(var c=0,d=a.length;d>c;c++)b(a[c],c)},l:function(a,b){if("function"==typeof Array.prototype.indexOf)return Array.prototype.indexOf.call(a,b);for(var c=0,d=a.length;d>c;c++)if(a[c]===b)return c;return-1},hb:function(a,b,c){for(var d=0,e=a.length;e>d;d++)if(b.call(c,a[d],d))return a[d];return null},ma:function(a,b){var c=l.a.l(a,b);c>0?a.splice(c,1):0===c&&a.shift()},ib:function(a){a=a||[];for(var b=[],c=0,d=a.length;d>c;c++)0>l.a.l(b,a[c])&&b.push(a[c]);return b},ya:function(a,b){a=a||[];for(var c=[],d=0,e=a.length;e>d;d++)c.push(b(a[d],d));return c},la:function(a,b){a=a||[];for(var c=[],d=0,e=a.length;e>d;d++)b(a[d],d)&&c.push(a[d]);return c},$:function(a,b){if(b instanceof Array)a.push.apply(a,b);else for(var c=0,d=b.length;d>c;c++)a.push(b[c]);return a},Y:function(a,b,c){var d=l.a.l(l.a.Sa(a),b);0>d?c&&a.push(b):c||a.splice(d,1)},na:j,extend:h,ra:i,sa:j?i:h,A:g,Oa:function(a,b){if(!a)return a;var c,d={};for(c in a)a.hasOwnProperty(c)&&(d[c]=b(a[c],c,a));return d},Fa:function(a){for(;a.firstChild;)l.removeNode(a.firstChild)},ec:function(a){a=l.a.R(a);for(var b=c.createElement("div"),d=0,e=a.length;e>d;d++)b.appendChild(l.M(a[d]));return b},lb:function(a,b){for(var c=0,d=a.length,e=[];d>c;c++){var f=a[c].cloneNode(!0);e.push(b?l.M(f):f)}return e},U:function(a,b){if(l.a.Fa(a),b)for(var c=0,d=b.length;d>c;c++)a.appendChild(b[c])},Bb:function(a,b){var c=a.nodeType?[a]:a;if(0f;f++)e.insertBefore(b[f],d);for(f=0,g=c.length;g>f;f++)l.removeNode(c[f])}},ea:function(a,b){if(a.length){for(b=8===b.nodeType&&b.parentNode||b;a.length&&a[0].parentNode!==b;)a.shift();if(1o?a.setAttribute("selected",b):a.selected=b},ta:function(b){return null===b||b===a?"":b.trim?b.trim():b.toString().replace(/^[\s\xa0]+|[\s\xa0]+$/g,"")},oc:function(a,b){for(var c=[],d=(a||"").split(b),e=0,f=d.length;f>e;e++){var g=l.a.ta(d[e]);""!==g&&c.push(g)}return c},kc:function(a,b){return a=a||"",b.length>a.length?!1:a.substring(0,b.length)===b},Sb:function(a,b){if(a===b)return!0;if(11===a.nodeType)return!1;if(b.contains)return b.contains(3===a.nodeType?a.parentNode:a);if(b.compareDocumentPosition)return 16==(16&b.compareDocumentPosition(a));for(;a&&a!=b;)a=a.parentNode;return!!a},Ea:function(a){return l.a.Sb(a,a.ownerDocument.documentElement)},eb:function(a){return!!l.a.hb(a,l.a.Ea)},B:function(a){return a&&a.tagName&&a.tagName.toLowerCase()},q:function(a,b,c){var d=o&&n[b];if(!d&&e)e(a).bind(b,c);else if(d||"function"!=typeof a.addEventListener){if("undefined"==typeof a.attachEvent)throw Error("Browser doesn't support addEventListener or attachEvent");var f=function(b){c.call(a,b)},g="on"+b;a.attachEvent(g,f),l.a.u.ja(a,function(){a.detachEvent(g,f)})}else a.addEventListener(b,c,!1)},ha:function(a,d){if(!a||!a.nodeType)throw Error("element must be a DOM node when calling triggerEvent");var f;if("input"===l.a.B(a)&&a.type&&"click"==d.toLowerCase()?(f=a.type,f="checkbox"==f||"radio"==f):f=!1,e&&!f)e(a).trigger(d);else if("function"==typeof c.createEvent){if("function"!=typeof a.dispatchEvent)throw Error("The supplied element doesn't support dispatchEvent");f=c.createEvent(m[d]||"HTMLEvents"),f.initEvent(d,!0,!0,b,0,0,0,0,0,!1,!1,!1,!1,0,a),a.dispatchEvent(f)}else if(f&&a.click)a.click();else{if("undefined"==typeof a.fireEvent)throw Error("Browser doesn't support triggering events");a.fireEvent("on"+d)}},c:function(a){return l.v(a)?a():a},Sa:function(a){return l.v(a)?a.o():a},ua:function(a,b,c){if(b){var d=/\S+/g,e=a.className.match(d)||[];l.a.r(b.match(d),function(a){l.a.Y(e,a,c)}),a.className=e.join(" ")}},Xa:function(b,c){var d=l.a.c(c);null!==d&&d!==a||(d="");var e=l.e.firstChild(b);!e||3!=e.nodeType||l.e.nextSibling(e)?l.e.U(b,[b.ownerDocument.createTextNode(d)]):e.data=d,l.a.Vb(b)},Cb:function(a,b){if(a.name=b,7>=o)try{a.mergeAttributes(c.createElement(""),!1)}catch(d){}},Vb:function(a){o>=9&&(a=1==a.nodeType?a:a.parentNode,a.style&&(a.style.zoom=a.style.zoom))},Tb:function(a){if(o){var b=a.style.width;a.style.width=0,a.style.width=b}},ic:function(a,b){a=l.a.c(a),b=l.a.c(b);for(var c=[],d=a;b>=d;d++)c.push(d);return c},R:function(a){for(var b=[],c=0,d=a.length;d>c;c++)b.push(a[c]);return b},mc:6===o,nc:7===o,oa:o,ob:function(a,b){for(var c=l.a.R(a.getElementsByTagName("input")).concat(l.a.R(a.getElementsByTagName("textarea"))),d="string"==typeof b?function(a){return a.name===b}:function(a){return b.test(a.name)},e=[],f=c.length-1;f>=0;f--)d(c[f])&&e.push(c[f]);return e},fc:function(a){return"string"==typeof a&&(a=l.a.ta(a))?f&&f.parse?f.parse(a):new Function("return "+a)():null},Ya:function(a,b,c){if(!f||!f.stringify)throw Error("Cannot find JSON.stringify(). Some browsers (e.g., IE < 8) don't support it natively, but you can overcome this by adding a script reference to json2.js, downloadable from http://www.json.org/json2.js");return f.stringify(l.a.c(a),b,c)},gc:function(a,b,d){d=d||{};var e=d.params||{},f=d.includeFields||this.mb,h=a;if("object"==typeof a&&"form"===l.a.B(a))for(var h=a.action,i=f.length-1;i>=0;i--)for(var j=l.a.ob(a,f[i]),k=j.length-1;k>=0;k--)e[j[k].name]=j[k].value;b=l.a.c(b);var m=c.createElement("form");m.style.display="none",m.action=h,m.method="post";for(var n in b)a=c.createElement("input"),a.name=n,a.value=l.a.Ya(l.a.c(b[n])),m.appendChild(a);g(e,function(a,b){var d=c.createElement("input");d.name=a,d.value=b,m.appendChild(d)}),c.body.appendChild(m),d.submitter?d.submitter(m):m.submit(),setTimeout(function(){m.parentNode.removeChild(m)},0)}}}(),l.b("utils",l.a),l.b("utils.arrayForEach",l.a.r),l.b("utils.arrayFirst",l.a.hb),l.b("utils.arrayFilter",l.a.la),l.b("utils.arrayGetDistinctValues",l.a.ib),l.b("utils.arrayIndexOf",l.a.l),l.b("utils.arrayMap",l.a.ya),l.b("utils.arrayPushAll",l.a.$),l.b("utils.arrayRemoveItem",l.a.ma),l.b("utils.extend",l.a.extend),l.b("utils.fieldsIncludedWithJsonPost",l.a.mb),l.b("utils.getFormFields",l.a.ob),l.b("utils.peekObservable",l.a.Sa),l.b("utils.postJson",l.a.gc),l.b("utils.parseJson",l.a.fc),l.b("utils.registerEventHandler",l.a.q),l.b("utils.stringifyJson",l.a.Ya),l.b("utils.range",l.a.ic),l.b("utils.toggleDomNodeCssClass",l.a.ua),l.b("utils.triggerEvent",l.a.ha),l.b("utils.unwrapObservable",l.a.c),l.b("utils.objectForEach",l.a.A),l.b("utils.addOrRemoveItem",l.a.Y),l.b("unwrap",l.a.c),Function.prototype.bind||(Function.prototype.bind=function(a){var b=this,c=Array.prototype.slice.call(arguments);return a=c.shift(),function(){return b.apply(a,c.concat(Array.prototype.slice.call(arguments)))}}),l.a.f=new function(){function b(b,f){var g=b[d];if(!g||"null"===g||!e[g]){if(!f)return a;g=b[d]="ko"+c++,e[g]={}}return e[g]}var c=0,d="__ko__"+(new Date).getTime(),e={};return{get:function(c,d){var e=b(c,!1);return e===a?a:e[d]},set:function(c,d,e){e===a&&b(c,!1)===a||(b(c,!0)[d]=e)},clear:function(a){var b=a[d];return b?(delete e[b],a[d]=null,!0):!1},L:function(){return c++ +d}}},l.b("utils.domData",l.a.f),l.b("utils.domData.clear",l.a.f.clear),l.a.u=new function(){function b(b,c){var e=l.a.f.get(b,d);return e===a&&c&&(e=[],l.a.f.set(b,d,e)),e}function c(a){var d=b(a,!1);if(d)for(var d=d.slice(0),e=0;ed;d++)c(b[d])}return a},removeNode:function(a){l.M(a),a.parentNode&&a.parentNode.removeChild(a)},cleanExternalData:function(a){e&&"function"==typeof e.cleanData&&e.cleanData([a])}}},l.M=l.a.u.M,l.removeNode=l.a.u.removeNode,l.b("cleanNode",l.M),l.b("removeNode",l.removeNode),l.b("utils.domNodeDisposal",l.a.u),l.b("utils.domNodeDisposal.addDisposeCallback",l.a.u.ja),l.b("utils.domNodeDisposal.removeDisposeCallback",l.a.u.Ab),function(){l.a.Qa=function(a){var d;if(e){if(e.parseHTML)d=e.parseHTML(a)||[];else if((d=e.clean([a]))&&d[0]){for(a=d[0];a.parentNode&&11!==a.parentNode.nodeType;)a=a.parentNode;a.parentNode&&a.parentNode.removeChild(a)}}else{var f=l.a.ta(a).toLowerCase();for(d=c.createElement("div"),f=f.match(/^<(thead|tbody|tfoot)/)&&[1,"","
"]||!f.indexOf("",""]||(!f.indexOf("",""]||[0,"",""],a="ignored
"+f[1]+a+f[2]+"
","function"==typeof b.innerShiv?d.appendChild(b.innerShiv(a)):d.innerHTML=a;f[0]--;)d=d.lastChild;d=l.a.R(d.lastChild.childNodes)}return d},l.a.Va=function(b,c){if(l.a.Fa(b),c=l.a.c(c),null!==c&&c!==a)if("string"!=typeof c&&(c=c.toString()),e)e(b).html(c);else for(var d=l.a.Qa(c),f=0;fd;d++)b(e[d],c)}var c={};return{Na:function(a){if("function"!=typeof a)throw Error("You can only pass a function to ko.memoization.memoize()");var b=(4294967296*(1+Math.random())|0).toString(16).substring(1)+(4294967296*(1+Math.random())|0).toString(16).substring(1);return c[b]=a,""},Hb:function(b,d){var e=c[b];if(e===a)throw Error("Couldn't find any memo with ID "+b+". Perhaps it's already been unmemoized.");try{return e.apply(null,d||[]),!0}finally{delete c[b]}},Ib:function(a,c){var d=[];b(a,d);for(var e=0,f=d.length;f>e;e++){var g=d[e].Rb,h=[g];c&&l.a.$(h,c),l.w.Hb(d[e].cc,h),g.nodeValue="",g.parentNode&&g.parentNode.removeChild(g)}},xb:function(a){return(a=a.match(/^\[ko_memo\:(.*?)\]$/))?a[1]:null}}}(),l.b("memoization",l.w),l.b("memoization.memoize",l.w.Na),l.b("memoization.unmemoize",l.w.Hb),l.b("memoization.parseMemoText",l.w.xb),l.b("memoization.unmemoizeDomNodeAndDescendants",l.w.Ib),l.Ga={throttle:function(a,b){a.throttleEvaluation=b;var c=null;return l.h({read:a,write:function(d){clearTimeout(c),c=setTimeout(function(){a(d)},b)}})},rateLimit:function(a,b){var c,d,e;"number"==typeof b?c=b:(c=b.timeout,d=b.method),e="notifyWhenChangesStop"==d?j:i,a.Ma(function(a){return e(a,c)})},notify:function(a,b){a.equalityComparer="always"==b?null:h}};var m={undefined:1,"boolean":1,number:1,string:1};l.b("extenders",l.Ga),l.Fb=function(a,b,c){this.target=a,this.za=b,this.Qb=c,this.sb=!1,l.s(this,"dispose",this.F)},l.Fb.prototype.F=function(){this.sb=!0,this.Qb()},l.N=function(){l.a.sa(this,l.N.fn),this.H={}};var n="change";g={V:function(a,b,c){var d=this;c=c||n;var e=new l.Fb(d,b?a.bind(b):a,function(){l.a.ma(d.H[c],e)});return d.o&&d.o(),d.H[c]||(d.H[c]=[]),d.H[c].push(e),e},notifySubscribers:function(a,b){if(b=b||n,this.qb(b))try{l.k.jb();for(var c,d=this.H[b].slice(0),e=0;c=d[e];++e)c.sb||c.za(a)}finally{l.k.end()}},Ma:function(a){var b,c,d,e=this,f=l.v(e);e.ia||(e.ia=e.notifySubscribers,e.notifySubscribers=function(a,b){b&&b!==n?"beforeChange"===b?e.bb(a):e.ia(a,b):e.cb(a)});var g=a(function(){f&&d===e&&(d=e()),b=!1,e.Ka(c,d)&&e.ia(c=d)});e.cb=function(a){b=!0,d=a,g()},e.bb=function(a){b||(c=a,e.ia(a,"beforeChange"))}},qb:function(a){return this.H[a]&&this.H[a].length},Wb:function(){var a=0;return l.a.A(this.H,function(b,c){a+=c.length}),a},Ka:function(a,b){return!this.equalityComparer||!this.equalityComparer(a,b)},extend:function(a){var b=this;return a&&l.a.A(a,function(a,c){var d=l.Ga[a];"function"==typeof d&&(b=d(b,c)||b)}),b}},l.s(g,"subscribe",g.V),l.s(g,"extend",g.extend),l.s(g,"getSubscriptionsCount",g.Wb),l.a.na&&l.a.ra(g,Function.prototype),l.N.fn=g,l.tb=function(a){return null!=a&&"function"==typeof a.V&&"function"==typeof a.notifySubscribers},l.b("subscribable",l.N),l.b("isSubscribable",l.tb),l.ca=l.k=function(){function a(a){d.push(c),c=a}function b(){c=d.pop()}var c,d=[],e=0;return{jb:a,end:b,zb:function(a){if(c){if(!l.tb(a))throw Error("Only subscribable things can act as dependencies");c.za(a,a.Kb||(a.Kb=++e))}},t:function(c,d,e){try{return a(),c.apply(d,e||[])}finally{b()}},fa:function(){return c?c.ba.fa():void 0},pa:function(){return c?c.pa:void 0}}}(),l.b("computedContext",l.ca),l.b("computedContext.getDependenciesCount",l.ca.fa),l.b("computedContext.isInitial",l.ca.pa),l.m=function(a){function b(){return 0=0;d--)c(b[d])&&(b[d]._destroy=!0);this.O()},destroyAll:function(b){return b===a?this.destroy(function(){return!0}):b?this.destroy(function(a){return 0<=l.a.l(b,a)}):[]},indexOf:function(a){var b=this();return l.a.l(b,a)},replace:function(a,b){var c=this.indexOf(a);c>=0&&(this.P(),this.o()[c]=b,this.O())}},l.a.r("pop push reverse shift sort splice unshift".split(" "),function(a){l.T.fn[a]=function(){var b=this.o();return this.P(),this.kb(b,a,arguments),b=b[a].apply(b,arguments),this.O(),b}}),l.a.r(["slice"],function(a){l.T.fn[a]=function(){var b=this();return b[a].apply(b,arguments)}}),l.a.na&&l.a.ra(l.T.fn,l.m.fn),l.b("observableArray",l.T);var p="arrayChange";l.Ga.trackArrayChanges=function(a){function b(){if(!c){c=!0;var b=a.notifySubscribers;a.notifySubscribers=function(a,c){return c&&c!==n||++e,b.apply(this,arguments)};var f=[].concat(a.o()||[]);d=null,a.V(function(b){if(b=[].concat(b||[]),a.qb(p)){var c;(!d||e>1)&&(d=l.a.Aa(f,b,{sparse:!0})),c=d,c.length&&a.notifySubscribers(c,p)}f=b,d=null,e=0})}}if(!a.kb){var c=!1,d=null,e=0,f=a.V;a.V=a.subscribe=function(a,c,d){return d===p&&b(),f.apply(this,arguments)},a.kb=function(a,b,f){function g(a,b,c){return h[h.length]={status:a,value:b,index:c}}if(c&&!e){var h=[],i=a.length,j=f.length,k=0;switch(b){case"push":k=i;case"unshift":for(b=0;j>b;b++)g("added",f[b],k+b);break;case"pop":k=i-1;case"shift":i&&g("deleted",a[k],k);break;case"splice":b=Math.min(Math.max(0,0>f[0]?i+f[0]:f[0]),i);for(var i=1===j?i:Math.min(b+(f[1]||0),i),j=b+j-2,k=Math.max(i,j),m=[],n=[],o=2;k>b;++b,++o)i>b&&n.push(g("deleted",a[b],b)),j>b&&m.push(g("added",f[o],b));l.a.nb(n,m);break;default:return}d=h}}}},l.ba=l.h=function(a,b,c){function d(){n=!0,l.a.A(u,function(a,b){b.F()}),u={},v=0,j=!1}function e(){var a=g.throttleEvaluation;a&&a>=0?(clearTimeout(w),w=setTimeout(f,a)):g.wa?g.wa():f()}function f(){if(!k&&!n){if(s&&s()){if(!m)return void t()}else m=!1;k=!0;try{var a=u,c=v;l.k.jb({za:function(b,d){n||(c&&a[d]?(u[d]=a[d],++v,delete a[d],--c):u[d]||(u[d]=b.V(e),++v))},ba:g,pa:!v}),u={},v=0;try{var d=b?o.call(b):o()}finally{l.k.end(),c&&l.a.A(a,function(a,b){b.F()}),j=!1}g.Ka(i,d)&&(g.notifySubscribers(i,"beforeChange"),i=d,g.wa&&!g.throttleEvaluation||g.notifySubscribers(i))}finally{k=!1}v||t()}}function g(){if(00}var i,j=!0,k=!1,m=!1,n=!1,o=a;if(o&&"object"==typeof o?(c=o,o=c.read):(c=c||{},o||(o=c.read)),"function"!=typeof o)throw Error("Pass a function that returns the value of the ko.computed");var p=c.write,q=c.disposeWhenNodeIsRemoved||c.G||null,r=c.disposeWhen||c.Da,s=r,t=d,u={},v=0,w=null;b||(b=c.owner),l.N.call(g),l.a.sa(g,l.h.fn),g.o=function(){return j&&!v&&f(),i},g.fa=function(){return v},g.Yb="function"==typeof c.write,g.F=function(){t()},g.ga=h;var x=g.Ma;return g.Ma=function(a){x.call(g,a),g.wa=function(){g.bb(i),j=!0,g.cb(g)}},l.s(g,"peek",g.o),l.s(g,"dispose",g.F),l.s(g,"isActive",g.ga),l.s(g,"getDependenciesCount",g.fa),q&&(m=!0,q.nodeType&&(s=function(){return!l.a.Ea(q)||r&&r()})),!0!==c.deferEvaluation&&f(),q&&h()&&q.nodeType&&(t=function(){l.a.u.Ab(q,t),d()},l.a.u.ja(q,t)),g},l.$b=function(a){return l.Ha(a,l.h)},g=l.m.hc,l.h[g]=l.m,l.h.fn={equalityComparer:h},l.h.fn[g]=l.h,l.a.na&&l.a.ra(l.h.fn,l.N.fn),l.b("dependentObservable",l.h),l.b("computed",l.h),l.b("isComputed",l.$b),function(){function b(e,f,g){if(g=g||new d,e=f(e),"object"!=typeof e||null===e||e===a||e instanceof Date||e instanceof String||e instanceof Number||e instanceof Boolean)return e;var h=e instanceof Array?[]:{};return g.save(e,h),c(e,function(c){var d=f(e[c]);switch(typeof d){case"boolean":case"number":case"string":case"function":h[c]=d;break;case"object":case"undefined":var i=g.get(d);h[c]=i!==a?i:b(d,f,g)}}),h}function c(a,b){if(a instanceof Array){for(var c=0;cb;b++)a=a();return a})},l.toJSON=function(a,b,c){return a=l.Gb(a),l.a.Ya(a,b,c)},d.prototype={save:function(a,b){var c=l.a.l(this.keys,a);c>=0?this.ab[c]=b:(this.keys.push(a),this.ab.push(b))},get:function(b){return b=l.a.l(this.keys,b),b>=0?this.ab[b]:a}}}(),l.b("toJS",l.Gb),l.b("toJSON",l.toJSON),function(){l.i={p:function(b){switch(l.a.B(b)){case"option":return!0===b.__ko__hasDomDataOptionValue__?l.a.f.get(b,l.d.options.Pa):7>=l.a.oa?b.getAttributeNode("value")&&b.getAttributeNode("value").specified?b.value:b.text:b.value;case"select":return 0<=b.selectedIndex?l.i.p(b.options[b.selectedIndex]):a;default:return b.value}},X:function(b,c,d){switch(l.a.B(b)){case"option":switch(typeof c){case"string":l.a.f.set(b,l.d.options.Pa,a),"__ko__hasDomDataOptionValue__"in b&&delete b.__ko__hasDomDataOptionValue__,b.value=c;break;default:l.a.f.set(b,l.d.options.Pa,c),b.__ko__hasDomDataOptionValue__=!0,b.value="number"==typeof c?c:""}break;case"select":""!==c&&null!==c||(c=a);for(var e,f=-1,g=0,h=b.options.length;h>g;++g)if(e=l.i.p(b.options[g]),e==c||""==e&&c===a){f=g;break}(d||f>=0||c===a&&1=i){b&&g.push(c?{key:b,value:c.join("")}:{unknown:b}),b=c=i=0;continue}}else if(58===m){if(!c)continue}else if(47===m&&k&&1"===c.createComment("test").text,g=f?/^\x3c!--\s*ko(?:\s+([\s\S]+))?\s*--\x3e$/:/^\s*ko(?:\s+([\s\S]+))?\s*$/,h=f?/^\x3c!--\s*\/ko\s*--\x3e$/:/^\s*\/ko\s*$/,i={ul:!0,ol:!0};l.e={Q:{},childNodes:function(b){return a(b)?d(b):b.childNodes},da:function(b){if(a(b)){b=l.e.childNodes(b);for(var c=0,d=b.length;d>c;c++)l.removeNode(b[c])}else l.a.Fa(b)},U:function(b,c){if(a(b)){l.e.da(b);for(var d=b.nextSibling,e=0,f=c.length;f>e;e++)d.parentNode.insertBefore(c[e],d)}else l.a.U(b,c)},yb:function(b,c){a(b)?b.parentNode.insertBefore(c,b.nextSibling):b.firstChild?b.insertBefore(c,b.firstChild):b.appendChild(c)},rb:function(b,c,d){d?a(b)?b.parentNode.insertBefore(c,d.nextSibling):d.nextSibling?b.insertBefore(c,d.nextSibling):b.appendChild(c):l.e.yb(b,c)},firstChild:function(c){return a(c)?!c.nextSibling||b(c.nextSibling)?null:c.nextSibling:c.firstChild},nextSibling:function(c){return a(c)&&(c=e(c)),c.nextSibling&&b(c.nextSibling)?null:c.nextSibling},Xb:a,lc:function(a){return(a=(f?a.text:a.nodeValue).match(g))?a[1]:null},wb:function(c){if(i[l.a.B(c)]){var d=c.firstChild;if(d)do if(1===d.nodeType){var f;f=d.firstChild;var g=null;if(f)do if(g)g.push(f);else if(a(f)){var h=e(f,!0);h?f=h:g=[f]}else b(f)&&(g=[f]);while(f=f.nextSibling);if(f=g)for(g=d.nextSibling,h=0;h=l.a.oa&&c in q?(c=q[c],e?b.removeAttribute(c):b[c]=d):e||b.setAttribute(c,d.toString()),"name"===c&&l.a.Cb(b,e?"":d.toString())})}},function(){l.d.checked={after:["value","attr"],init:function(b,c,d){function e(){return d.has("checkedValue")?l.a.c(d.get("checkedValue")):b.value}function f(){var a=b.checked,f=m?e():a;if(!l.ca.pa()&&(!i||a)){var g=l.k.t(c);j?k!==f?(a&&(l.a.Y(g,f,!0),l.a.Y(g,k,!1)),k=f):l.a.Y(g,f,a):l.g.va(g,d,"checked",f,!0)}}function g(){var a=l.a.c(c());b.checked=j?0<=l.a.l(a,e()):h?a:e()===a}var h="checkbox"==b.type,i="radio"==b.type;if(h||i){var j=h&&l.a.c(c())instanceof Array,k=j?e():a,m=i||j;i&&!b.name&&l.d.uniqueName.init(b,function(){return!0}),l.ba(f,null,{G:b}),l.a.q(b,"click",f),l.ba(g,null,{G:b})}}},l.g.W.checked=!0,l.d.checkedValue={update:function(a,b){a.value=l.a.c(b())}}}(),l.d.css={update:function(a,b){var c=l.a.c(b());"object"==typeof c?l.a.A(c,function(b,c){c=l.a.c(c),l.a.ua(a,b,c)}):(c=String(c||""),l.a.ua(a,a.__ko__cssValue,!1),a.__ko__cssValue=c,l.a.ua(a,c,!0))}},l.d.enable={update:function(a,b){var c=l.a.c(b());c&&a.disabled?a.removeAttribute("disabled"):c||a.disabled||(a.disabled=!0)}},l.d.disable={update:function(a,b){l.d.enable.update(a,function(){return!l.a.c(b())})}},l.d.event={init:function(a,b,c,d,e){var f=b()||{};l.a.A(f,function(f){"string"==typeof f&&l.a.q(a,f,function(a){var g,h=b()[f];if(h){try{var i=l.a.R(arguments);d=e.$data,i.unshift(d),g=h.apply(d,i)}finally{!0!==g&&(a.preventDefault?a.preventDefault():a.returnValue=!1)}!1===c.get(f+"Bubble")&&(a.cancelBubble=!0,a.stopPropagation&&a.stopPropagation()); }})})}},l.d.foreach={vb:function(a){return function(){var b=a(),c=l.a.Sa(b);return c&&"number"!=typeof c.length?(l.a.c(b),{foreach:c.data,as:c.as,includeDestroyed:c.includeDestroyed,afterAdd:c.afterAdd,beforeRemove:c.beforeRemove,afterRender:c.afterRender,beforeMove:c.beforeMove,afterMove:c.afterMove,templateEngine:l.K.Ja}):{foreach:b,templateEngine:l.K.Ja}}},init:function(a,b){return l.d.template.init(a,l.d.foreach.vb(b))},update:function(a,b,c,d,e){return l.d.template.update(a,l.d.foreach.vb(b),c,d,e)}},l.g.aa.foreach=!1,l.e.Q.foreach=!0,l.d.hasfocus={init:function(a,b,c){function d(d){a.__ko_hasfocusUpdating=!0;var e=a.ownerDocument;if("activeElement"in e){var f;try{f=e.activeElement}catch(g){f=e.body}d=f===a}e=b(),l.g.va(e,c,"hasfocus",d,!0),a.__ko_hasfocusLastValue=d,a.__ko_hasfocusUpdating=!1}var e=d.bind(null,!0),f=d.bind(null,!1);l.a.q(a,"focus",e),l.a.q(a,"focusin",e),l.a.q(a,"blur",f),l.a.q(a,"focusout",f)},update:function(a,b){var c=!!l.a.c(b());a.__ko_hasfocusUpdating||a.__ko_hasfocusLastValue===c||(c?a.focus():a.blur(),l.k.t(l.a.ha,null,[a,c?"focusin":"focusout"]))}},l.g.W.hasfocus=!0,l.d.hasFocus=l.d.hasfocus,l.g.W.hasFocus=!0,l.d.html={init:function(){return{controlsDescendantBindings:!0}},update:function(a,b){l.a.Va(a,b())}},k("if"),k("ifnot",!1,!0),k("with",!0,!1,function(a,b){return a.createChildContext(b)});var r={};l.d.options={init:function(a){if("select"!==l.a.B(a))throw Error("options binding applies only to SELECT elements");for(;0","#comment",e)})},Mb:function(a,b){return l.w.Na(function(c,d){var e=c.nextSibling;e&&e.nodeName.toLowerCase()===b&&l.xa(e,a,d)})}}}(),l.b("__tr_ambtns",l.Za.Mb),function(){l.n={},l.n.j=function(a){this.j=a},l.n.j.prototype.text=function(){var a=l.a.B(this.j),a="script"===a?"text":"textarea"===a?"value":"innerHTML";if(0==arguments.length)return this.j[a];var b=arguments[0];"innerHTML"===a?l.a.Va(this.j,b):this.j[a]=b};var b=l.a.f.L()+"_";l.n.j.prototype.data=function(a){return 1===arguments.length?l.a.f.get(this.j,b+a):void l.a.f.set(this.j,b+a,arguments[1])};var c=l.a.f.L();l.n.Z=function(a){this.j=a},l.n.Z.prototype=new l.n.j,l.n.Z.prototype.text=function(){if(0==arguments.length){var b=l.a.f.get(this.j,c)||{};return b.$a===a&&b.Ba&&(b.$a=b.Ba.innerHTML),b.$a}l.a.f.set(this.j,c,{$a:arguments[0]})},l.n.j.prototype.nodes=function(){return 0==arguments.length?(l.a.f.get(this.j,c)||{}).Ba:void l.a.f.set(this.j,c,{Ba:arguments[0]})},l.b("templateSources",l.n),l.b("templateSources.domElement",l.n.j),l.b("templateSources.anonymousTemplate",l.n.Z)}(),function(){function b(a,b,c){var d;for(b=l.e.nextSibling(b);a&&(d=a)!==b;)a=l.e.nextSibling(d),c(d,a)}function c(a,c){if(a.length){var d=a[0],e=a[a.length-1],f=d.parentNode,g=l.J.instance,h=g.preprocessNode;if(h){if(b(d,e,function(a,b){var c=a.previousSibling,f=h.call(g,a);f&&(a===d&&(d=f[0]||b),a===e&&(e=f[f.length-1]||c))}),a.length=0,!d)return;d===e?a.push(d):(a.push(d,e),l.a.ea(a,f))}b(d,e,function(a){1!==a.nodeType&&8!==a.nodeType||l.fb(c,a)}),b(d,e,function(a){1!==a.nodeType&&8!==a.nodeType||l.w.Ib(a,[c])}),l.a.ea(a,f)}}function d(a){return a.nodeType?a:0d)&&(g=a[e]);++e){for(f=0;h=b[f];++f)if(g.value===h.value){g.moved=h.index,h.moved=g.index,b.splice(f,1),d=f=0;break}d+=f}}},l.a.Aa=function(){function a(a,b,c,d,e){var f,g,h,i,j,k=Math.min,m=Math.max,n=[],o=a.length,p=b.length,q=p-o||1,r=o+p+1;for(f=0;o>=f;f++)for(i=h,n.push(h=[]),j=k(p,f+q),g=m(0,f-1);j>=g;g++)h[g]=g?f?a[f-1]===b[g-1]?i[g-1]:k(i[g]||r,h[g-1]||r)+1:g+1:f+1;for(k=[],m=[],q=[],f=o,g=p;f||g;)p=n[f][g]-1,g&&p===n[f][g-1]?m.push(k[k.length]={status:c,value:b[--g],index:g}):f&&p===n[f-1][g]?q.push(k[k.length]={status:d,value:a[--f],index:f}):(--g,--f,e.sparse||k.push({status:"retained",value:b[g]}));return l.a.nb(m,q,10*o),k.reverse()}return function(b,c,d){return d="boolean"==typeof d?{dontLimitMoves:d}:d||{},b=b||[],c=c||[],b.length<=c.length?a(b,c,"added","deleted",d):a(c,b,"deleted","added",d)}}(),l.b("utils.compareArrays",l.a.Aa),function(){function b(b,c,d,e,f){var g=[],h=l.h(function(){var a=c(d,f,l.a.ea(g,b))||[];0c;c++)b[c]&&l.a.r(b[c].S,function(d){a(d,c,b[c].ka)})}e=e||[],g=g||{};var k=l.a.f.get(d,c)===a,m=l.a.f.get(d,c)||[],n=l.a.ya(m,function(a){return a.ka}),o=l.a.Aa(n,e,g.dontLimitMoves),p=[],q=0,r=0,s=[],t=[];e=[];for(var u,v,w,x=[],n=[],y=0;v=o[y];y++)switch(w=v.moved,v.status){case"deleted":w===a&&(u=m[q],u.h&&u.h.F(),s.push.apply(s,l.a.ea(u.S,d)),g.beforeRemove&&(e[y]=u,t.push(u))),q++;break;case"retained":i(y,q++);break;case"added":w!==a?i(y,w):(u={ka:v.value,Ia:l.m(r++)},p.push(u),t.push(u),k||(n[y]=u))}j(g.beforeMove,x),l.a.r(s,g.beforeRemove?l.M:l.removeNode);for(var z,y=0,k=l.e.firstChild(d);u=t[y];y++){for(u.S||l.a.extend(u,b(d,f,u.ka,h,u.Ia)),q=0;o=u.S[q];k=o.nextSibling,z=o,q++)o!==k&&l.e.rb(d,o,z);!u.Zb&&h&&(h(u.ka,u.S,u.Ia),u.Zb=!0)}j(g.beforeRemove,e),j(g.afterMove,x),j(g.afterAdd,n),l.a.f.set(d,c,p)}}(),l.b("utils.setDomNodeChildrenFromArrayMapping",l.a.Ua),l.K=function(){this.allowTemplateRewriting=!1},l.K.prototype=new l.C,l.K.prototype.renderTemplateSource=function(a){var b=(9>l.a.oa?0:a.nodes)?a.nodes():null;return b?l.a.R(b.cloneNode(!0).childNodes):(a=a.text(),l.a.Qa(a))},l.K.Ja=new l.K,l.Wa(l.K.Ja),l.b("nativeTemplateEngine",l.K),function(){l.La=function(){var a=this.ac=function(){if(!e||!e.tmpl)return 0;try{if(0<=e.tmpl.tag.tmpl.open.toString().indexOf("__"))return 2}catch(a){}return 1}();this.renderTemplateSource=function(b,d,f){if(f=f||{},2>a)throw Error("Your version of jQuery.tmpl is too old. Please upgrade to jQuery.tmpl 1.0.0pre or later.");var g=b.data("precompiled");return g||(g=b.text()||"",g=e.template(null,"{{ko_with $item.koBindingContext}}"+g+"{{/ko_with}}"),b.data("precompiled",g)),b=[d.$data],d=e.extend({koBindingContext:d},f.templateOptions),d=e.tmpl(g,b,d),d.appendTo(c.createElement("div")),e.fragments={},d},this.createJavaScriptEvaluatorBlock=function(a){return"{{ko_code ((function() { return "+a+" })()) }}"},this.addTemplate=function(a,b){c.write("")},a>0&&(e.tmpl.tag.ko_code={open:"__.push($1 || '');"},e.tmpl.tag.ko_with={open:"with($1) {",close:"} "})},l.La.prototype=new l.C;var a=new l.La;0j[1]||i[1]===j[1]&&i[2]>=j[2]:!1;case"month":if(h=/^(\d{4})-(\d{2})$/,i=c.match(h),null===i)throw"Invalid value for "+a+" attribute for month input. Should look like '2000-03' http://www.w3.org/TR/html-markup/input.month.html#input.month.attrs.min";return j=e.match(h),j?b?i[1]j[1]||i[1]===j[1]&&i[2]>=j[2]:!1;case"number":case"range":return b?!isNaN(c)&&parseFloat(c)<=parseFloat(e):!isNaN(c)&&parseFloat(c)>=parseFloat(e);default:return b?e>=c:c>=e}}}function d(a,b,c){return b.validator(a(),void 0===c.params?!0:h(c.params))?!0:(a.setError(f.formatMessage(c.message||b.message,h(c.params),a)),!1)}function e(a,b,c){a.isValidating(!0);var d=function(d){var e=!1,g="";return a.__valid__()?(d.message?(e=d.isValid,g=d.message):e=d,e||(a.error(f.formatMessage(g||c.message||b.message,h(c.params),a)),a.__valid__(e)),void a.isValidating(!1)):void a.isValidating(!1)};b.validator(a(),h(c.params||!0),d)}if(void 0===typeof a)throw"Knockout is required, please ensure it is loaded before loading this validation plug-in";a.validation=b;var f=a.validation,g=a.utils,h=g.unwrapObservable,i=g.arrayForEach,j=g.extend,k={registerExtenders:!0,messagesOnModified:!0,errorsAsTitle:!0,errorsAsTitleOnModified:!1,messageTemplate:null,insertMessages:!0,parseInputAttributes:!1,writeInputAttributes:!1,decorateInputElement:!1,decorateElementOnModified:!0,errorClass:null,errorElementClass:"validationElement",errorMessageClass:"validationMessage",allowHtmlMessages:!1,grouping:{deep:!1,observable:!0,live:!1},validate:{}},l=j({},k);l.html5Attributes=["required","pattern","min","max","step"],l.html5InputTypes=["email","number","date"],l.reset=function(){j(l,k)},f.configuration=l,f.utils=function(){var a=(new Date).getTime(),b={},c="__ko_validation__";return{isArray:function(a){return a.isArray||"[object Array]"===Object.prototype.toString.call(a)},isObject:function(a){return null!==a&&"object"==typeof a},isObservableArray:function(a){return!!a&&"function"==typeof a.remove&&"function"==typeof a.removeAll&&"function"==typeof a.destroy&&"function"==typeof a.destroyAll&&"function"==typeof a.indexOf&&"function"==typeof a.replace},values:function(a){var b=[];for(var c in a)a.hasOwnProperty(c)&&b.push(a[c]);return b},getValue:function(a){return"function"==typeof a?a():a},hasAttribute:function(a,b){return null!==a.getAttribute(b)},getAttribute:function(a,b){return a.getAttribute(b)},setAttribute:function(a,b,c){return a.setAttribute(b,c)},isValidatable:function(a){return!!(a&&a.rules&&a.isValid&&a.isModified)},insertAfter:function(a,b){a.parentNode.insertBefore(b,a.nextSibling)},newId:function(){return a+=1},getConfigOptions:function(a){var b=f.utils.contextFor(a);return b||f.configuration},setDomData:function(a,d){var e=a[c];e||(a[c]=e=f.utils.newId()),b[e]=d},getDomData:function(a){var d=a[c];return d?b[d]:void 0},contextFor:function(a){switch(a.nodeType){case 1:case 8:var b=f.utils.getDomData(a);if(b)return b;if(a.parentNode)return f.utils.contextFor(a.parentNode)}},isEmptyVal:function(a){return void 0===a?!0:null===a?!0:""===a?!0:void 0},getOriginalElementTitle:function(a){var b=f.utils.getAttribute(a,"data-orig-title"),c=a.title,d=f.utils.hasAttribute(a,"data-orig-title");return d?b:c},async:function(a){window.setImmediate?window.setImmediate(a):window.setTimeout(a,0)},forEach:function(a,b){if(f.utils.isArray(a))return i(a,b);for(var c in a)a.hasOwnProperty(c)&&b(a[c],c)}}}();var m=function(){function b(a){i(a.subscriptions,function(a){a.dispose()}),a.subscriptions=[]}function c(a){a.options.deep&&(i(a.flagged,function(a){delete a.__kv_traversed}),a.flagged.length=0),a.options.live||b(a)}function d(a,d){d.validatables=[],b(d),e(a,d),c(d)}function e(b,c,d){var f=[],g=b.peek?b.peek():b;b.__kv_traversed!==!0&&(c.options.deep&&(b.__kv_traversed=!0,c.flagged.push(b)),d=void 0!==d?d:c.options.deep?1:-1,a.isObservable(b)&&(b.isValid||b.extend({validatable:!0}),c.validatables.push(b),c.options.live&&n.isObservableArray(b)&&c.subscriptions.push(b.subscribe(function(){c.graphMonitor.valueHasMutated()}))),g&&!g._destroy&&(n.isArray(g)?f=g:n.isObject(g)&&(f=n.values(g))),0!==d&&n.forEach(f,function(a){a&&!a.nodeType&&e(a,c,d+1)}))}function k(a){var b=[];return i(a,function(a){a.isValid()||b.push(a.error())}),b}var l=0,m=f.configuration,n=f.utils;return{init:function(a,b){l>0&&!b||(a=a||{},a.errorElementClass=a.errorElementClass||a.errorClass||m.errorElementClass,a.errorMessageClass=a.errorMessageClass||a.errorClass||m.errorMessageClass,j(m,a),m.registerExtenders&&f.registerExtenders(),l=1)},configure:function(a){f.init(a)},reset:f.configuration.reset,group:function(b,c){c=j(j({},m.grouping),c);var e={options:c,graphMonitor:a.observable(),flagged:[],subscriptions:[],validatables:[]},f=null;return c.observable?(d(b,e),f=a.computed(function(){return e.graphMonitor(),d(b,e),k(e.validatables)})):f=function(){return d(b,e),k(e.validatables)},f.showAllMessages=function(a){void 0===a&&(a=!0),f(),i(e.validatables,function(b){b.isModified(a)})},b.errors=f,b.isValid=function(){return 0===b.errors().length},b.isAnyMessageShown=function(){var a=!1;return f(),a=!!g.arrayFirst(e.validatables,function(a){return!a.isValid()&&a.isModified()})},f},formatMessage:function(a,b,c){return"function"==typeof a?a(b,c):a.replace(/\{0\}/gi,h(b))},addRule:function(a,b){return a.extend({validatable:!0}),a.rules.push(b),a},addAnonymousRule:function(a,b){void 0===b.message&&(b.message="Error"),b.onlyIf&&(b.condition=b.onlyIf),f.addRule(a,b)},addExtender:function(b){a.extenders[b]=function(a,c){return c&&(c.message||c.onlyIf)?f.addRule(a,{rule:b,message:c.message,params:n.isEmptyVal(c.params)?!0:c.params,condition:c.onlyIf}):f.addRule(a,{rule:b,params:c})}},registerExtenders:function(){if(m.registerExtenders)for(var b in f.rules)f.rules.hasOwnProperty(b)&&(a.extenders[b]||f.addExtender(b))},insertValidationMessage:function(a){var b=document.createElement("SPAN");return b.className=n.getConfigOptions(a).errorMessageClass,n.insertAfter(a,b),b},parseInputValidationAttributes:function(a,b){i(f.configuration.html5Attributes,function(c){if(n.hasAttribute(a,c)){var d=a.getAttribute(c)||!0;if("min"===c||"max"===c){var e=a.getAttribute("type");"undefined"!=typeof e&&e||(e="text"),d={typeAttr:e,value:d}}f.addRule(b(),{rule:c,params:d})}});var c=a.getAttribute("type");i(f.configuration.html5InputTypes,function(a){a===c&&f.addRule(b(),{rule:"date"===a?"dateISO":a,params:!0})})},writeInputValidationAttributes:function(a,b){var c=b();if(c&&c.rules){var d=c.rules();i(f.configuration.html5Attributes,function(b){var c,e=g.arrayFirst(d,function(a){return a.rule.toLowerCase()===b.toLowerCase()});e&&(c=e.params,"pattern"===e.rule&&e.params instanceof RegExp&&(c=e.params.source),a.setAttribute(b,c))}),d=null}},makeBindingHandlerValidatable:function(b){var c=a.bindingHandlers[b].init;a.bindingHandlers[b].init=function(b,d,e,f,g){return c(b,d,e,f,g),a.bindingHandlers.validationCore.init(b,d,e,f,g)}},setRules:function(b,c){var d=function(b,c){if(b&&c)for(var e in c)if(c.hasOwnProperty(e)){var g=c[e];if(b[e]){var i=b[e],j=h(i),k={},l={};for(var m in g)g.hasOwnProperty(m)&&(f.rules[m]?k[m]=g[m]:l[m]=g[m]);if(a.isObservable(i)&&i.extend(k),j&&n.isArray(j))for(var o=0;o0:!0)},message:"This field is required."},f.rules.min={validator:c("min"),message:"Please enter a value greater than or equal to {0}."},f.rules.max={validator:c("max"),message:"Please enter a value less than or equal to {0}."},f.rules.minLength={validator:function(a,b){return f.utils.isEmptyVal(a)||a.length>=b},message:"Please enter at least {0} characters."},f.rules.maxLength={validator:function(a,b){return f.utils.isEmptyVal(a)||a.length<=b},message:"Please enter no more than {0} characters."},f.rules.pattern={validator:function(a,b){return f.utils.isEmptyVal(a)||null!==a.toString().match(b)},message:"Please check this value."},f.rules.step={validator:function(a,b){if(f.utils.isEmptyVal(a)||"any"===b)return!0;var c=100*a%(100*b);return Math.abs(c)<1e-5||Math.abs(1-c)<1e-5},message:"The value must increment by {0}"},f.rules.email={validator:function(a,b){return b?f.utils.isEmptyVal(a)||b&&/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i.test(a):!0},message:"Please enter a proper email address"},f.rules.date={validator:function(a,b){return b?f.utils.isEmptyVal(a)||b&&!/Invalid|NaN/.test(new Date(a)):!0},message:"Please enter a proper date"},f.rules.dateISO={validator:function(a,b){return b?f.utils.isEmptyVal(a)||b&&/^\d{4}[\/\-]\d{1,2}[\/\-]\d{1,2}$/.test(a):!0},message:"Please enter a proper date"},f.rules.number={validator:function(a,b){return b?f.utils.isEmptyVal(a)||b&&/^-?(?:\d+|\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/.test(a):!0},message:"Please enter a number"},f.rules.digit={validator:function(a,b){return b?f.utils.isEmptyVal(a)||b&&/^\d+$/.test(a):!0},message:"Please enter a digit"},f.rules.phoneUS={validator:function(a,b){return b?f.utils.isEmptyVal(a)?!0:"string"!=typeof a?!1:(a=a.replace(/\s+/g,""),b&&a.length>9&&a.match(/^(1-?)?(\([2-9]\d{2}\)|[2-9]\d{2})-?[2-9]\d{2}-?\d{4}$/)):!0},message:"Please specify a valid phone number"},f.rules.equal={validator:function(a,b){var c=b;return a===f.utils.getValue(c)},message:"Values must equal"},f.rules.notEqual={validator:function(a,b){var c=b;return a!==f.utils.getValue(c)},message:"Please choose another value."},f.rules.unique={validator:function(a,b){var c=f.utils.getValue(b.collection),d=f.utils.getValue(b.externalValue),e=0;return a&&c?(g.arrayFilter(c,function(c){a===(b.valueAccessor?b.valueAccessor(c):c)&&e++}),(d?1:2)>e):!0},message:"Please make sure the value is unique."},function(){f.registerExtenders()}(),a.bindingHandlers.validationCore=function(){return{init:function(b,c){var d=f.utils.getConfigOptions(b),e=c();if(d.parseInputAttributes&&f.utils.async(function(){f.parseInputValidationAttributes(b,c)}),d.insertMessages&&f.utils.isValidatable(e)){var g=f.insertValidationMessage(b);d.messageTemplate?a.renderTemplate(d.messageTemplate,{field:e},null,g,"replaceNode"):a.applyBindingsToNode(g,{validationMessage:e})}d.writeInputAttributes&&f.utils.isValidatable(e)&&f.writeInputValidationAttributes(b,c),d.decorateInputElement&&f.utils.isValidatable(e)&&a.applyBindingsToNode(b,{validationElement:e})}}}(),f.makeBindingHandlerValidatable("value"),f.makeBindingHandlerValidatable("checked"),a.bindingHandlers.validationMessage={update:function(b,c){var d=c(),e=f.utils.getConfigOptions(b),i=(h(d),!1),j=!1;if(!d.isValid||!d.isModified)throw new Error("Observable is not validatable");i=d.isModified(),j=d.isValid();var k=null;(!e.messagesOnModified||i)&&(k=j?null:d.error);var l=!e.messagesOnModified||i?!j:!1,m="none"!==b.style.display;e.allowHtmlMessages?g.setHtml(b,k):a.bindingHandlers.text.update(b,function(){return k}),m&&!l?b.style.display="none":!m&&l&&(b.style.display="")}},a.bindingHandlers.validationElement={update:function(b,c,d){var e=c(),g=f.utils.getConfigOptions(b),i=(h(e),!1),j=!1;if(!e.isValid||!e.isModified)throw new Error("Observable is not validatable");i=e.isModified(),j=e.isValid();var k=function(){var a={},b=!g.decorateElementOnModified||i?!j:!1;return a[g.errorElementClass]=b,a};a.bindingHandlers.css.update(b,k,d),g.errorsAsTitle&&a.bindingHandlers.attr.update(b,function(){var a=!g.errorsAsTitleOnModified||i,c=f.utils.getOriginalElementTitle(b);return a&&!j?{title:e.error,"data-orig-title":c}:!a||j?{title:c,"data-orig-title":null}:void 0})}},a.bindingHandlers.validationOptions=function(){return{init:function(a,b){var c=h(b());if(c){var d=j({},f.configuration);j(d,c),f.utils.setDomData(a,d)}}}}(),a.extenders.validation=function(a,b){return i(f.utils.isArray(b)?b:[b],function(b){f.addAnonymousRule(a,b)}),a},a.extenders.validatable=function(b,c){if(f.utils.isObject(c)||(c={enable:c}),"enable"in c||(c.enable=!0),c.enable&&!f.utils.isValidatable(b)){var d=f.configuration.validate||{},e={throttleEvaluation:c.throttle||d.throttle};b.error=a.observable(null),b.rules=a.observableArray(),b.isValidating=a.observable(!1),b.__valid__=a.observable(!0),b.isModified=a.observable(!1),b.isValid=a.computed(b.__valid__),b.setError=function(a){b.error(a),b.__valid__(!1)},b.clearError=function(){return b.error(null),b.__valid__(!0),b};var g=b.subscribe(function(){b.isModified(!0)}),h=a.computed(j({read:function(){return b(),b.rules(),f.validateObservable(b),!0}},e));j(h,e),b._disposeValidation=function(){b.isValid.dispose(),b.rules.removeAll(),b.isModified.getSubscriptionsCount()>0&&(b.isModified._subscriptions.change=[]),b.isValidating.getSubscriptionsCount()>0&&(b.isValidating._subscriptions.change=[]),b.__valid__.getSubscriptionsCount()>0&&(b.__valid__._subscriptions.change=[]),g.dispose(),h.dispose(),delete b.rules,delete b.error,delete b.isValid,delete b.isValidating,delete b.__valid__,delete b.isModified}}else c.enable===!1&&b._disposeValidation&&b._disposeValidation();return b},f.validateObservable=function(a){for(var b,c,g=0,h=a.rules(),i=h.length;i>g;g++)if(c=h[g],!c.condition||c.condition())if(b=c.rule?f.rules[c.rule]:c,b.async||c.async)e(a,b,c);else if(!d(a,b,c))return!1;return a.clearError(),!0},f.localize=function(a){var b;for(b in a)f.rules.hasOwnProperty(b)&&(f.rules[b].message=a[b])},a.applyBindingsWithValidation=function(b,c,d){var e,g,h=arguments.length;h>2?(e=c,g=d):2>h?e=document.body:arguments[1].nodeType?e=c:g=arguments[1],f.init(),g&&f.utils.setDomData(e,g),a.applyBindings(b,c)};var n=a.applyBindings;a.applyBindings=function(a,b){f.init(),n(a,b)},a.validatedObservable=function(b){if(!f.utils.isObject(b))return a.observable(b).extend({validatable:!0});var c=a.observable(b);return c.errors=f.group(b),c.isValid=a.observable(b.isValid()),c.errors.subscribe(function(a){c.isValid(0===a.length)}),c}}),function(a){"function"==typeof require&&"object"==typeof exports&&"object"==typeof module?a(require("knockout"),exports):"function"==typeof define&&define.amd?define(["knockout","exports"],a):a(ko,ko.mapping={})}(function(a,b){function c(a,d){var e,f;for(f in d)if(d.hasOwnProperty(f)&&d[f])if(e=b.getType(a[f]), f&&a[f]&&"array"!==e&&"string"!==e)c(a[f],d[f]);else if("array"===b.getType(a[f])&&"array"===b.getType(d[f])){e=a;for(var g=f,h=a[f],i=d[f],j={},k=h.length-1;k>=0;--k)j[h[k]]=h[k];for(k=i.length-1;k>=0;--k)j[i[k]]=i[k];h=[],i=void 0;for(i in j)h.push(j[i]);e[g]=h}else a[f]=d[f]}function d(a,b){var d={};return c(d,a),c(d,b),d}function e(a,b){for(var c=d({},a),e=u.length-1;e>=0;e--){var g=u[e];c[g]&&(c[""]instanceof Object||(c[""]={}),c[""][g]=c[g],delete c[g])}return b&&(c.ignore=f(b.ignore,c.ignore),c.include=f(b.include,c.include),c.copy=f(b.copy,c.copy),c.observe=f(b.observe,c.observe)),c.ignore=f(c.ignore,x.ignore),c.include=f(c.include,x.include),c.copy=f(c.copy,x.copy),c.observe=f(c.observe,x.observe),c.mappedProperties=c.mappedProperties||{},c.copiedProperties=c.copiedProperties||{},c}function f(c,d){return"array"!==b.getType(c)&&(c="undefined"===b.getType(c)?[]:[c]),"array"!==b.getType(d)&&(d="undefined"===b.getType(d)?[]:[d]),a.utils.arrayGetDistinctValues(c.concat(d))}function g(c,e,f,i,n,o,t){var u="array"===b.getType(a.utils.unwrapObservable(e));if(o=o||"",b.isMapped(c)){var w=a.utils.unwrapObservable(c)[r];f=d(w,f)}var x=t||n,y=function(){return f[i]&&f[i].create instanceof Function},z=function(b){var c=p,d=a.dependentObservable;return a.dependentObservable=function(b,d,e){e=e||{},b&&"object"==typeof b&&(e=b);var f=e.deferEvaluation,g=!1;if(e.deferEvaluation=!0,b=new s(b,d,e),!f){var h=b,f=a.dependentObservable;a.dependentObservable=s,b=a.isWriteableObservable(h),a.dependentObservable=f,f=s({read:function(){return g||(a.utils.arrayRemoveItem(c,h),g=!0),h.apply(h,arguments)},write:b&&function(a){return h(a)},deferEvaluation:!0}),f.__DO=h,b=f,c.push(b)}return b},a.dependentObservable.fn=s.fn,a.computed=a.dependentObservable,b=a.utils.unwrapObservable(n)instanceof Array?f[i].create({data:b||e,parent:x,skip:v}):f[i].create({data:b||e,parent:x}),a.dependentObservable=d,a.computed=a.dependentObservable,b},A=function(){return f[i]&&f[i].update instanceof Function},B=function(b,c){var d={data:c||e,parent:x,target:a.utils.unwrapObservable(b)};return a.isWriteableObservable(b)&&(d.observable=b),f[i].update(d)};if(t=q.get(e))return t;if(i=i||"",u){var u=[],C=!1,D=function(a){return a};f[i]&&f[i].key&&(D=f[i].key,C=!0),a.isObservable(c)||(c=a.observableArray([]),c.mappedRemove=function(a){var b="function"==typeof a?a:function(b){return b===D(a)};return c.remove(function(a){return b(D(a))})},c.mappedRemoveAll=function(b){var d=k(b,D);return c.remove(function(b){return-1!=a.utils.arrayIndexOf(d,D(b))})},c.mappedDestroy=function(a){var b="function"==typeof a?a:function(b){return b===D(a)};return c.destroy(function(a){return b(D(a))})},c.mappedDestroyAll=function(b){var d=k(b,D);return c.destroy(function(b){return-1!=a.utils.arrayIndexOf(d,D(b))})},c.mappedIndexOf=function(b){var d=k(c(),D);return b=D(b),a.utils.arrayIndexOf(d,b)},c.mappedGet=function(a){return c()[c.mappedIndexOf(a)]},c.mappedCreate=function(b){if(-1!==c.mappedIndexOf(b))throw Error("There already is an object with the key that you specified.");var d=y()?z(b):b;return A()&&(b=B(d,b),a.isWriteableObservable(d)?d(b):d=b),c.push(d),d}),t=k(a.utils.unwrapObservable(c),D).sort(),w=k(e,D),C&&w.sort(),C=a.utils.compareArrays(t,w),t={};var E,F=a.utils.unwrapObservable(e),G={},H=!0,w=0;for(E=F.length;E>w;w++){var I=D(F[w]);if(void 0===I||I instanceof Object){H=!1;break}G[I]=F[w]}var F=[],J=0,w=0;for(E=C.length;E>w;w++){var K,I=C[w],L=o+"["+w+"]";switch(I.status){case"added":var M=H?G[I.value]:j(a.utils.unwrapObservable(e),I.value,D);K=g(void 0,M,f,i,c,L,n),y()||(K=a.utils.unwrapObservable(K)),L=h(a.utils.unwrapObservable(e),M,t),K===v?J++:F[L-J]=K,t[L]=!0;break;case"retained":M=H?G[I.value]:j(a.utils.unwrapObservable(e),I.value,D),K=j(c,I.value,D),g(K,M,f,i,c,L,n),L=h(a.utils.unwrapObservable(e),M,t),F[L]=K,t[L]=!0;break;case"deleted":K=j(c,I.value,D)}u.push({event:I.status,item:K})}c(F),f[i]&&f[i].arrayChanged&&a.utils.arrayForEach(u,function(a){f[i].arrayChanged(a.event,a.item)})}else if(m(e)){if(c=a.utils.unwrapObservable(c),!c){if(y())return C=z(),A()&&(C=B(C)),C;if(A())return B(C);c={}}if(A()&&(c=B(c)),q.save(e,c),A())return c;l(e,function(b){var d=o.length?o+"."+b:b;if(-1==a.utils.arrayIndexOf(f.ignore,d))if(-1!=a.utils.arrayIndexOf(f.copy,d))c[b]=e[b];else if("object"!=typeof e[b]&&"array"!=typeof e[b]&&0d;d++)if(!0!==c[d]&&a[d]===b)return d;return null}function i(c,d){var e;return d&&(e=d(c)),"undefined"===b.getType(e)&&(e=c),a.utils.unwrapObservable(e)}function j(b,c,d){b=a.utils.unwrapObservable(b);for(var e=0,f=b.length;f>e;e++){var g=b[e];if(i(g,d)===c)return g}throw Error("When calling ko.update*, the key '"+c+"' was not found!")}function k(b,c){return a.utils.arrayMap(a.utils.unwrapObservable(b),function(a){return c?i(a,c):a})}function l(a,c){if("array"===b.getType(a))for(var d=0;d=0?c[f]=e:(b.push(d),c.push(e))},this.get=function(d){return d=a.utils.arrayIndexOf(b,d),d>=0?c[d]:void 0}}function o(){var a={},b=function(b){var c;try{c=b}catch(d){c="$$$"}return b=a[c],void 0===b&&(b=new n,a[c]=b),b};this.save=function(a,c){b(a).save(a,c)},this.get=function(a){return b(a).get(a)}}var p,q,r="__ko_mapping__",s=a.dependentObservable,t=0,u=["create","update","key","arrayChanged"],v={},w={include:["_destroy"],ignore:[],copy:[],observe:[]},x=w;b.isMapped=function(b){return(b=a.utils.unwrapObservable(b))&&b[r]},b.fromJS=function(a){if(0==arguments.length)throw Error("When calling ko.fromJS, pass the object you want to convert.");try{t++||(p=[],q=new o);var b,c;2==arguments.length&&(arguments[1][r]?c=arguments[1]:b=arguments[1]),3==arguments.length&&(b=arguments[1],c=arguments[2]),c&&(b=d(b,c[r])),b=e(b);var f=g(c,a,b);if(c&&(f=c),!--t)for(;p.length;){var h=p.pop();h&&(h(),h.__DO.throttleEvaluation=h.throttleEvaluation)}return f[r]=d(f[r],b),f}catch(i){throw t=0,i}},b.fromJSON=function(c){var d=a.utils.parseJson(c);return arguments[0]=d,b.fromJS.apply(this,arguments)},b.updateFromJS=function(){throw Error("ko.mapping.updateFromJS, use ko.mapping.fromJS instead. Please note that the order of parameters is different!")},b.updateFromJSON=function(){throw Error("ko.mapping.updateFromJSON, use ko.mapping.fromJSON instead. Please note that the order of parameters is different!")},b.toJS=function(c,d){if(x||b.resetDefaultOptions(),0==arguments.length)throw Error("When calling ko.mapping.toJS, pass the object you want to convert.");if("array"!==b.getType(x.ignore))throw Error("ko.mapping.defaultOptions().ignore should be an array.");if("array"!==b.getType(x.include))throw Error("ko.mapping.defaultOptions().include should be an array.");if("array"!==b.getType(x.copy))throw Error("ko.mapping.defaultOptions().copy should be an array.");return d=e(d,c[r]),b.visitModel(c,function(b){return a.utils.unwrapObservable(b)},d)},b.toJSON=function(c,d){var e=b.toJS(c,d);return a.utils.stringifyJson(e)},b.defaultOptions=function(){return 0"),this.container=this.elem.parent(),void 0!=this.uncheckedLabel&&""!=this.uncheckedLabel?this.offLabel=w$("").appendTo(this.container):this.offLabel=w$("").appendTo(this.container),this.offSpan=this.offLabel.children("span"),void 0!=this.checkedLabel&&""!=this.checkedLabel?this.onLabel=w$("").appendTo(this.container):this.onLabel=w$("").appendTo(this.container),this.onSpan=this.onLabel.children("span"),this.handle=w$("
\n
\n
\n
\n
").appendTo(this.container)},a.prototype.disableTextSelection=function(){return w$.browser.msie?w$([this.handle,this.offLabel,this.onLabel,this.container]).attr("unselectable","on"):void 0},a.prototype._getDimension=function(a,b){return null!=w$.fn.actual?a.actual(b):a[b]()},a.prototype.optionallyResize=function(a){var b,c,d,e,f;return f=this.onLabel.find("span"),e=this._getDimension(f,"width"),e+=parseInt(f.css("padding-left"),10),d=this.offLabel.find("span"),c=this._getDimension(d,"width"),c+=parseInt(d.css("padding-right"),10),"container"===a?(b=e>c?e:c,b+=this._getDimension(this.handle,"width")+this.handleMargin,this.container.css({width:b})):(b=e>c?e:c,this.handle.css({width:b}))},a.prototype.onMouseDown=function(b){var c;return b.preventDefault(),this.isDisabled()?void 0:(c=b.pageX||b.originalEvent.changedTouches[0].pageX,a.currentlyClicking=this.handle,a.dragStartPosition=c,a.handleLeftOffset=parseInt(this.handle.css("left"),10)||0)},a.prototype.onDragMove=function(b,c){var d,e;if(a.currentlyClicking===this.handle)return e=(c+a.handleLeftOffset-a.dragStartPosition)/this.rightSide,0>e&&(e=0),e>1&&(e=1),d=e*this.rightSide,this.handle.css({left:d}),this.onLabel.css({width:d+this.handleRadius}),this.offSpan.css({marginRight:-d}),this.onSpan.css({marginLeft:-(1-e)*this.rightSide})},a.prototype.onDragEnd=function(b,c){var d;if(a.currentlyClicking===this.handle&&!this.isDisabled())return a.dragging?(d=(c-a.dragStartPosition)/this.rightSide,this.elem.prop("checked",d>=.5)):this.elem.prop("checked",!this.elem.prop("checked")),a.currentlyClicking=null,a.dragging=null,this.didChange()},a.prototype.refresh=function(){return this.didChange()},a.prototype.didChange=function(){var a;return"function"==typeof this.onChange&&(this.onChange(this.elem,this.elem.prop("checked")),this.elem.trigger("iphoneChange")),this.isDisabled()?(this.container.addClass(this.disabledClass),!1):(this.container.removeClass(this.disabledClass),a=this.elem.prop("checked")?this.rightSide:0,this.handle.animate({left:a},this.duration),this.onLabel.animate({width:a+this.handleRadius},this.duration),this.offSpan.animate({marginRight:-a},this.duration),this.onSpan.animate({marginLeft:a-this.rightSide},this.duration))},a.prototype.attachEvents=function(){var a,b,c;return c=this,a=function(a){return c.onGlobalMove.apply(c,arguments)},b=function(d){return c.onGlobalUp.apply(c,arguments),w$(document).unbind("mousemove touchmove",a),w$(document).unbind("mouseup touchend",b)},this.elem.change(function(){return c.refresh()}),this.container.bind("mousedown touchstart",function(d){return c.onMouseDown.apply(c,arguments),w$(document).bind("mousemove touchmove",a),w$(document).bind("mouseup touchend",b)})},a.prototype.initialPosition=function(){var a,b;return a=this._getDimension(this.container,"width"),this.offLabel.css({width:a-this.containerRadius}),b=this.containerRadius+1,w$.browser.msie&&w$.browser.version<7&&(b-=3),this.rightSide=a-this._getDimension(this.handle,"width")-b,this.elem.is(":checked")?(this.handle.css({left:this.rightSide}),this.onLabel.css({width:this.rightSide+this.handleRadius}),this.offSpan.css({marginRight:-this.rightSide})):(this.onLabel.css({width:0}),this.onSpan.css({marginLeft:-this.rightSide})),this.isDisabled()?this.container.addClass(this.disabledClass):void 0},a.prototype.onGlobalMove=function(b){var c;if(!this.isDisabled()&&a.currentlyClicking)return b.preventDefault(),c=b.pageX||b.originalEvent.changedTouches[0].pageX,!a.dragging&&Math.abs(a.dragStartPosition-c)>this.dragThreshold&&(a.dragging=!0),this.onDragMove(b,c)},a.prototype.onGlobalUp=function(b){var c;if(a.currentlyClicking)return b.preventDefault(),c=b.pageX||b.originalEvent.changedTouches[0].pageX,this.onDragEnd(b,c),!1},a.defaults={duration:200,checkedLabel:"",uncheckedLabel:"",resizeHandle:!1,resizeContainer:!1,disabledClass:"iPhoneCheckDisabled",containerClass:"iPhoneCheckContainer",labelOnClass:"iPhoneCheckLabelOn",labelOffClass:"iPhoneCheckLabelOff",handleClass:"iPhoneCheckHandle",handleCenterClass:"iPhoneCheckHandleCenter",handleRightClass:"iPhoneCheckHandleRight",dragThreshold:5,handleMargin:15,handleRadius:4,containerRadius:5,dataName:"iphoneStyle",onChange:function(){}},a}(),w$.iphoneStyle=this.iOSCheckbox=a,w$.fn.iphoneStyle=function(){var b,c,e,f,g,h,i,j,k,l,m,n;for(b=1<=arguments.length?d.call(arguments,0):[],e=null!=(k=null!=(l=b[0])?l.dataName:void 0)?k:a.defaults.dataName,m=this.filter(":checkbox"),i=0,j=m.length;j>i;i++)c=m[i],f=w$(c).data(e),null!=f?(g=b[0],h=2<=b.length?d.call(b,1):[],null!=(n=f[g])&&n.apply(f,h)):new a(c,b[0]);return this},w$.fn.iOSCheckbox=function(a){var b;return null==a&&(a={}),b=w$.extend({},a,{resizeHandle:!1,disabledClass:"iOSCheckDisabled",containerClass:"iOSCheckContainer",labelOnClass:"iOSCheckLabelOn",labelOffClass:"iOSCheckLabelOff",handleClass:"iOSCheckHandle",handleCenterClass:"iOSCheckHandleCenter",handleRightClass:"iOSCheckHandleRight",dataName:"iOSCheckbox"}),this.iphoneStyle(b)}}.call(this),function(a){"use strict";function b(a,b,c){return a.addEventListener?a.addEventListener(b,c,!1):a.attachEvent?a.attachEvent("on"+b,c):void 0}function c(a,b){var c,d;for(c=0,d=a.length;d>c;c++)if(a[c]===b)return!0;return!1}function d(a,b){var c;a.createTextRange?(c=a.createTextRange(),c.move("character",b),c.select()):a.selectionStart&&(a.focus(),a.setSelectionRange(b,b))}function e(a,b){try{return a.type=b,!0}catch(c){return!1}}a.Placeholders={Utils:{addEventListener:b,inArray:c,moveCaret:d,changeType:e}}}(this),function(a){"use strict";function b(){}function c(){try{return document.activeElement}catch(a){}}function d(a,b){var c,d,e=!!b&&a.value!==b,f=a.value===a.getAttribute(H);return(e||f)&&"true"===a.getAttribute(I)?(a.removeAttribute(I),a.value=a.value.replace(a.getAttribute(H),""),a.className=a.className.replace(G,""),d=a.getAttribute(O),parseInt(d,10)>=0&&(a.setAttribute("maxLength",d),a.removeAttribute(O)),c=a.getAttribute(J),c&&(a.type=c),!0):!1}function e(a){var b,c,d=a.getAttribute(H);return""===a.value&&d?(a.setAttribute(I,"true"),a.value=d,a.className+=" "+F,c=a.getAttribute(O),c||(a.setAttribute(O,a.maxLength),a.removeAttribute("maxLength")),b=a.getAttribute(J),b?a.type="text":"password"===a.type&&T.changeType(a,"text")&&a.setAttribute(J,"password"),!0):!1}function f(a,b){var c,d,e,f,g,h,i;if(a&&a.getAttribute(H))b(a);else for(e=a?a.getElementsByTagName("input"):p,f=a?a.getElementsByTagName("textarea"):q,c=e?e.length:0,d=f?f.length:0,i=0,h=c+d;h>i;i++)g=c>i?e[i]:f[i-c],b(g)}function g(a){f(a,d)}function h(a){f(a,e)}function i(a){return function(){r&&a.value===a.getAttribute(H)&&"true"===a.getAttribute(I)?T.moveCaret(a,0):d(a)}}function j(a){return function(){e(a)}}function k(a){return function(b){return t=a.value,"true"===a.getAttribute(I)&&t===a.getAttribute(H)&&T.inArray(D,b.keyCode)?(b.preventDefault&&b.preventDefault(),!1):void 0}}function l(a){return function(){d(a,t),""===a.value&&(a.blur(),T.moveCaret(a,0))}}function m(a){return function(){a===c()&&a.value===a.getAttribute(H)&&"true"===a.getAttribute(I)&&T.moveCaret(a,0)}}function n(a){return function(){g(a)}}function o(a){a.form&&(y=a.form,"string"==typeof y&&(y=document.getElementById(y)),y.getAttribute(K)||(T.addEventListener(y,"submit",n(y)),y.setAttribute(K,"true"))),T.addEventListener(a,"focus",i(a)),T.addEventListener(a,"blur",j(a)),r&&(T.addEventListener(a,"keydown",k(a)),T.addEventListener(a,"keyup",l(a)),T.addEventListener(a,"click",m(a))),a.setAttribute(L,"true"),a.setAttribute(H,w),(r||a!==c())&&e(a)}var p,q,r,s,t,u,v,w,x,y,z,A,B,C=["text","search","url","tel","email","password","number","textarea"],D=[27,33,34,35,36,37,38,39,40,8,46],E="#ccc",F="placeholdersjs",G=new RegExp("(?:^|\\s)"+F+"(?!\\S)"),H="data-placeholder-value",I="data-placeholder-active",J="data-placeholder-type",K="data-placeholder-submit",L="data-placeholder-bound",M="data-placeholder-focus",N="data-placeholder-live",O="data-placeholder-maxlength",P=document.createElement("input"),Q=document.getElementsByTagName("head")[0],R=document.documentElement,S=a.Placeholders,T=S.Utils;if(S.nativeSupport=void 0!==P.placeholder,!S.nativeSupport){for(p=document.getElementsByTagName("input"),q=document.getElementsByTagName("textarea"),r="false"===R.getAttribute(M),s="false"!==R.getAttribute(N),u=document.createElement("style"),u.type="text/css",v=document.createTextNode("."+F+" { color:"+E+"; }"),u.styleSheet?u.styleSheet.cssText=v.nodeValue:u.appendChild(v),Q.insertBefore(u,Q.firstChild),B=0,A=p.length+q.length;A>B;B++)z=BB;B++)z=Be;e++)c=g[e],d=c.injectorName;return d||"UnnamedInjector("+function(){var c;c=[];for(d in a)b=a[d],c.push(d);return c}().join(", ")+")"},m=function(){var e,f,g,h,i,m;return f=1<=arguments.length?v.call(arguments,0):[],f=k(f,"name"),g=[],m=function(a){var b,c,g,h;return c=e(a),b=c.controllerInstance,g=p(c),h=function(b){var e,h,i,j,k,m,n,o,p,q;for(i=g(b),q=f[i]||[],j=0,n=q.length;n>j;j++)c=q[j],c.factory&&(e=c.factory);for(k=0,o=d.length;o>k;k++)h=d[k],h.resolveFactory&&(e=h.resolveFactory(a,i,c)||e);if(!e){for(m=0,p=d.length;p>m;m++)h=d[m],h.factoryMissing&&(e=h.factoryMissing(a,i,c)||e);if(!e)throw new Error("Cannot resolve '"+i+"' AKA '"+b+"' in "+l(f))}return e.call(this)}},e=function(c){var e,g,h,i,k,l,m,n,p,q;for(e=o(a),k=e.name||j(c),h={},i=(f[k]||[]).slice(0),m=0,p=d.length;p>m;m++)l=d[m],l.processDefinition&&i.push(l.processDefinition(c,i)||{});for(n=0,q=i.length;q>n;n++)g=i[n],b.extend(!0,h,g);return h},i=t(m,{definition:e,id:h=++c,add:function(a,b){return f[a]=f[a]||[],f[a].push(b)}}),i(function(){var a,b,c,e,g,i,j;for(b={},j=[],g=0,i=d.length;i>g;g++)e=d[g],e.onCreate&&j.push(e.onCreate(function(){var b;b=[];for(c in f)a=f[c],b.push(c);return b}(),h));return j}).call(this),i},n=function(b){var c;return c=function(){var c,d;return c=1<=arguments.length?v.call(arguments,0):[],d=function(){var d,e;return d=o(a),d||q(c),e=d.injector.named(b).apply(this,c),e.apply(this,arguments)},d.andReturn=e,d}},m.require=n(),m.require.named=n,s=function(b,c){return function(){try{return a.push(b),c.apply(this,arguments)}finally{a.pop()}}},m.useCurrent=function(){var b,c,d,e,f;return b=3<=arguments.length?v.call(arguments,0,f=arguments.length-2):(f=0,[]),d=arguments[f++],e=arguments[f++],(null!=e?e.apply:void 0)&&(b=b.concat(d),d=e,e=!1),b.length&&(d=Inject.require.apply(Inject,b.concat([d]))),c=o(a),c||e||q(b),c?s(c,d):d},q=function(a){throw a?new Error("There is no current injector for: "+a.join(", ")):new Error("There is no current injector.\nYou need to call this inside an injected function or an inject.useCurrent function.")},t=function(a,c){var f,h,i;return f=!1,i=function(d){var i;return i=function(){var i,j,k,l,m;return i=2<=arguments.length?v.call(arguments,0,m=arguments.length-1):(m=0,[]),j=arguments[m++],k=b.extend(!0,{injector:h,name:d},c),j=s(k,j),l=s(k,function(){var c,d,e,h,k;if(c=1<=arguments.length?v.call(arguments,0):[],!f){k=this,h=a(k);try{e=function(){var a,b,c;for(c=[],a=0,b=i.length;b>a;a++)d=i[a],c.push(h(d));return c}()}catch(l){throw g("Error resolving for target:",k),l}return b.when.apply(b,e.concat(c)).pipe(function(){return f?void 0:j.apply(k,arguments)})}}),l.andReturn=e,l}},h=i(),h.named=i,h.destroy=function(){var a,b,e;for(b=0,e=d.length;e>b;b++)a=d[b],a.onDestroy&&a.onDestroy(c.id);return f=!0},h},e=function(a){var b;return b=this,a.apply||(a=function(a){return function(){return a}}(a)),function(){var c,d;return c=1<=arguments.length?v.call(arguments,0):[],d=b.apply(this,c),a.apply(this,[d].concat(c))}},j=function(a){var b;return null!=(b=i(a))?b.fullName:void 0},i=function(a){return(null!=a?a.Class:void 0)||(null!=a?a.constructor:void 0)},p=function(a){var b;return b=function(b){var c;return(null!=a&&null!=(c=a.inject)?c[b]:void 0)||b}},h.Inject=m,r={addDefinition:function(b){var c;return c=o(a),c||q(),c.add(b.name,b)},definition:function(b){var c;return c=o(a),c||q(),"string"==typeof b&&(b={Class:{fullName:b}}),c.definition(b)},injectorId:function(){var b;return b=o(a),b||q(),b.id}},m.plugin=function(a){return d.push(a),a.init?a.init(r):void 0},k=function(a,b){var c,d,e,f,g,h;for(f=b,b.call&&b.apply||(b=function(a){return null!=a?a[f]:void 0}),e={},g=0,h=a.length;h>g;g++)c=a[g],d=b(c),e[d]?e[d].push(c):e[d]=[c];return e},o=function(a){return null!=a?a[(null!=a?a.length:void 0)-1]:void 0}}.call(context);var widgetConstants=function(){var a=this;a.paymentMethods=[CreditCard=new PaymentMethod("Credit Card","CC","credit-card subscriptionPanelCCRadio","selected"),BankAccount=new PaymentMethod("Bank Account","BA","bank-account subscriptionPanelACHRadio","selected"),BillMe=new PaymentMethod("Bill Me","BL","bill-me subscriptionPanelBilledRadio","selected")],a.states=[{value:"AL",text:"AL"},{value:"AK",text:"AK"},{value:"AR",text:"AR"},{value:"AZ",text:"AZ"},{value:"CA",text:"CA"},{value:"CO",text:"CO"},{value:"CT",text:"CT"},{value:"DE",text:"DE"},{value:"DC",text:"DC"},{value:"FL",text:"FL"},{value:"GA",text:"GA"},{value:"HI",text:"HI"},{value:"ID",text:"ID"},{value:"IL",text:"IL"},{value:"IN",text:"IN"},{value:"IA",text:"IA"},{value:"KS",text:"KS"},{value:"KY",text:"KY"},{value:"LA",text:"LA"},{value:"ME",text:"ME"},{value:"MD",text:"MD"},{value:"MA",text:"MA"},{value:"MI",text:"MI"},{value:"MN",text:"MN"},{value:"MS",text:"MS"},{value:"MO",text:"MO"},{value:"MT",text:"MT"},{value:"NE",text:"NE"},{value:"NV",text:"NV"},{value:"NH",text:"NH"},{value:"NJ",text:"NJ"},{value:"NM",text:"NM"},{value:"NY",text:"NY"},{value:"NC",text:"NC"},{value:"ND",text:"ND"},{value:"OH",text:"OH"},{value:"OK",text:"OK"},{value:"OR",text:"OR"},{value:"PA",text:"PA"},{value:"RI",text:"RI"},{value:"SC",text:"SC"},{value:"SD",text:"SD"},{value:"TN",text:"TN"},{value:"TX",text:"TX"},{value:"UT",text:"UT"},{value:"VT",text:"VT"},{value:"VA",text:"VA"},{value:"WA",text:"WA"},{value:"WV",text:"WV"},{value:"WI",text:"WI"},{value:"WY",text:"WY"}],a.CanadianProvinces=[{value:"AB",text:"Alberta"},{value:"BC",text:"British Columbia"},{value:"MB",text:"Manitoba"},{value:"NB",text:"New Brunswick"},{value:"NL",text:"Newfoundland and Labrador"},{value:"NT",text:"Northwest Territories"},{value:"NS",text:"Nova Scotia"},{value:"NU",text:"Nunavut"},{value:"ON",text:"Ontario"},{value:"PE",text:"Prince Edward Island"},{value:"QC",text:"Quebec"},{value:"SK",text:"Saskatchewan"},{value:"YT",text:"Yukon"},{value:"OT",text:"Other"}],a.expirationMonths=[{text:"01",value:"01"},{text:"02",value:"02"},{text:"03",value:"03"},{text:"04",value:"04"},{text:"05",value:"05"},{text:"06",value:"06"},{text:"07",value:"07"},{text:"08",value:"08"},{text:"09",value:"09"},{text:"10",value:"10"},{text:"11",value:"11"},{text:"12",value:"12"}],a.expirationMonthsFullText=[{text:"01 - Jan",value:"01"},{text:"02 - Feb",value:"02"},{text:"03 - Mar",value:"03"},{text:"04 - Apr",value:"04"},{text:"05 - May",value:"05"},{text:"06 - Jun",value:"06"},{text:"07 - Jul",value:"07"},{text:"08 - Aug",value:"08"},{text:"09 - Sep",value:"09"},{text:"10 - Oct",value:"10"},{text:"11 - Nov",value:"11"},{text:"12 - Dec",value:"12"}],a.expirationYears=[],a.graduationYears=[];var b=(new Date).getFullYear();a.expirationYears.push(b);for(var c=1;50>c;c++){var d=parseInt(b)+c;a.expirationYears.push(d)}for(a.birthMonths=[{text:"January",value:"01"},{text:"February",value:"02"},{text:"March",value:"03"},{text:"April",value:"04"},{text:"May",value:"05"},{text:"June",value:"06"},{text:"July",value:"07"},{text:"August",value:"08"},{text:"September",value:"09"},{text:"October",value:"10"},{text:"November",value:"11"},{text:"December",value:"12"}],a.birthYears=[],c=0;100>c;c++){var e=parseInt(b)-c;a.birthYears.push(e)}for(a.birthDays=[],c=1;31>=c;c++)a.birthDays.push(c);a.genders=[{value:"M",text:"Male"},{value:"F",text:"Female"}],a.graduationYears.push(b);for(var f=1;6>f;f++)a.graduationYears.push(parseInt(b)+f);a.userRole={NonSubscriber:"NonSubscriber",Subscriber:"Subscriber",PremiumSubscriber:"PremiumSubscriber",PrintSubscriber:"PrintSubscriber",StoppedSubscriber:"StoppedSubscriber"},a.newsletterFlow={open:1,unsubscribe:2,link:3,profileChange:4},a.newsletterListMode={tabs:1,list:2},a.newsletterViewStep={email:1,profile:2,newsletters:3,successMessage:4,errorMessage:5,unsubscribeConfirmation:6}},wConstants=new widgetConstants,jQueryLog=!1;"undefined"==typeof console&&(jQueryLog&&w$("BODY").append("
--------------------------------------------------------------
"),console={log:function(a){jQueryLog&&w$("BODY").append("Log: "+a+"
")},info:function(a,b){jQueryLog&&w$("BODY").append("Info: "+a+"-"+b+"
")},debug:function(a){jQueryLog&&w$("BODY").append("Debug: "+a+"
")}}),"undefined"==typeof console.log&&(console.log=function(){}),"undefined"==typeof console.info&&(jQueryLog&&(console.info=function(a,b){w$("BODY").append("Info: "+a+"-"+b+"
")}),jQueryLog||(console.info=function(){})),"undefined"==typeof console.debug&&(jQueryLog&&(console.debug=function(a){w$("BODY").append("Debug: "+a+"
")}),jQueryLog||(console.debug=function(){})),Array.isArray||(Array.isArray=function(a){return"[object Array]"===Object.prototype.toString.call(a)}),Array.prototype.forEach||(Array.prototype.forEach=function(a,b){var c,d;if(null===this)throw new TypeError(" this is null or not defined");var e=Object(this),f=e.length>>>0;if("function"!=typeof a)throw new TypeError(a+" is not a function");for(arguments.length>1&&(c=b),d=0;f>d;){var g;d in e&&(g=e[d],a.call(c,g,d,e)),d++}}),Array.prototype.filter||(Array.prototype.filter=function(a){"use strict";if(void 0===this||null===this)throw new TypeError;var b=Object(this),c=b.length>>>0;if("function"!=typeof a)throw new TypeError;for(var d=[],e=arguments.length>=2?arguments[1]:void 0,f=0;c>f;f++)if(f in b){var g=b[f];a.call(e,g,f,b)&&d.push(g)}return d}),Array.prototype.some||(Array.prototype.some=function(a){"use strict";if(null===this)throw new TypeError("Array.prototype.some called on null or undefined");if("function"!=typeof a)throw new TypeError;for(var b=Object(this),c=b.length>>>0,d=arguments.length>=2?arguments[1]:void 0,e=0;c>e;e++)if(e in b&&a.call(d,b[e],e,b))return!0;return!1}),Object.keys||(Object.keys=function(){"use strict";var a=Object.prototype.hasOwnProperty,b=!{toString:null}.propertyIsEnumerable("toString"),c=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],d=c.length;return function(e){if("object"!=typeof e&&("function"!=typeof e||null===e))throw new TypeError("Object.keys called on non-object");var f,g,h=[];for(f in e)a.call(e,f)&&h.push(f);if(b)for(g=0;d>g;g++)a.call(e,c[g])&&h.push(c[g]);return h}}()),Number.prototype.padLeft||(Number.prototype.padLeft=function(a,b){return Array(a-String(this).length+1).join(b||"0")+this});var stackTrace=function(){wUtils.log("StackTrace");var a=new Error;return a.stack},errorHandler=function(a,b,c,d,e){var f=void 0!==e&&null!==e?e.stack:"",g="(!!!) Critical Error (!!!): 'ErrorMsg': "+a+" - 'Url': "+b+" - 'Line Number': "+c+" 'Column': "+d+" 'StackTrace': "+f;wUtils.log(g)},isNullOrEmpty=function(a){return"undefined"==typeof a?!0:void 0===a?!0:null===a?!0:"undefined"==a?!0:"null"==a?!0:""===a},isNotNullOrEmpty=function(a){return!isNullOrEmpty(a)},isNotNumeric=function(a){return isNaN(a)},isNumeric=function(a){return!isNotNumeric(a)},isMobile=function(){return/android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini/i.test(navigator.userAgent.toLowerCase())},getQueryVariable=function(a){for(var b=((I11C || I10C).PreLocationContextProxy)(window).locat1on.search.substring(1),c=b.split("&"),d=0;d-1?"&":"?";return a+d+b+"="+c},openSecurePayment=function(a,b){return wUtils.log("------- openSecurePayment"),wUtils.log("securePaymentURL: "+a),wUtils.log("callback: "+b),paymentOpenInNewTab(a,b)},paymentOpenInNewTab=function(a,b){wUtils.log("------- paymentOpenInNewTab");var c=null;return wUtils.log("create WINDOW"),c=window.open(a,"PayPanel","scrollbars=1,locat1on=no,status=no,height=640,width=1000"),void 0===c&&alert("REMOVE the popup bloker"),b&&(c.onload=function(){c.paymentSuccess=b}),c},scrollToId=function(a){var b=$("#"+a);$(b).length>0&&$("html, body").animate({scrollTop:$(b).offset().top},0)},scrollParentToChildInnerId=function(a,b){var c=$("."+a),d=$("#"+b);$(d).length>0&&$(c).length>0&&$(c).animate({scrollTop:$(d).position().top},300)},scrollToId_href=function(a){var b=$("#"+a);$(b).length>0&&$("html, body").animate({scrollTop:$(b).offset().top},0)},scrollToId_href_Firefox=function(a){var b=$("#"+a);$(b).length>0&&$("html, body").animate({scrollTop:$(b).offset().top},0)},topOffset="";w$(window).on("scroll",function(){topOffset=w$(this).scrollTop()});var scrollToTopAnimate=function(){topOffset>100&&w$("html body").animate({scrollTop:0},2e3)},scrollToIdAnimate=function(a){topOffset>100&&w$("html body").animate({scrollTop:w$("#"+a).offset().top},2e3)},scrollToIdAnimateTO=function(a){setTimeout(function(){scrollToIdAnimate(a)},0)},findPositionByElementId=function(a){var b=0;if(a.offsetParent){do b+=a.offsetTop;while(a==a.offsetParent);return[b]}},isNotValid=function(a){return void 0===a?!1:void 0===a.isValid?!1:!a.isValid()},isModified=function(a){return void 0===a?!1:a.isModified()},notValidAndModified=function(a){return isNotValid(a)&&isModified(a)},wUtils={};wUtils.jQuery=w$,wUtils.isNotNumeric=function(a){return isNaN(a)},wUtils.isNumeric=function(a){return!isNotNumeric(a)},wUtils.isMobile=isMobile,wUtils.isNotNullOrEmpty=isNotNullOrEmpty,wUtils.isNullOrEmpty=isNullOrEmpty,wUtils.scrollToId=scrollToId_href_Firefox,wUtils.isValidZipCode=isValidZipCode,wUtils.getPropertyElementByKey=getPropertyElementByKey,wUtils.IE=function(){"use strict";var a,b,c,d,e;return b=!1,d={5.5:"5.5",5.6:"6",5.7:"7",5.8:"8",9:"9",10:"10"},e=new Function("/*@cc_on return @_jscript_version; @*/")(),void 0!==e&&(b=!0,c=d[e]),a={isTheBrowser:b,actualVersion:c}}(),"undefined"==typeof debugMode&&(debugMode=!0),"undefined"==typeof infoMode&&(infoMode=!0),"undefined"==typeof stackMode&&(stackMode=!1),wUtils.logHistory=[],wUtils.log=function(a){debugMode&&(console.log(a),stackMode&&console.log((new Error).stack),wUtils.logHistory.push(arguments))},wUtils.debug=function(a){debugMode&&(wUtils.IE.isTheBrowser?console.log("- Debug - "+a):console.debug(a),stackMode&&console.log((new Error).stack),wUtils.logHistory.push(arguments))},wUtils.info=function(a,b){infoMode&&(wUtils.IE.isTheBrowser?console.log("- Info - name: "+a+" - value: "+b):console.info(a,b),stackMode&&console.log((new Error).stack),wUtils.logHistory.push(arguments))},wUtils.removeSpaces=function(a){if(void 0!==a&&null!==a){var b=new RegExp(/\s/);return b.test(a)&&(a=a.split(" ").join("")),a}},wUtils.filterNumbers=function(a){if(void 0!==a&&null!==a){var b=/[^0-9]+/g;return a.replace(b,"")}},wUtils.filterNumbersAndSpaces=function(a){if(void 0!==a&&null!==a){var b=/[^0-9 ]+/g;return a.replace(b,"")}},wUtils.filterAlphanumeric=function(a){if(void 0!==a&&null!==a){var b=/[^0-9a-zA-Z\#\-\. ]+/g;return a.replace(b,"")}},wUtils.filterOnlyAlphanumeric=function(a){if(void 0!==a&&null!==a){var b=/[^0-9a-zA-Z\s]+/g;return a.replace(b,"")}},wUtils.numberWithSpaces=function(a){return wUtils.log("--- wUtils.numberWithSpaces"),a=wUtils.filterNumbers(a),wUtils.log("removeInvalidCharacters(x): "+a),a.length>9&&(a=a.substring(0,9)),wUtils.log(a.length),wUtils.info("segment 1",a.substring(0,3)),wUtils.info("segment 2",a.substring(3,6)),wUtils.info("segment 3",a.substring(6,a.length)),a.length>3&&a.length<=6?result=a.substring(0,3)+" "+a.substring(3,6):a.length>=6?result=a.substring(0,3)+" "+a.substring(3,6)+" "+a.substring(6,a.length):result=a,wUtils.info("result",result),result}.bind(wUtils),wUtils.formatCreditCard=function(a,b){function c(a){var b=a.substring(0,4),c=a.substring(4,8),d=a.substring(8,12),e=a.substring(12,16);wUtils.info("segment 1",b),wUtils.info("segment 2",c),wUtils.info("segment 3",d),wUtils.info("segment 4",e);var f=b+" "+c+" "+d+" "+e;return f=f.trim()}function d(a){var b=a.substring(0,4),c=a.substring(4,10),d=a.substring(10,15),e=b+" "+c+" "+d;return e=e.trim()}wUtils.log("wUtils.formatCreditCard"),wUtils.info("x",a),wUtils.info("ccType",b),a=wUtils.filterNumbers(a),wUtils.log("removeInvalidCharacters(x): "+a),wUtils.log(a.length);var e;return e="ae"==b?d(a):c(a),wUtils.info("result",e),e},wUtils.formatPhoneNumber=function(a){wUtils.log("wUtils.formatPhoneNumber"),wUtils.info("x",a),a=wUtils.filterNumbers(a),wUtils.log("removeInvalidCharacters(x): "+a),wUtils.log(a.length);var b=a.substring(0,3),c=a.substring(3,6),d=a.substring(6,10),e=b+(c?"-"+c:"")+(d?"-"+d:"");return wUtils.info("result",e),e},wUtils.observableSubscribeFilterNumberAndSpaces=function(a){if(wUtils.log("--- wUtils.onSubscribeFilterNumberAndSpaces"),"string"==typeof a){" "===a&&(a=""),wUtils.log("val"+a);var b=wUtils.filterNumbersAndSpaces(a);wUtils.log("newVal"+b),this(b),wUtils.placeholdersTimeout()}},wUtils.observableSubscribeFilterNumber=function(a){if(wUtils.log("--- wUtils.observableSubscribeFilterNumber"),"string"==typeof a){" "===a&&(a=""),wUtils.log("val"+a);var b=wUtils.filterNumbers(a);wUtils.log("newVal"+b),this(b),wUtils.placeholdersTimeout()}},wUtils.observableSubscribeFilterAlphanumeric=function(a){if(wUtils.log("--- wUtils.observableSubscribeFilterAlphanumeric"),"string"==typeof a){" "===a&&(a=""),wUtils.info("val",a);var b=wUtils.filterAlphanumeric(a);this(b),wUtils.info("newVal",b),wUtils.placeholdersTimeout()}},wUtils.observableSubscribeFilterOnlyAlphanumeric=function(a){if(wUtils.log("--- wUtils.observableSubscribeFilterOnlyAlphanumeric"),"string"==typeof a){" "===a&&(a=""),wUtils.info("val",a);var b=wUtils.filterOnlyAlphanumeric(a);this(b),wUtils.info("newVal",b),wUtils.placeholdersTimeout()}},wUtils.placeholdersTimeout=function(){setTimeout(function(){Placeholders.enable()},0)},wUtils.stringIsCompleted=function(){var a=this();return isNullOrEmpty(a)?!1:" "!==a},wUtils.addIsCompleted=function(a,b){void 0===b&&(b=wUtils.stringIsCompleted),a.isCompleted=ko.computed(b,a),wUtils.addHasBeenCompleted(a)},wUtils.addHasBeenCompleted=function(a){a.hasBeenCompleted=ko.observable(!1),a.isCompleted.subscribe(function(a){a===!0&&this(!0)},a.hasBeenCompleted)},wUtils.addTyping=function(a){a.typing=ko.observable(!1),a.subscribe(function(){this.typing(!0)},a),a.hasFocus.subscribe(function(a){a===!1&&this.typing(!1)},a)},wUtils.getLast4Digits=function(a){if(isNotNullOrEmpty(a)){var b=wUtils.removeSpaces(a.toString());return b.substr(b.length-4)}return null},wUtils.getTestSegmentByIndex=function(a,b){if(""!==a&&void 0!==a){var c=a.split("|").filter(function(a){return""!==a});if(!(b>c.length))return void 0===b?1===c.lenght?a.replace("|",""):c[0]:c[b]}},wUtils.creditCardLuhnCheck=function(a){if(/[^0-9-\s]+/.test(a))return!1;var b=0,c=0,d=!1;a=a.replace(/\D/g,"");for(var e=a.length-1;e>=0;e--){var f=a.charAt(e);c=parseInt(f,10),d&&(c*=2)>9&&(c-=9),b+=c,d=!d}return b%10===0},wUtils.Base64={_keyStr:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",encode:function(a){var b,c,d,e,f,g,h,i="",j=0;for(a=wUtils.Base64._utf8_encode(a);j>2,f=(3&b)<<4|c>>4,g=(15&c)<<2|d>>6,h=63&d,isNaN(c)?g=h=64:isNaN(d)&&(h=64),i=i+this._keyStr.charAt(e)+this._keyStr.charAt(f)+this._keyStr.charAt(g)+this._keyStr.charAt(h);return i},decode:function(a){var b,c,d,e,f,g,h,i="",j=0;for(a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");j>4,c=(15&f)<<4|g>>2,d=(3&g)<<6|h,i+=String.fromCharCode(b),64!=g&&(i+=String.fromCharCode(c)),64!=h&&(i+=String.fromCharCode(d));return i=wUtils.Base64._utf8_decode(i)},_utf8_encode:function(a){a=a.replace(/\r\n/g,"\n");for(var b="",c=0;cd?b+=String.fromCharCode(d):d>127&&2048>d?(b+=String.fromCharCode(d>>6|192),b+=String.fromCharCode(63&d|128)):(b+=String.fromCharCode(d>>12|224),b+=String.fromCharCode(d>>6&63|128),b+=String.fromCharCode(63&d|128))}return b},_utf8_decode:function(a){for(var b="",c=0,d=0,e=0;cd?(b+=String.fromCharCode(d),c++):d>191&&224>d?(e=a.charCodeAt(c+1),b+=String.fromCharCode((31&d)<<6|63&e),c+=2):(e=a.charCodeAt(c+1),c3=a.charCodeAt(c+2),b+=String.fromCharCode((15&d)<<12|(63&e)<<6|63&c3),c+=3);return b}},wUtils.comparerAlwaysFalse=function(){return wUtils.log("comparerAlwaysFalse"),!1},wUtils.IE.isTheBrowser&&(console={log:function(a){},info:function(a,b){},debug:function(a){}});var CookieHandler=function(){"use strict";var a=this,b=(injector("jquery","utils",function(b,c){a.$=b,a.utils=c})(),"CookieHandler"),c=function(c){a.utils.log("--- "+b+" --- '"+c+"' --- ")},d=function(b,c){a.utils.info("--- "+b+" --- '"+b+"' --- ",c)},e=function(b){return c("read"),d("cookieName",b),a.$.cookie(b)};return{read:e}};EmptyCreateRegistration.prototype.verifyEmail=function(a){var b={isEmailAvailable:!0};return b},EmptyCreateRegistration.prototype.createRegistration=function(a){var b={success:!1,errors:[]};a(b)},EmptyCreateRegistration.prototype.isValid=function(){return log("EmptyCreateRegistration.prototype.isValid"),!0},EmptyCreateRegistration.prototype.cleanCustomerRegistrationId=function(){wUtils.log("EmptyCreateRegistration.prototype.cleanCustomerRegistrationId"),this.customerRegistrationId(void 0)};var EmptyUserService=function(){"use strict";var a=this,b=(injector("utils",function(b){a.utils=b})(),"EmptyUserService"),c=function(c){a.utils.log("--- "+b+" --- '"+c+"' --- ")},d=function(){return c("isLogged - NOT IMPLEMENTED"),!1},e=function(a){return c("isUserPresent - NOT IMPLEMENTED"),!1};return{isUserPresent:e,isLogged:d}},TaxesService=function(){"use strict";var a=this,b=(injector("utils","jquery",function(b,c){a.utils=b,a.$=c})(),function(b,c,d){var e=0,f=a.$.Deferred();return f.resolve(e),f.promise()});return{getTaxesbyOfferAndAddress:b}},UpsellService=function(){"use strict";var a=this,b=(injector("utils","jquery",function(b,c){a.utils=b,a.$=c})(),function(b,c,d,e){a.$.get(d+"/getUpsellOffer/"+b+"/"+c,e)});return{getUpsellOffer:b}},UrlHandler=function(){"use strict";var a,b=this,c=(injector("utils",function(a){b.utils=a})(),"UrlHandler"),d=function(a){b.utils.log("--- "+c+" --- '"+a+"' --- ")},e=function(a,c){b.utils.info("--- "+a+" --- '"+a+"' --- ",c)},f=function(a){d("setLocation"),e("location",a),((I11C || I10C).PreLocationContextProxy)(b).locat1on=a},g=function(b){return d("isInUrl"),e("queryString",a),h(b)},h=function(a){d("getParameterByName"),e("name",a),a=a.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]");var c=new RegExp("[\\?&]"+a+"=([^&#]*)"),f=c.exec(((I11C || I10C).PreLocationContextProxy)(b).locat1on.search);return null===f?"":decodeURIComponent(f[1].replace(/\+/g," "))};return{setLocation:f,isInUrl:g}},Business=function(){"use strict";var a=this,b=(injector("utils","userService","logger","taxesService","upsellService","validateAddressService","offerService",function(b,c,d,e,f,g,h){a=d.makeLogeabble(a,"Business",b),a.userService=c,a.utils=b,a.taxesService=e,a.upsellService=f,a.validateAddressService=g,a.offerService=h})(),function(b){if(a.log("showDigitalAccess"),!b)throw new Error("subscription is required !");return!a.userService.isUserPresent(b)});return{showDigitalAccess:b,getTaxesbyOfferAndAddress:a.taxesService.getTaxesbyOfferAndAddress,getUpsellOffer:a.upsellService.getUpsellOffer,getOffers:a.offerService.getOffers,isValidAddress:a.validateAddressService.isValidAddress,cleanCache:a.validateAddressService.cleanCache,isZipDeliverable:a.offerService.isZipDeliverable}};PaymentURLGeneratorPaymentNonSubscriber.prototype=new PaymentURLGeneratorPaymentBase,PaymentURLGeneratorPaymentNonSubscriber.prototype.validateParams=function(){wUtils.log("--- PaymentURLGeneratorPaymentNonSubscriber.validateParams");var a=this.params,b=[];return isNullOrEmpty(a)&&b.push("params is required"),isNullOrEmpty(a.promotionId)&&b.push("params.promotionId is required"),isNullOrEmpty(a.planId)&&b.push("params.planId is required"),isNullOrEmpty(a.zipCode)&&b.push("params.zipCode is required"),this.isEncryptedMode()?isNullOrEmpty(a.encryptedConsumerId)&&b.push("params.encryptedConsumerId is required"):(isNullOrEmpty(a.consumerId)&&b.push("params.consumerId is required"),isNullOrEmpty(a.email)&&b.push("params.email is required")),wUtils.info("errors",b),b},PaymentURLGeneratorPaymentNonSubscriber.prototype.getURLByConsumerIdEmail=function(){wUtils.log("--- PaymentURLGeneratorPaymentNonSubscriber.getURLByConsumerIdEmail");var a=this.params,b=w$.base64.encode(a.promotionId)+"/"+w$.base64.encode(a.planId)+"/"+w$.base64.encode(a.zipCode)+"/"+w$.base64.encode(a.consumerId)+"/"+w$.base64.encode(a.email),c=this.serverUrl+"/"+this.urlAction+"/"+b;return c},PaymentURLGeneratorPaymentNonSubscriber.prototype.getURLByEncryptedConsumerId=function(){wUtils.log("--- PaymentURLGeneratorPaymentNonSubscriber.getURLByEncryptedConsumerId");var a=this.params,b=w$.base64.encode(a.promotionId)+"/"+w$.base64.encode(a.planId)+"/"+w$.base64.encode(a.zipCode)+"/"+w$.base64.encode(a.encryptedConsumerId),c=this.serverUrl+"/"+this.urlAction+"ByECRID/"+b;return c},PaymentURLGeneratorPaymentPremium.prototype=new PaymentURLGeneratorPaymentBase,PaymentURLGeneratorPaymentPremium.prototype.validateParams=function(){wUtils.log("--- PaymentURLGeneratorPaymentPremium.validateParams");var a=this.params,b=[];return isNullOrEmpty(a)&&b.push("params is required"),isNullOrEmpty(a.planDescription)&&b.push("params.planDescription is required"),isNullOrEmpty(a.zipCode)&&b.push("params.zipCode is required"),isNullOrEmpty(a.subscriberMasterId)&&b.push("params.subscriberMasterId is required"),this.isEncryptedMode()?isNullOrEmpty(a.encryptedConsumerId)&&b.push("params.encryptedConsumerId is required"):(isNullOrEmpty(a.consumerId)&&b.push("params.consumerId is required"),isNullOrEmpty(a.email)&&b.push("params.email is required")),wUtils.info("errors",b),b},PaymentURLGeneratorPaymentPremium.prototype.getURLByConsumerIdEmail=function(){wUtils.log("--- PaymentURLGeneratorPaymentPremium.getURLByConsumerIdEmail");var a=this.params,b=w$.base64.encode(a.planDescription)+"/"+w$.base64.encode(a.zipCode)+"/"+w$.base64.encode(a.email)+"/"+w$.base64.encode(a.consumerId)+"/"+w$.base64.encode(a.subscriberMasterId),c=this.serverUrl+"/"+this.urlAction+"/"+b;return c},PaymentURLGeneratorPaymentPremium.prototype.getURLByEncryptedConsumerId=function(){wUtils.log("--- PaymentURLGeneratorPaymentPremium.getURLByEncryptedConsumerId");var a=this.params,b=w$.base64.encode(a.planDescription)+"/"+w$.base64.encode(a.zipCode)+"/"+w$.base64.encode(a.encryptedConsumerId)+"/"+w$.base64.encode(a.subscriberMasterId),c=this.serverUrl+"/"+this.urlAction+"ByECRID/"+b;return c},PaymentURLGeneratorPaymentStopped.prototype=new PaymentURLGeneratorPaymentUpgrade,PaymentURLGeneratorPaymentUpgrade.prototype=new PaymentURLGeneratorPaymentBase,PaymentURLGeneratorPaymentUpgrade.prototype.validateParams=function(){wUtils.log("--- PaymentURLGeneratorPaymentUpgrade.validateParams");var a=this.params,b=[];return isNullOrEmpty(a)&&b.push("params is required"),isNullOrEmpty(a.promotionId)&&b.push("params.promotionId is required"),isNullOrEmpty(a.planId)&&b.push("params.planId is required"),isNullOrEmpty(a.smartOfferSegment)&&b.push("params.smartOfferSegment is required"),isNullOrEmpty(a.zipCode)&&b.push("params.zipCode is required"),isNullOrEmpty(a.subscriberMasterId)&&b.push("params.subscriberMasterId is required"),this.isEncryptedMode()?isNullOrEmpty(a.encryptedConsumerId)&&b.push("params.encryptedConsumerId is required"):(isNullOrEmpty(a.encryptedConsumerId)&&b.push("params.encryptedConsumerId is required"),isNullOrEmpty(a.consumerId)&&b.push("params.consumerId is required"),isNullOrEmpty(a.email)&&b.push("params.email is required")),wUtils.info("errors",b),b},PaymentURLGeneratorPaymentUpgrade.prototype.getURLByConsumerIdEmail=function(){wUtils.log("--- PaymentURLGeneratorPaymentUpgrade.getURLByConsumerIdEmail");var a=this.params,b=w$.base64.encode(a.promotionId)+"/"+w$.base64.encode(a.planId)+"/"+w$.base64.encode(a.smartOfferSegment)+"/"+w$.base64.encode(a.zipCode)+"/"+w$.base64.encode(a.email)+"/"+w$.base64.encode(a.consumerId)+"/"+w$.base64.encode(a.subscriberMasterId),c=this.serverUrl+"/"+this.urlAction+"/"+b;return c},PaymentURLGeneratorPaymentUpgrade.prototype.getURLByEncryptedConsumerId=function(){wUtils.log("--- PaymentURLGeneratorPaymentUpgrade.getURLByEncryptedConsumerId");var a=this.params,b=w$.base64.encode(a.promotionId)+"/"+w$.base64.encode(a.planId)+"/"+w$.base64.encode(a.smartOfferSegment)+"/"+w$.base64.encode(a.zipCode)+"/"+w$.base64.encode(a.encryptedConsumerId)+"/"+w$.base64.encode(a.subscriberMasterId),c=this.serverUrl+"/"+this.urlAction+"ByECRID/"+b;return c},SubscriptionPanelURLGenerator.prototype.validateParams=function(){var a=this.params,b=[];return isNullOrEmpty(a)?b.push("params is required"):(isNullOrEmpty(a.promotionId)&&b.push("params.promotionId is required"),isNullOrEmpty(a.zipCode)&&b.push("params.zipCode is required")),b},SubscriptionPanelURLGenerator.prototype.getURL=function(){var a,b=this.params;return isNullOrEmpty(b.byQueryString)?a=w$.base64.encode(b.promotionId)+"/"+w$.base64.encode(b.planId)+"/"+w$.base64.encode(b.zipCode)+"/"+w$.base64.encode(b.header)+"/"+w$.base64.encode(b.encryptedConsumerId):(b.returnUrl&&(b.returnUrl=encodeURIComponent(b.returnUrl)),a="?"+decodeURIComponent(w$.param(b))),this.serverUrl+"/"+this.urlAction+"/"+a},SubscriptionPanelURLGeneratorUpgrade.prototype.validateParams=function(){var a=this.params,b=[];return isNullOrEmpty(a)?b.push("params is required"):(isNullOrEmpty(a.promotionId)&&b.push("params.promotionId is required"),isNullOrEmpty(a.zipCode)&&b.push("params.zipCode is required"),isNullOrEmpty(a.smartOfferSegment)&&b.push("params.smartOfferSegment is required"),isNullOrEmpty(a.subscriberMasterId)&&b.push("params.subscriberMasterId is required")),b},SubscriptionPanelURLGeneratorUpgrade.prototype.getURL=function(){var a,b=this.params;return isNullOrEmpty(b.byQueryString)?a=w$.base64.encode(b.promotionId)+"/"+w$.base64.encode(b.planId)+"/"+w$.base64.encode(b.zipCode)+"/"+w$.base64.encode(b.header)+"/"+w$.base64.encode(b.encryptedConsumerId):(b.returnUrl&&(b.returnUrl=encodeURIComponent(b.returnUrl)),a="?"+decodeURIComponent(w$.param(b))),this.serverUrl+"/"+this.urlAction+"/"+a};var BankAccount=function(a){var b={bankingInstitution:ko.observable().extend({required:{onlyIf:function(){return a.paymentMethodSelected(wConstants.paymentMethods[1])}},focusable:!0}),accountnumber:ko.observable().extend({required:{onlyIf:function(){return a.paymentMethodSelected(wConstants.paymentMethods[1])}},focusable:!0}),routingNumber:ko.observable().extend({required:{onlyIf:function(){return a.paymentMethodSelected(wConstants.paymentMethods[1])}},minLength:9,maxLength:11,routingNumberValidation:!0,focusable:!0})};return b.numberLast4=ko.computed(function(){return wUtils.getLast4Digits(this())},b.accountnumber),b.accountnumber.subscribe(wUtils.observableSubscribeFilterNumberAndSpaces,b.accountnumber),b.routingNumber.subscribe(wUtils.observableSubscribeFilterNumberAndSpaces,b.routingNumber),wUtils.addIsCompleted(b.routingNumber),wUtils.addIsCompleted(b.accountnumber),wUtils.addIsCompleted(b.bankingInstitution),b.routingNumber.typing=ko.observable(!1),b.routingNumber.subscribe(function(){this.typing(!0)},b.routingNumber),b.routingNumber.hasFocus.subscribe(function(a){a===!1&&this.typing(!1)},b.routingNumber),b.bankingInstitution.subscribe(wUtils.observableSubscribeFilterAlphanumeric,b.bankingInstitution),b},CreditCard=function(a){function b(a){return 11==a.getMonth()}function c(a){function b(a,b){return a===b?!0:a==b?!0:void 0===a&&void 0!==b?!1:void 0!==a&&void 0===b?!1:null===a&&null!==b?!1:null!==a&&null===b?!1:(wUtils.info("cct1",a),wUtils.info("cct2",b),a.code==b.code)}wUtils.log("creditCard change: "+a);var c=d.creditCardType(),e=(new CreditCardRecognizer).recognize(a);void 0!==e?d.creditCardType(e):d.creditCardType("");var f=d.creditCardType();b(c,f)||(wUtils.log("CC Type has Change"),d.ccv(void 0)),d.number.typing(!0)}var d={};d.creditCardValidations={required:{onlyIf:function(){return a.paymentMethodSelected(wConstants.paymentMethods[0])}},creditCardValidationLuhnCheck:!0,creditCardValidation:!0};var e=new Date;return d.nextMonth=new Date,d.nextMonth.setMonth(e.getMonth()+1),b(e)&&d.nextMonth.setFullYear(e.getFullYear()+1),d.name=ko.observable().extend({required:{onlyIf:function(){return a.paymentMethodSelected(wConstants.paymentMethods[0])},message:"Name Required"}}).extend({focusable:!0}),d.number=ko.observable().extend(d.creditCardValidations).extend({focusable:!0,rateLimit:500}),d.expirationMonth=ko.observable().extend({focusable:!0}),d.expirationYear=ko.observable().extend({focusable:!0}),d.creditCardType=ko.observable(),d.editing=ko.observable(),d.ccv=ko.observable().extend({focusable:!0}).extend({validation:{validator:function(a,b){if(wUtils.info("newCcv",a),wUtils.info("creditCardType",b),isNullOrEmpty(b))return!0;if(isNullOrEmpty(a))return!0;var c=3;return"ae"===b.code&&(c=4),a.length===c},message:"Please enter a valid CVV code",params:d.creditCardType}}),wUtils.addIsCompleted(d.name),d.name.subscribe(wUtils.observableSubscribeFilterOnlyAlphanumeric,d.name),d.expirationDate=ko.computed(function(){if(wUtils.log("--- CreditCard.expirationDate"),wUtils.info("CreditCard.expirationMonth()",d.expirationMonth()),void 0!==d.expirationMonth()&&void 0!==d.expirationYear()){var a=new Date;return a.setMonth(d.expirationMonth()-1),a.setYear(d.expirationYear()),a}}).extend({expirationDateGreaterOrEqual:d.nextMonth}),d.expirationDate.isCompleted=ko.computed(function(){return wUtils.log("--- CreditCard.expirationDate.isCompleted"),void 0===d.expirationMonth()?!1:void 0!==d.expirationYear()},d),d.expirationDate.hasBeenCompleted=ko.observable(!1),d.expirationDate.isCompleted.subscribe(function(a){a===!0&&d.expirationDate.hasBeenCompleted(!0)}),d.expirationText=ko.computed(function(){return d.expirationMonth()&&d.expirationYear()?d.expirationMonth()+"/"+d.expirationYear():void 0}),d.numberDelayed=ko.computed(function(){return d.number()}).extend({rateLimit:{method:"numberDelayed",timeout:400}}).extend(d.creditCardValidations),d.number.subscribe(c,CreditCard),d.number.isCompleted=ko.computed(function(){wUtils.log("--- CreditCard.number.isCompleted");var a=this();if(void 0!==a&&null!==a){if(void 0===a.code)return!1;if("ae"==a.code&&15===this().length)return!0;if(16===this().length)return!0}return!1},d.creditCardType),d.number.typing=ko.observable(!1),d.number.hasFocus.subscribe(function(a){a===!1&&d.number.typing(!1)}),d.numberMaxLength=ko.computed(function(){var a=d.creditCardType();return void 0!==a&&null!==a&&void 0!==a.code&&"ae"==a.code?15:16},d),d.numberLast4=ko.computed(function(){return wUtils.getLast4Digits(this())},d.number),wUtils.addTyping(d.ccv),wUtils.addIsCompleted(d.ccv),wUtils.addHasBeenCompleted(d.ccv),d.ccv.subscribe(wUtils.observableSubscribeFilterNumber,d.ccv),d.ccvMaxLength=ko.computed(function(){var a=d.creditCardType();return void 0!==a&&null!==a&&void 0!==a.code&&"ae"==a.code?4:3},d),d},logger={};logger.makeLogeabble=function(a,b,c){return a.log=function(a){c.log("------ "+b+" LOG --- "+a)},a.info=function(a,d){c.info("------ "+b+"."+a+" INFO ---",d)},a.debug=function(a){c.log("------- "+b+" DEBUG --- START ------ "),c.debug(a),c.log("------- "+b+" DEBUG --- END ------ ")},a},Subscription.prototype={isValidToPay:function(){return!0},validateAddresses:function(){wUtils.log("--- BASE --- Subscription.prototype.validateAddresses");var a=this,b=a.billingInformation(),c=a.addressInformation(),d=a.billingIsDelivery(),e=[],f=ko.validation.group(c,{deep:!0})();if(f.length>0&&e.push(f),!d){var g=ko.validation.group(b,{deep:!0})();g.length>0&&e.push(g)}return wUtils.info("invalidField",e),e},validatePaymentMethod:function(){wUtils.log("--- BASE --- Subscription.prototype.validatePaymentMethod");var a=this;wUtils.debug(a);var b=[];if(wUtils.info("validatePaymentMethod - self.offer().hasCreditCard() ",a.offer().hasCreditCard()),wUtils.info("validatePaymentMethod - self.paymentMethodSelected(wConstants.paymentMethods[0]) ",a.paymentMethodSelected(wConstants.paymentMethods[0])),wUtils.info("validatePaymentMethod - self.offer().hasBankAccount() ",a.offer().hasBankAccount()),wUtils.info("validatePaymentMethod - self.paymentMethodSelected(wConstants.paymentMethods[1]) ",a.paymentMethodSelected(wConstants.paymentMethods[1])),wUtils.info("validatePaymentMethod - self.offer().hasBilled() ",a.offer().hasBilled()),wUtils.info("validatePaymentMethod - self.paymentMethodSelected(wConstants.paymentMethods[2]) ",a.paymentMethodSelected(wConstants.paymentMethods[2])),a.offer().hasCreditCard()&&a.paymentMethodSelected(wConstants.paymentMethods[0])){var c=ko.validation.group(a.creditCard,{deep:!0})();c.length>0&&b.push(c)}else if(a.offer().hasBankAccount()&&a.paymentMethodSelected(wConstants.paymentMethods[1])){var d=ko.validation.group(a.bankAccount,{deep:!0})();d.length>0&&b.push(d)}else{if(a.offer().hasBilled()&&a.paymentMethodSelected(wConstants.paymentMethods[2]))return b;b.push("(!!!) hasToSelectedPayment (!!!)")}return b}};var patterns={email:/^[-a-z0-9~!$%^&*_=+}{\'?]+(\.[-a-z0-9~!$%^&*_=+}{\'?]+)*@([a-z0-9_][-a-z0-9_]*(\.[-a-z0-9_]+)*\.(aero|arpa|biz|com|coop|edu|gov|info|int|mil|museum|name|net|org|pro|travel|mobi|[a-z][a-z])|([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}))(:[0-9]{1,5})?$/i,atLeast1Letter1Number:/(?=.*[a-zA-Z])(?=.*[\d])/,zipCode:/(^\d{5}(-\d{4})?$)|(^[ABCEGHJKLMNPRSTVXYabceghjklmnprstvxy]{1}\d{1}[a-zA-Z]{1}\d{1}[a-zA-Z]{1}\d{1}$)/};!function(){function a(){var a=this;a.validate=function(a){var b=!1;if(!isNotNullOrEmpty(a))return!1;var c=new RegExp(/\s/);c.test(a)&&(a=a.split(" ").join(""));var d=a.split("");if(d.length>9)return!1;for(var e=[],f=0;fb},message:"Invalid Expiration date"},ko.validation.rules.graduationDateGranter={validator:function(a,b){return b>a},message:"Invalid Graduation date"},ko.validation.rules.expirationDateGreaterOrEqual={validator:function(a,b){var c;a&&(a.setMonth(a.getMonth()+1),c=a.getFullYear()+a.getMonth().padLeft(2));var d=b?b.getFullYear()+b.getMonth().padLeft(2):void 0;return c>=d},message:"Invalid Expiration date"},ko.validation.rules.graduationDateGreaterOrEqual={validator:function(a,b){return!0},message:"Invalid Graduation date"},ko.validation.rules.atLeast1Letter1Number={validator:function(a,b){var c=new RegExp(patterns.atLeast1Letter1Number);return c.test(a)},message:"Please enter a password with at least 7 characters, one number and one letter."},ko.validation.rules.atLeast1Letter1NumberAlt={validator:function(a,b){var c=new RegExp(patterns.atLeast1Letter1Number);return c.test(a)},message:"Your password must be at least 7 characters and contain at least one number."},ko.validation.rules.atLeast1Number={validator:function(a,b){for(var c=!1,d=0;!c&&d"0"&&a[d]<="9"&&(c=!0),d++;return c},message:"Enter at least one number"},ko.validation.rules.datePreviousThanToday={validator:function(a,b){if(wUtils.isNullOrEmpty(b.params[0]())&&wUtils.isNullOrEmpty(b.params[1]())&&wUtils.isNullOrEmpty(b.params[2]()))return!0;var c=!1;if(b.params[0]()&&b.params[1]()&&b.params[2]()){var d=new Date(b.params[0](),b.params[1]()-1,b.params[2]()),e=new Date;e>d&&(c=!0)}return c},message:"Please enter a valid date of birth"},ko.validation.rules.zipCode={validator:function(a,b){var c=new RegExp(patterns.zipCode);return c.test(a)},message:"Please enter a valid Postal Code."},ko.validation.registerExtenders()}(),ko.bindingHandlers.slideVisible={update:function(a,b,c){var d=b(),e=ko.unwrap(d),f=c.get("slideDuration")||400;e===!0?w$(a).slideDown(f):w$(a).slideUp(f)}},ko.bindingHandlers.masked={init:function(a,b,c){var d=c().mask||{};w$(a).mask(d,{autoclear:!1,placeholder:wConstants.maskPlaceholder})},update:function(a,b){var c=ko.utils.unwrapObservable(b());w$(a).val(c)}},ko.bindingHandlers.enterkey={init:function(a,b,c,d,e){var f=c(),g=f.enterkey;$(a).keypress(function(a){var b=a.which||a.keyCode;return 13===b?(g(d),!1):!0})}},ko.bindingHandlers.tooltipText={init:function(a,b){$(a).tooltip()},update:function(a,b){var c=$(a),d=b(),e=ko.unwrap(d); c.attr("data-original-title",e)}},ko.subscribable.fn.invalidAndModified=function(a,b){this();return notValidAndModified(this)},ko.subscribable.fn.invalid=function(a,b){this();return isNotValid(this)},ko.extenders.focusable=function(a,b){return b===!0&&(a.hasFocus=ko.observable()),a},ko.subscribable.fn.logIt=function(a){return this.triggeredCount=0,this.subscribe(function(b){window.console&&console.log&&console.log(++this.triggeredCount,a+" triggered with new value",b)},this),this},ko.bindingHandlers.maskedPhone={init:function(a,b,c){var d=c().mask||"999-999-9999";w$(a).inputmask(d)}},ko.bindingHandlers.maskedCCNumber={init:function(a,b,c){var d=c().mask||"9999 9999 9999 9999";w$(a).inputmask(d)},update:function(a,b){var c=ko.utils.unwrapObservable(b());if(void 0!==c&&""!==c){c=c.replace(/ /g,"");var d=new CreditCardRecognizer([{name:"American Express",code:"ae",regEx:/^3[47]\d*$/}]),e=d.recognize(c);e&&"ae"===e.code?w$(a).inputmask("9999 999999 99999"):w$(a).inputmask("9999 9999 9999 9999")}w$(a).val(c)}},ko.bindingHandlers.modal={init:function(a,b){w$(a).modal({backdrop:"static",show:!1});var c=b();"function"==typeof c&&w$(a).on("hide.bs.modal",function(){c(!1)}),ko.utils.domNodeDisposal.addDisposeCallback(a,function(){w$(a).modal("destroy")})},update:function(a,b){var c=b();ko.utils.unwrapObservable(c)?w$(a).modal("show"):w$(a).modal("hide")}},ko.bindingHandlers.tooltip={init:function(a,b){w$(a).tooltip()}},function(){var a=ko.bindingProvider.instance;ko.bindingProvider.instance={nodeHasBindings:a.nodeHasBindings,getBindings:function(b,c){var d;try{d=a.getBindings(b,c)}catch(e){window.console&&console.log&&console.warn("---- KO ERROR ------- binding error",e.message,b,c)}return d}}}();var Topics={Promotion:"promotion",PromotionDefaultChange:"promotionDefaultChange",PromotionOffersChange:"promotionOffersChange",SelectableOffers:"selectableOffers",Offer:"offer",DefaultOffer:"defaultOffer",BusyButton:{Landing:"landingBusyButton"},PromotionCleaner:"promotionCleaner",LandingErrorsValue:"landingErrorsValue"},newsletterVMO=new newsletterVM;PaymentURLGeneratorPaymentNonSubscriber.prototype=new PaymentURLGeneratorPaymentBase,PaymentURLGeneratorPaymentNonSubscriber.prototype.validateParams=function(){wUtils.log("--- PaymentURLGeneratorPaymentNonSubscriber.validateParams");var a=this.params,b=[];return isNullOrEmpty(a)&&b.push("params is required"),isNullOrEmpty(a.promotionId)&&b.push("params.promotionId is required"),isNullOrEmpty(a.planId)&&b.push("params.planId is required"),isNullOrEmpty(a.zipCode)&&b.push("params.zipCode is required"),this.isEncryptedMode()?isNullOrEmpty(a.encryptedConsumerId)&&b.push("params.encryptedConsumerId is required"):(isNullOrEmpty(a.consumerId)&&b.push("params.consumerId is required"),isNullOrEmpty(a.email)&&b.push("params.email is required")),wUtils.info("errors",b),b},PaymentURLGeneratorPaymentNonSubscriber.prototype.getURLByConsumerIdEmail=function(){wUtils.log("--- PaymentURLGeneratorPaymentNonSubscriber.getURLByConsumerIdEmail");var a=this.params,b=w$.base64.encode(a.promotionId)+"/"+w$.base64.encode(a.planId)+"/"+w$.base64.encode(a.zipCode)+"/"+w$.base64.encode(a.consumerId)+"/"+w$.base64.encode(a.email),c=this.serverUrl+"/"+this.urlAction+"/"+b;return c},PaymentURLGeneratorPaymentNonSubscriber.prototype.getURLByEncryptedConsumerId=function(){wUtils.log("--- PaymentURLGeneratorPaymentNonSubscriber.getURLByEncryptedConsumerId");var a=this.params,b=w$.base64.encode(a.promotionId)+"/"+w$.base64.encode(a.planId)+"/"+w$.base64.encode(a.zipCode)+"/"+w$.base64.encode(a.encryptedConsumerId),c=this.serverUrl+"/"+this.urlAction+"ByECRID/"+b;return c},PaymentURLGeneratorPaymentPremium.prototype=new PaymentURLGeneratorPaymentBase,PaymentURLGeneratorPaymentPremium.prototype.validateParams=function(){wUtils.log("--- PaymentURLGeneratorPaymentPremium.validateParams");var a=this.params,b=[];return isNullOrEmpty(a)&&b.push("params is required"),isNullOrEmpty(a.planDescription)&&b.push("params.planDescription is required"),isNullOrEmpty(a.zipCode)&&b.push("params.zipCode is required"),isNullOrEmpty(a.subscriberMasterId)&&b.push("params.subscriberMasterId is required"),this.isEncryptedMode()?isNullOrEmpty(a.encryptedConsumerId)&&b.push("params.encryptedConsumerId is required"):(isNullOrEmpty(a.consumerId)&&b.push("params.consumerId is required"),isNullOrEmpty(a.email)&&b.push("params.email is required")),wUtils.info("errors",b),b},PaymentURLGeneratorPaymentPremium.prototype.getURLByConsumerIdEmail=function(){wUtils.log("--- PaymentURLGeneratorPaymentPremium.getURLByConsumerIdEmail");var a=this.params,b=w$.base64.encode(a.planDescription)+"/"+w$.base64.encode(a.zipCode)+"/"+w$.base64.encode(a.email)+"/"+w$.base64.encode(a.consumerId)+"/"+w$.base64.encode(a.subscriberMasterId),c=this.serverUrl+"/"+this.urlAction+"/"+b;return c},PaymentURLGeneratorPaymentPremium.prototype.getURLByEncryptedConsumerId=function(){wUtils.log("--- PaymentURLGeneratorPaymentPremium.getURLByEncryptedConsumerId");var a=this.params,b=w$.base64.encode(a.planDescription)+"/"+w$.base64.encode(a.zipCode)+"/"+w$.base64.encode(a.encryptedConsumerId)+"/"+w$.base64.encode(a.subscriberMasterId),c=this.serverUrl+"/"+this.urlAction+"ByECRID/"+b;return c},PaymentURLGeneratorPaymentStopped.prototype=new PaymentURLGeneratorPaymentUpgrade,PaymentURLGeneratorPaymentUpgrade.prototype=new PaymentURLGeneratorPaymentBase,PaymentURLGeneratorPaymentUpgrade.prototype.validateParams=function(){wUtils.log("--- PaymentURLGeneratorPaymentUpgrade.validateParams");var a=this.params,b=[];return isNullOrEmpty(a)&&b.push("params is required"),isNullOrEmpty(a.promotionId)&&b.push("params.promotionId is required"),isNullOrEmpty(a.planId)&&b.push("params.planId is required"),isNullOrEmpty(a.smartOfferSegment)&&b.push("params.smartOfferSegment is required"),isNullOrEmpty(a.zipCode)&&b.push("params.zipCode is required"),isNullOrEmpty(a.subscriberMasterId)&&b.push("params.subscriberMasterId is required"),this.isEncryptedMode()?isNullOrEmpty(a.encryptedConsumerId)&&b.push("params.encryptedConsumerId is required"):(isNullOrEmpty(a.encryptedConsumerId)&&b.push("params.encryptedConsumerId is required"),isNullOrEmpty(a.consumerId)&&b.push("params.consumerId is required"),isNullOrEmpty(a.email)&&b.push("params.email is required")),wUtils.info("errors",b),b},PaymentURLGeneratorPaymentUpgrade.prototype.getURLByConsumerIdEmail=function(){wUtils.log("--- PaymentURLGeneratorPaymentUpgrade.getURLByConsumerIdEmail");var a=this.params,b=w$.base64.encode(a.promotionId)+"/"+w$.base64.encode(a.planId)+"/"+w$.base64.encode(a.smartOfferSegment)+"/"+w$.base64.encode(a.zipCode)+"/"+w$.base64.encode(a.email)+"/"+w$.base64.encode(a.consumerId)+"/"+w$.base64.encode(a.subscriberMasterId),c=this.serverUrl+"/"+this.urlAction+"/"+b;return c},PaymentURLGeneratorPaymentUpgrade.prototype.getURLByEncryptedConsumerId=function(){wUtils.log("--- PaymentURLGeneratorPaymentUpgrade.getURLByEncryptedConsumerId");var a=this.params,b=w$.base64.encode(a.promotionId)+"/"+w$.base64.encode(a.planId)+"/"+w$.base64.encode(a.smartOfferSegment)+"/"+w$.base64.encode(a.zipCode)+"/"+w$.base64.encode(a.encryptedConsumerId)+"/"+w$.base64.encode(a.subscriberMasterId),c=this.serverUrl+"/"+this.urlAction+"ByECRID/"+b;return c},SubscriptionPanelURLGenerator.prototype.validateParams=function(){var a=this.params,b=[];return isNullOrEmpty(a)?b.push("params is required"):(isNullOrEmpty(a.promotionId)&&b.push("params.promotionId is required"),isNullOrEmpty(a.zipCode)&&b.push("params.zipCode is required")),b},SubscriptionPanelURLGenerator.prototype.getURL=function(){var a,b=this.params;return isNullOrEmpty(b.byQueryString)?a=w$.base64.encode(b.promotionId)+"/"+w$.base64.encode(b.planId)+"/"+w$.base64.encode(b.zipCode)+"/"+w$.base64.encode(b.header)+"/"+w$.base64.encode(b.encryptedConsumerId):(b.returnUrl&&(b.returnUrl=encodeURIComponent(b.returnUrl)),a="?"+decodeURIComponent(w$.param(b))),this.serverUrl+"/"+this.urlAction+"/"+a},SubscriptionPanelURLGeneratorUpgrade.prototype.validateParams=function(){var a=this.params,b=[];return isNullOrEmpty(a)?b.push("params is required"):(isNullOrEmpty(a.promotionId)&&b.push("params.promotionId is required"),isNullOrEmpty(a.zipCode)&&b.push("params.zipCode is required"),isNullOrEmpty(a.smartOfferSegment)&&b.push("params.smartOfferSegment is required"),isNullOrEmpty(a.subscriberMasterId)&&b.push("params.subscriberMasterId is required")),b},SubscriptionPanelURLGeneratorUpgrade.prototype.getURL=function(){var a,b=this.params;return isNullOrEmpty(b.byQueryString)?a=w$.base64.encode(b.promotionId)+"/"+w$.base64.encode(b.planId)+"/"+w$.base64.encode(b.zipCode)+"/"+w$.base64.encode(b.header)+"/"+w$.base64.encode(b.encryptedConsumerId):(b.returnUrl&&(b.returnUrl=encodeURIComponent(b.returnUrl)),a="?"+decodeURIComponent(w$.param(b))),this.serverUrl+"/"+this.urlAction+"/"+a},Mg2WidgetAPI.prototype.openSubscriptionPanel=function(a){log("--- Mg2WidgetAPI.prototype.openSubscriptionPanel"),this.readyWithConfig()&&this._openPayment(a,new SubscriptionPanelURLGenerator(a,this.serverUrl()))},Mg2WidgetAPI.prototype.openSubscriptionPanelUpgrade=function(a){log("--- Mg2WidgetAPI.prototype.openSubscriptionPanelUpgrade"),this.readyWithConfig()&&this._openPayment(a,new SubscriptionPanelURLGeneratorUpgrade(a,this.serverUrl()))};var mg2WidgetAPI=new Mg2WidgetAPI;mg2WidgetAPI.setReady(!0),PaymentURLGeneratorPaymentNonSubscriber.prototype=new PaymentURLGeneratorPaymentBase,PaymentURLGeneratorPaymentNonSubscriber.prototype.validateParams=function(){wUtils.log("--- PaymentURLGeneratorPaymentNonSubscriber.validateParams");var a=this.params,b=[];return isNullOrEmpty(a)&&b.push("params is required"),isNullOrEmpty(a.promotionId)&&b.push("params.promotionId is required"),isNullOrEmpty(a.planId)&&b.push("params.planId is required"),isNullOrEmpty(a.zipCode)&&b.push("params.zipCode is required"),this.isEncryptedMode()?isNullOrEmpty(a.encryptedConsumerId)&&b.push("params.encryptedConsumerId is required"):(isNullOrEmpty(a.consumerId)&&b.push("params.consumerId is required"),isNullOrEmpty(a.email)&&b.push("params.email is required")),wUtils.info("errors",b),b},PaymentURLGeneratorPaymentNonSubscriber.prototype.getURLByConsumerIdEmail=function(){wUtils.log("--- PaymentURLGeneratorPaymentNonSubscriber.getURLByConsumerIdEmail");var a=this.params,b=w$.base64.encode(a.promotionId)+"/"+w$.base64.encode(a.planId)+"/"+w$.base64.encode(a.zipCode)+"/"+w$.base64.encode(a.consumerId)+"/"+w$.base64.encode(a.email),c=this.serverUrl+"/"+this.urlAction+"/"+b;return c},PaymentURLGeneratorPaymentNonSubscriber.prototype.getURLByEncryptedConsumerId=function(){wUtils.log("--- PaymentURLGeneratorPaymentNonSubscriber.getURLByEncryptedConsumerId");var a=this.params,b=w$.base64.encode(a.promotionId)+"/"+w$.base64.encode(a.planId)+"/"+w$.base64.encode(a.zipCode)+"/"+w$.base64.encode(a.encryptedConsumerId),c=this.serverUrl+"/"+this.urlAction+"ByECRID/"+b;return c},PaymentURLGeneratorPaymentPremium.prototype=new PaymentURLGeneratorPaymentBase,PaymentURLGeneratorPaymentPremium.prototype.validateParams=function(){wUtils.log("--- PaymentURLGeneratorPaymentPremium.validateParams");var a=this.params,b=[];return isNullOrEmpty(a)&&b.push("params is required"),isNullOrEmpty(a.planDescription)&&b.push("params.planDescription is required"),isNullOrEmpty(a.zipCode)&&b.push("params.zipCode is required"),isNullOrEmpty(a.subscriberMasterId)&&b.push("params.subscriberMasterId is required"),this.isEncryptedMode()?isNullOrEmpty(a.encryptedConsumerId)&&b.push("params.encryptedConsumerId is required"):(isNullOrEmpty(a.consumerId)&&b.push("params.consumerId is required"),isNullOrEmpty(a.email)&&b.push("params.email is required")),wUtils.info("errors",b),b},PaymentURLGeneratorPaymentPremium.prototype.getURLByConsumerIdEmail=function(){wUtils.log("--- PaymentURLGeneratorPaymentPremium.getURLByConsumerIdEmail");var a=this.params,b=w$.base64.encode(a.planDescription)+"/"+w$.base64.encode(a.zipCode)+"/"+w$.base64.encode(a.email)+"/"+w$.base64.encode(a.consumerId)+"/"+w$.base64.encode(a.subscriberMasterId),c=this.serverUrl+"/"+this.urlAction+"/"+b;return c},PaymentURLGeneratorPaymentPremium.prototype.getURLByEncryptedConsumerId=function(){wUtils.log("--- PaymentURLGeneratorPaymentPremium.getURLByEncryptedConsumerId");var a=this.params,b=w$.base64.encode(a.planDescription)+"/"+w$.base64.encode(a.zipCode)+"/"+w$.base64.encode(a.encryptedConsumerId)+"/"+w$.base64.encode(a.subscriberMasterId),c=this.serverUrl+"/"+this.urlAction+"ByECRID/"+b;return c},PaymentURLGeneratorPaymentStopped.prototype=new PaymentURLGeneratorPaymentUpgrade,PaymentURLGeneratorPaymentUpgrade.prototype=new PaymentURLGeneratorPaymentBase,PaymentURLGeneratorPaymentUpgrade.prototype.validateParams=function(){wUtils.log("--- PaymentURLGeneratorPaymentUpgrade.validateParams");var a=this.params,b=[];return isNullOrEmpty(a)&&b.push("params is required"),isNullOrEmpty(a.promotionId)&&b.push("params.promotionId is required"),isNullOrEmpty(a.planId)&&b.push("params.planId is required"),isNullOrEmpty(a.smartOfferSegment)&&b.push("params.smartOfferSegment is required"),isNullOrEmpty(a.zipCode)&&b.push("params.zipCode is required"),isNullOrEmpty(a.subscriberMasterId)&&b.push("params.subscriberMasterId is required"),this.isEncryptedMode()?isNullOrEmpty(a.encryptedConsumerId)&&b.push("params.encryptedConsumerId is required"):(isNullOrEmpty(a.encryptedConsumerId)&&b.push("params.encryptedConsumerId is required"),isNullOrEmpty(a.consumerId)&&b.push("params.consumerId is required"),isNullOrEmpty(a.email)&&b.push("params.email is required")),wUtils.info("errors",b),b},PaymentURLGeneratorPaymentUpgrade.prototype.getURLByConsumerIdEmail=function(){wUtils.log("--- PaymentURLGeneratorPaymentUpgrade.getURLByConsumerIdEmail");var a=this.params,b=w$.base64.encode(a.promotionId)+"/"+w$.base64.encode(a.planId)+"/"+w$.base64.encode(a.smartOfferSegment)+"/"+w$.base64.encode(a.zipCode)+"/"+w$.base64.encode(a.email)+"/"+w$.base64.encode(a.consumerId)+"/"+w$.base64.encode(a.subscriberMasterId),c=this.serverUrl+"/"+this.urlAction+"/"+b;return c},PaymentURLGeneratorPaymentUpgrade.prototype.getURLByEncryptedConsumerId=function(){wUtils.log("--- PaymentURLGeneratorPaymentUpgrade.getURLByEncryptedConsumerId");var a=this.params,b=w$.base64.encode(a.promotionId)+"/"+w$.base64.encode(a.planId)+"/"+w$.base64.encode(a.smartOfferSegment)+"/"+w$.base64.encode(a.zipCode)+"/"+w$.base64.encode(a.encryptedConsumerId)+"/"+w$.base64.encode(a.subscriberMasterId),c=this.serverUrl+"/"+this.urlAction+"ByECRID/"+b;return c},SubscriptionPanelURLGenerator.prototype.validateParams=function(){var a=this.params,b=[];return isNullOrEmpty(a)?b.push("params is required"):(isNullOrEmpty(a.promotionId)&&b.push("params.promotionId is required"),isNullOrEmpty(a.zipCode)&&b.push("params.zipCode is required")),b},SubscriptionPanelURLGenerator.prototype.getURL=function(){var a,b=this.params;return isNullOrEmpty(b.byQueryString)?a=w$.base64.encode(b.promotionId)+"/"+w$.base64.encode(b.planId)+"/"+w$.base64.encode(b.zipCode)+"/"+w$.base64.encode(b.header)+"/"+w$.base64.encode(b.encryptedConsumerId):(b.returnUrl&&(b.returnUrl=encodeURIComponent(b.returnUrl)),a="?"+decodeURIComponent(w$.param(b))),this.serverUrl+"/"+this.urlAction+"/"+a},SubscriptionPanelURLGeneratorUpgrade.prototype.validateParams=function(){var a=this.params,b=[];return isNullOrEmpty(a)?b.push("params is required"):(isNullOrEmpty(a.promotionId)&&b.push("params.promotionId is required"),isNullOrEmpty(a.zipCode)&&b.push("params.zipCode is required"),isNullOrEmpty(a.smartOfferSegment)&&b.push("params.smartOfferSegment is required"),isNullOrEmpty(a.subscriberMasterId)&&b.push("params.subscriberMasterId is required")),b},SubscriptionPanelURLGeneratorUpgrade.prototype.getURL=function(){var a,b=this.params;return isNullOrEmpty(b.byQueryString)?a=w$.base64.encode(b.promotionId)+"/"+w$.base64.encode(b.planId)+"/"+w$.base64.encode(b.zipCode)+"/"+w$.base64.encode(b.header)+"/"+w$.base64.encode(b.encryptedConsumerId):(b.returnUrl&&(b.returnUrl=encodeURIComponent(b.returnUrl)),a="?"+decodeURIComponent(w$.param(b))),this.serverUrl+"/"+this.urlAction+"/"+a},Mg2WidgetAPI.prototype.openSubscriptionPanel=function(a){log("--- Mg2WidgetAPI.prototype.openSubscriptionPanel"),this.readyWithConfig()&&this._openPayment(a,new SubscriptionPanelURLGenerator(a,this.serverUrl()))},Mg2WidgetAPI.prototype.openSubscriptionPanelUpgrade=function(a){log("--- Mg2WidgetAPI.prototype.openSubscriptionPanelUpgrade"),this.readyWithConfig()&&this._openPayment(a,new SubscriptionPanelURLGeneratorUpgrade(a,this.serverUrl()))};var mg2WidgetAPI=new Mg2WidgetAPI;mg2WidgetAPI.setReady(!0); ;(I11C || I10C).ScriptEnd();