//coremetrics
var giCMCategoryID = 0;
var giCMCategoryDescription = 1;
var giCMCategoryParentID = 2;
var giCMQuestionnaire = 3;
var giCMProcess = 4;
var giCMPath = 5;
var giCMDomain = 6; 

var gsCMBankruptcy = "Bankruptcy";
var gsCMEntityNameCheck = "PID68";
var gsCMSearchCategory = "CID30";
//var gsCMRARenewal = "Registered Agent Service";
var gsCMRECategoryNotMapped = "THIS CATEGORY IS NOT MAPPED";
var gsCMFolderNotMapped = "FOLDER NOT MAPPED";
var gsCMSearchRightNowRE = "/rightnow/index.html";
var gsCMDomainNotMapped = "THIS DOMAIN IS NOT MAPPED";
var gsCMFormsPath = "/legalforms/|/legalforms-faqs/|/legalforms-glossary/";
var gsCMFormsID = "CID27";
var gsCMFormsDescription = "Legal Forms";
var gsCMSecureGuarantee = "secure_guarantee.html";

var gsLegalFormsSAProcessID = "62"
var gsLegalFormsSubProcessID = "94"
var gsLegalFormsProcessID = gsLegalFormsSAProcessID + "|" + gsLegalFormsSubProcessID;
var greLegalFormsProcess = new RegExp(gsLegalFormsProcessID, "gim");
var gsLegalFormsQuestionnaireID = "240|357";
var greLegalFormsQuestionnaire = new RegExp(gsLegalFormsQuestionnaireID, "gim");

var greAdvantageAttorneys = /[\/\\]+advantage-attorneys[\/\\]+|[\/\\]+attorneys-lawyers[\/\\]+advantage-attorneys.html/gim;

var gicmCookieInfSubscription = 3;

var giCMUtilPatStep1 = 70;
var giCMUtilPatStep2 = 71;
var giCMProvPatIQ = 247;

var giCMProvPatIP = 67;
//var gsCMProvPatID = "PID" + giCMProvPatIP;
var gsCMProvPatID = "CID48";

//var gsCMProvPatInHouseID = "ProvPat - In House";
var giCMProvPatInHouseIQ = 21;
var giCMProvPatInHouseIP = 19;

var giCMDesignPatent = 69;
var gsCMDesignPatentID = "PID" + giCMDesignPatent;

var gsCMBusinessLicenses = "Business-Licenses";
var igCMClickEvent = 2;
var sgCMClickEventCategory = "Click";
var gsCMRevisionCatID = "CID29"

var cmGSBusinessResourcesDomain = "businessresources.legalzoom.com";
var gsCMANCILLARYCategory = "CID31";
var gsASLAP = "PID112";
var gscmADPBAP = "PID109";

var giCMCorpMinSubPID = 42;
var gsCMCorpMinSub = "PID" + giCMCorpMinSubPID;
var giCMCorpMinPrepPID = 39;
var gsCMCorpMinPrep = "PID" + giCMCorpMinPrepPID;
var gsCMLegalID = "CID55";
var giCMTM  = 7
var cmGIDivPreQualQID = 66;
var cmGILWTPID = 6;

var cmgsGoogleSearch = "/searchsegments.aspx"

var iaRevExcept = [];
iaRevExcept[6] = true;
iaRevExcept[9] = true;
iaRevExcept[3] = true;
iaRevExcept[11] = true;
iaRevExcept[100] = true;

var oaMappings = new Array();
//oaMappings[ oaMappings.length ] = [ CatID, Cat Description, Parent CatID, iQuestionnaire(s), iProcess(es), Path RegExp, Domain RegExp ];
//oaMappings[oaMappings.length] = ["CID11", "Estate Planning", "", -1, -1, "/wills-estate-planning/", gsCMDomainNotMapped];
//oaMappings[oaMappings.length] = ["CID60", "PSD General", "", -1, -1, "/family-law/", gsCMDomainNotMapped];
//oaMappings[oaMappings.length] = ["CID8", "Business Services", "", -1, -1, "/business-formations/", gsCMDomainNotMapped];
//oaMappings[oaMappings.length] = ["CID15", "Intellectual Property", "", -1, -1, "/trademarks-patents-copyrights", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["CID31", "General", "", -1, -1, "/more-legal-documents/", gsCMDomainNotMapped];

oaMappings[oaMappings.length] = ["CID9", "Checkout", "", -1, -1, "/checkout/|/finished/|/RARenewals/PurchaseReview.aspx|/RARenewals/Confirmation.aspx|/ra_autorenewhelp.html", gsCMDomainNotMapped];
//oaMappings[oaMappings.length] = [gsCMFormsID, gsCMFormsDescription, "", gsLegalFormsQuestionnaireID, gsLegalFormsProcessID, gsCMFormsPath, gsCMDomainNotMapped];
oaMappings[oaMappings.length] = [gsCMFormsID, gsCMFormsDescription, "", -1, -1, gsCMFormsPath, gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID" + gsLegalFormsSAProcessID, "Forms Standalone", "", -1, gsLegalFormsSAProcessID, gsCMFolderNotMapped, gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID" + gsLegalFormsSubProcessID, "Forms Subscription", "", -1, gsLegalFormsSubProcessID, gsCMFolderNotMapped, gsCMDomainNotMapped];

oaMappings[oaMappings.length] = ["CID7", "Attorney Services", "", -1, -1, gsCMFolderNotMapped, gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["CID3", "Articles", "", -1, -1, "/legal-articles/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = [gsCMSearchCategory, "Site Search", "", -1, -1, "/search.aspx|" + cmgsGoogleSearch + "|" + gsCMSearchRightNowRE, gsCMDomainNotMapped];
oaMappings[oaMappings.length] = [gsCMANCILLARYCategory, "General", "", -1, -1, "/education-center/", gsCMDomainNotMapped];

oaMappings[oaMappings.length] = ["CID18", "My Account", "", -1, -1, "/lzweb/Members/MyAccount.aspx|/lzweb/Members/MyAccountDetail.aspx|/lzweb/Members/MyAccountProfile.aspx|/lzweb/Members/MyAccountProfileEdit.aspx|/lzweb/Members/PrintableReceipt.aspx|/lzweb/Members/SendTo.aspx|/Questionnaire/check_previous_orders.asp|/welcome/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["CID10", "Site Entry", "", -1, -1, gsCMFolderNotMapped, gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["CID26", "Support", "", -1, -1, "/customer-support/|questions.html|answers.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["CID12", "Error", "", -1, -1, "/page-not-found.html|/welcome/404.asp|/welcome/500.asp", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["CID17", "Login", "", -1, -1, "/welcome/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["CID16", "Lead Generation", "", -1, -1, "/attorney-connect/|/attorney-locator/|/offers/|/partner_html/|/marketamerica/|businessresources.legalzoom.com", cmGSBusinessResourcesDomain];
oaMappings[oaMappings.length] = ["CID14", "Homepage", "ENTRY", -1, -1, "^/$|^/index[0-9a-z_\-]*.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["CID25", "SEO Landing Pages", "ENTRY", -1, -1, "/sem/lz.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["CID19", "Press", "ENTRY", -1, -1, "/press-center/", gsCMDomainNotMapped];

oaMappings[oaMappings.length] = ["PID4", "Divorce", "FAM", cmGIDivPreQualQID + "|121|123|125|32|33|34|35|154|175|214|236|237", 4, "/divorce-faq/|/divorce-glossary/|/divorce-guide/|/legal-divorce/", gsCMDomainNotMapped];

oaMappings[oaMappings.length] = ["PID2", "LLC", "BIZ", 27, 2, "/limited-liability-company/|/llc/|/llc-faq/|/llc-glossary/|/llc-guide/|/llc-state-requirements/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID1", "Inc", "BIZ", 63, 1, "/incorporation-faq/|/incorporation-glossary/|/incorporation-guide/|/incorporation-state-requirements/|/legal-incorporation/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID20", "NonProfit", "BIZ", 98, 20, "/non-profits/|/nonprofits-faq/|/nonprofits-guide/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID18", "DBA", "BIZ", 89, 18, "/dba-faq/|/dba-guide/|/legal-dba/|/DBA-STATE-REQUIREMENTS/", gsCMDomainNotMapped];
//oaMappings[oaMappings.length] = ["PID42", "Corporate Minutes Annual Subscription", "BIZ SUBSCRIPTION", 141, 42, "/additional-business-services/corporate-minutes.html", gsCMDomainNotMapped];
//oaMappings[oaMappings.length] = ["PID39", "Corporate Supplies", "BIZ ANCILLARY", 134, 39, "/additional-business-services/corporate-supplies.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = [gsCMCorpMinSub, "Corporate Minutes Annual Subscription", "BIZ SUBSCRIPTION", 141, giCMCorpMinSubPID, "/additional-business-services/corporate-minutes.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = [gsCMCorpMinPrep, "Prepared Corporate Minutes", "BIZ SUBSCRIPTION", 134, giCMCorpMinPrepPID, gsCMFolderNotMapped, gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["CID59", "Corporate Supplies", "BIZ ANCILLARY", -1, -1, "/additional-business-services/corporate-supplies.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID81", "Annual Reports", "BIZ ANCILLARY", 309, 81, "/additional-business-services/annual-reports.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID28", "RA Renewal", "BIZ SUBSCRIPTION", 105, 28, "/rarenewals/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID59", "501c3 Preparation", "BIZ", 233, 59, "/501c3/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID25", "Amendment", "BIZ ANCILLARY", 163, 25, "/additional-business-services/articles-of-amendment-corporation-llc.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID75", "Bylaws and Resolutions", "BIZ ANCILLARY", 304, 75, "/additional-business-services/stand-alone-bylaws-resolutions.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID29", "Certificate of Good Standing", "BIZ ANCILLARY", 108, 29, "/additional-business-services/certificates-of-good-standing.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID47", "Conversion", "BIZ ANCILLARY", 106, 47, "/additional-business-services/conversion-between-llc-corporation.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID26", "Corporate Dissolution", "BIZ ANCILLARY", 161, 26, "/additional-business-services/articles-of-dissolution-corporation-llc.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID49", "EIN Obtainment", "BIZ ANCILLARY", 173, 49, "/additional-business-services/ein-federal-tax-identification-number.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID27", "Foreign Qualification", "BIZ ANCILLARY", 162, 27, "/additional-business-services/foreign-qualifications-for-business.html|/Questionnaire/ForeignQuals_Preflight.aspx", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID16", "Logos", "BIZ", 20, 16, "/logo/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID76", "Operating Agreements", "BIZ ANCILLARY", 303, 76, "/additional-business-services/stand-alone-operating-agreements.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID93", "S-Corp Preparation", "BIZ ANCILLARY", 93, -1, "/additional-business-services/s-corp-election.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID44", "Sellers Permit", "BIZ ANCILLARY", "118|187|191|196|204|206|207|212", 44, "/additional-business-services/sellers-permit.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID45", "State Tax ID", "BIZ ANCILLARY", "192|188|167|168|169|170|171|172|183|184|149", 45, "/additional-business-services/state-tax-id.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID57", "Business Licenses", "BIZ", 57, 234, gsCMFolderNotMapped, gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID23", "LP", "BIZ", 130, 23, "/limited-partnerships/|/lp-faq/|/lp-guide/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID24", "LLP", "BIZ", 131, 24, "/limited-liability-partnerships/|/llp-faq/|/llp-guide/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID63", "General Partnership Agreement", "BIZ", 243, 63, "/partnership-agreement/|/partnership-agreement-faq/|/partnership-agreement-glossary/|/partnership-agreement-guide/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID64", "Joint Venture Agreement", "BIZ", 242, 64, "/joint-venture/|/joint-venture-faq/|/joint-venture-glossary/|/joint-venture-guide/", gsCMDomainNotMapped];

oaMappings[oaMappings.length] = [gsCMProvPatID, "Provisional Patent", "IP", giCMProvPatIQ, giCMProvPatIP, "/patents/|/patents-faq/|/patents-glossary/|/patents-guide/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID19", "Provisional Patent", gsCMProvPatID, giCMProvPatInHouseIQ, giCMProvPatInHouseIP, gsCMFolderNotMapped, gsCMDomainNotMapped];

oaMappings[oaMappings.length] = [gsCMDesignPatentID, "Design Patent", "IP", 250, giCMDesignPatent, "/NATIONAL-INVENTORS-MONTH.HTML|/design-patents/|/design-patents-faq/|/design-patents-guide/", gsCMDomainNotMapped];

oaMappings[oaMappings.length] = ["PID" + giCMUtilPatStep2, "Utility Patent Step II", "IP", 253, giCMUtilPatStep2, "utility-patents-pricing2.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID" + giCMUtilPatStep1, "Utility Patent", "IP", 251, giCMUtilPatStep1, "/utility-patents/|/utility-patents-faq/|/patents-green-tech-program.html", gsCMDomainNotMapped];

oaMappings[oaMappings.length] = ["PID65", "Patent Search", "IP", 244, 65, "/patent-search/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID7", "Trademark", "IP", 51, giCMTM, "trademarkInstallmentPlanPurchaseLock.html|/trademarks/|/trademarks-faq/|/trademarks-glossary/|/trademarks-guide/|/trademarks-state-requirements/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID13", "Trademark Search", "IP", 77, 13, "/trademark-search/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID14", "Trademark Monitoring", "IP", 80, 14, "/trademark-monitoring/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID8", "Copyright", "IP", 64, 8, "/copyrights-faq/|/copyrights-glossary/|/copyrights-guide/|/legal-copyrights/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID53", "Trademark Statement of Use", "IP", 158, 53, "/trademarks-statement-of-use/|/trademarks-statement-of-use-faq/|/trademarks-statement-of-use-guide/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID54", "Trademark Statement of Use Extension", "IP", 164, 54, "/tm-statement-of-use-extension/|/tm-statement-of-use-extension-faq/|/tm-statement-of-use-extension-guide/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID51", "Trademark Section 8 Declaration", "IP", 159, 51, "/trademarks-section8-declaration/|/trademarks-section8-faq/|/trademarks-section8-guide/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID52", "Trademark Section 9 Renewal", "IP", 160, 52, "/trademarks-section9-faq/|/trademarks-section9-guide/|/trademarks-section9-renewal/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID55", "Trademark Assignment", "IP", 166, 55, "/trademarks-assignment/|/trademarks-assignment-faq/|/trademarks-assignment-guide/|/trademarks-assignment-glossay/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID9", "Living Will", "EP", 54, 9, "/living-wills/|/Living-Wills-FAQ/|/living-wills-glossary/|/living-wills-guide/|/living-wills-state-requirements/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID3", "Living Trust", "EP", 59, 3, "/living-trusts/|/living-trusts-faq/|/living-trusts-glossary/|/living-trusts-guide/|/living-trusts-state-requirements/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID6", "Last Will and Testament", "EP", "49|536", cmGILWTPID, "/legal-Wills/|/Wills-FAQ/|/Wills-Glossary/|/Wills-Guide/|/wills-state-requirements/|lwt-overview.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID11", "Power of Attorney", "EP", 17, 11, "/power-of-attorney/|/power-of-attorney-faq/|/power-of-attorney-glossary/|/power-of-attorney-guide/", gsCMDomainNotMapped];
//oaMappings[oaMappings.length] = ["CID6", "ASD Family", "ASD", "138|363|365", "72|103|106", "/prenuptial/|/prenuptial-faq/|/prenuptial-glossary/|/prenuptial-guide/|/attorneys-lawyers/prenuptial-agreement-review.html|/attorneys-lawyers/prenuptial-agreement-review-pricing.html|/attorneys-lawyers/prenuptial-agreement-review-3-step-process.html|/attorneys-lawyers/prenuptial-agreement-review-services.html|/attorneys-lawyers/postnuptial-agreement-pricing.html|/attorneys-lawyers/postnuptial-agreement.html|/attorneys-lawyers/postnuptial-agreement-services.html|/attorneys-lawyers/postnuptial-agreement-3-step-process.html", gsCMDomainNotMapped];

//oaMappings[ oaMappings.length ] = [ "UncontestedDiv", "Uncontested Divorce", "FAM", "121|123|125|32|33|34|35|154|175|214", 4, gsCMRECategoryNotMapped, gsCMDomainNotMapped ];
//oaMappings[ oaMappings.length ] = [ "AttyDiv", "Attorney Assisted Divorce", "FAM", -1, -1, gsCMRECategoryNotMapped, gsCMDomainNotMapped ];
//oaMappings[ oaMappings.length ] = [ "DivConsult", "Divorce Consultation", "FAM", 150, 50, gsCMRECategoryNotMapped, gsCMDomainNotMapped ];

oaMappings[oaMappings.length] = ["PID35", "Small Claims", "PERSONAL", "29|133", "22|35", "/small-claims-california/|/small-claims-california-guide/|/small-claims-california-faq/|/small-claims-california-glossary/|/legal-small-claims/|/small-claims-guide/|/small-claims-faq/|/small-claims-glossary/|/questionnaire/select_state_smallclaims.htm|/questionnaire/pre-qualification-[a-z]{2}.html|/questionnaire/pre-qualification-popup-combined.html|/questionnaire/pre-qualification-popup-general.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID38", "Real Estate Lease", "PERSONAL", 139, 38, "/real-estate-leases/|/real-estate-leases-faq/|/real-estate-leases-glossary/|/real-estate-leases-guide/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID48", "Real Estate Deed Transfer", "PERSONAL", 148, 48, "/real-estate-deed-transfer/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID15", "Name Change", "PERSONAL", "155|19", 15, "/legal-name-change/|/name-change-faq/|/name-change-glossary/|/name-change-guide/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID60", "Bankruptcy", "ASD", 174, 60, "/bankruptcy/|/bankruptcy-faq/|/bankruptcy-glossary/|/bankruptcy-guide/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["CID1", "Affiliate", "AFFILIATE", -1, -1, "/janpro/index.html|/comforters/index.html|/fi/|/globaltranz/|/ipc/|/rebuildus/|/STROLLERSTRIDES/|/WEB/|/affiliate-legalzoom/|/affiliates/|/marketamerica/default.asp|/marshacollier/default.asp|/mastercard/default.asp|/mc/default.asp|/Merchant/default.asp|/myaimusa/default.asp|/netsol/default.asp", gsCMDomainNotMapped];
//oaMappings[oaMappings.length] = ["CID2", "Partner", "AFFILIATE", -1, -1, "/janpro/|/responsivelaw/|/ediblearrangements/|/realwealth/", gsCMDomainNotMapped];

oaMappings[oaMappings.length] = ["PID4-CID28", "SEM - Divorce Consultation", "SEM", -1, -1, "/sem/divorcepage.html|/sem/divorcepage-1.html|/sem/divorcepage-2.html|/sem/divorcepage-ca.html|/sem/divorce_apr2011.html|/sem/divorce-b.html", gsCMDomainNotMapped];
//oaMappings[oaMappings.length] = ["CID23", "SEM - Business Services", "SEM", -1, -1, "/sem-incorporation-a/business-compare.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID8-CID28", "SEM - Copyright", "SEM", -1, -1, "/sem/copyright-descriptions.html|/sem/copyright-icons.html|/sem/copyrightpage.html|/sem/copyrightpage1.html|/sem/get-a-copyright.html|/sem/copyright.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID18-CID28", "SEM - DBA", "SEM", -1, -1, "/SEM/DBAPAGE27.HTML|/sem/dbapage.html|/sem/dbapage1.html|/sem/get-a-dba-sole-proprietorship.html|/sem/get-a-dba-sole-proprietorship-1.html|/sem/sole-proprietorship.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID48-CID28", "SEM - Real Estate Deed Transfer", "SEM", -1, -1, "/sem/deedtransferpage.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID" + giCMDesignPatent + "-CID28", "SEM - Design Patent", "SEM", -1, -1, "/sem/get-a-patent.html|/sem/get-a-patent-b.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID1-CID28", "SEM - Inc", "SEM", -1, -1, "/SEM/INCPAGE28.HTML|/sem/get-incorporated-online.html|/sem/incpage.html|/sem/incorporation.html|/sem/incpage2.html|/sem/incpage3.html|/sem/free-incorporation-guide.html|/sem/free-incorporation-guide-confirm.html|/sem-incorporation-a/business-compare-summary.html|/sem-incorporation-a/incorporation.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID2-CID28", "SEM - LLC", "SEM", -1, -1, "/SEM/lz_llc_|/SEM/LLC-FORMATION2.HTML|/SEM/LLCPAGE.HTML|/sem/form-a-llc.html|/sem/form-an-llc-online.html|/sem/form-an-llc-online-start-now.asp|/sem/incorporate-or-llc.html|/sem/incorporate-or-llc-start-now.asp|/sem/LLC-EXPERTS-NO-VSS.html|/sem/llcpage-09162009.html|/sem/llcpage2.html|/sem/llcpage3.html|/sem/llcpage-3.html|/sem/llcpage4.html|/sem/llcpage-4.html|/sem/llcpage5.html|/sem/llcpage-5.html|/sem/llcpage_old.html|/sem/limited-liability-company.html|/sem/llcpage-2.html|/sem/free-llc-guide-download-yours-today.html|/sem/free-llc-guide-download-yours-today-confirm.html|/sem/llc-satisfied-customers.html|/sem/SEM_landing_LLC_080804.html|/sem/llc.html", gsCMDomainNotMapped];

oaMappings[oaMappings.length] = ["PID65-CID28", "SEM - Patent Search", "SEM", -1, -1, "/sem/patent-search.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID6-CID28", "SEM - Last Will", "SEM", -1, -1, "/sem/last-wills-|/SEM/LAST-WILLS.HTML|/SEM/LAST-WILLS4.HTML|/sem/last-will-and-testament.html|/sem/willpage.html|/sem/last-will-and-testament-09162009.html|/sem/lastwillspage2.html|/sem/lastwillspage3.html|/sem/lastwillspage4.html|/sem/lastwillspage5.html|/sem/willpage1.html|/sem/willpage2.html|/sem/estate-planning.html|/sem/free-estate-planning-guide.html|/sem/free-estate-planning-guide-confirm.html|/sem/last-wills6.html|/sem/last-wills7.html|/sem/presignin/last-will-and-testament.html|/sem/presignin/last-will-and-testament2.html|/LastWill_7180/last-wills-v[0-9]+.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID3-CID28", "SEM - Living Trust", "SEM", -1, -1, "/sem/last-will-or-living-trust.html|/sem/livingtrustpage.html|/sem/free-living-trust-guide-download-yours-today.html|/sem/living-trust.html|/sem/free-living-trust-guide-download-yours-today-confirm.html|/sem/livingtrustpage1.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID9-CID28", "SEM - Living Will", "SEM", -1, -1, "/sem/livingwillpage.html|/sem/livingwillpage1.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID20-CID28", "SEM - NonProfit", "SEM", -1, -1, "/SEM/NONPROFITPAGE29.HTML|/sem/nonprofitpage.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID15-CID28", "SEM - Name Change", "SEM", -1, -1, "/sem/namechangepage.html|/sem/name-change/missnowmrs.html|/sem/name-change/three-step-name-change.html|/sem/name-change/easy-name-change.html|/sem/name-change/getyournameback.html|/sem/name-change.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID11-CID28", "SEM - Power of Attorney", "SEM", -1, -1, "/sem/poapage.html|/sem/power-of-attorney.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = [gsCMProvPatID + "-CID28", "SEM - Provisional Patent", "SEM", -1, -1, "/sem/patent-descriptions.html|/sem/patent-icons.html|/sem/provpatpage.html|/sem/provpatpage1.html|/sem/get-patent-full.html|/sem/patent.html|/sem/provisional-application-for-patent.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID35-CID28", "SEM - Small Claims", "SEM", -1, -1, "/sem/smallclaimspage.html|/sem/smallclaimspage2.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID14-CID28", "SEM - Trademark Monitoring", "SEM", -1, -1, "/sem/get-trademark-protection.html|/sem/tmmonitoringpage.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID7-CID28", "SEM - Trademark", "SEM", -1, -1, "/sem/trademark-easy.html|/sem/trademark-logos.html|/sem/trademark-hybrid.html|/sem/trademark-fast.html|/SEM/TRADEMARK-FILING3.HTML|/sem/get-a-trademark.html|/sem/trademarkpage.html|/sem/trademarkpage2.html|/sem/trademarkpage3.html|/sem/trademarkpage4.html|/sem/trademarkpage5.html|/sem/trademarkpage1.html|/sem/trademark.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID13-CID28", "SEM - Trademark Search", "SEM", -1, -1, "/sem/tmsearchpage.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID60-CID28", "SEM - Bankruptcy", "SEM", -1, -1, "/sem/bankruptcy_42_1.html|/sem/bankruptcy_42_2.html|/sem/bankruptcy.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID24-CID28", "SEM - LLP", "SEM", -1, -1, "/sem/limited-liability-partnership.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID38-CID28", "SEM - Real Estate Lease", "SEM", -1, -1, "/sem/real-estate-lease.html|/sem/real-estate-lease2.html|/sem/presignin/real-estate-lease.html", gsCMDomainNotMapped];

oaMappings[oaMappings.length] = ["PID73", "Contract Review", "PSD", 258, 73, "/contract-review/|/attorneys-lawyers/contract-review", gsCMDomainNotMapped];

oaMappings[oaMappings.length] = [gsCMEntityNameCheck, "Entity Name Availability Check", "BIZ FORMATION", 248, 68, "/additional-business-services/entity-name-check.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID107", "Entity Name Reservation", "BIZ FORMATION", 381, 107, "/additional-business-services/entity-name-reservation.html", gsCMDomainNotMapped];

oaMappings[oaMappings.length] = ["PID82", "Certified Copies", "BIZ ANCILLARY", 310, 82, "/additional-business-services/certified-copies.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID77", "Company Certificates", "Corporate-Supplies", 103, 77, gsCMFolderNotMapped, gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID78", "Company Seal", "Corporate-Supplies", 102, 78, gsCMFolderNotMapped, gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID79", "Corporate Kit", "Corporate-Supplies", 104, 79, gsCMFolderNotMapped, gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID80", "Initial Reports", "BIZ ANCILLARY", 308, 80, "/additional-business-services/initial-reports.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID84", "Professional Patent Drawings", "PATENT", 314, 84, "/patent-drawings/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID83", "RA-Standalone", "BIZ ANCILLARY", 307, 83, "/additional-business-services/registered-agent-services.html|/Questionnaire/StandAloneRA_Preflight.aspx", gsCMDomainNotMapped];
//oaMappings[ oaMappings.length ] = [ "Trust-Amendment", "Trust Amendment", "EP", 302, 74, gsCMFolderNotMapped, gsCMDomainNotMapped ];

//oaMappings[oaMappings.length] = ["CID6", "Family", "ASD", "354|339|344|349|351|316|336|347|359", "102|90|89|101|98|85|91|96|105", "comprehensive-divorce-3-step-process.html|comprehensive-divorce-pricing.html|comprehensive-divorce-services.html|comprehensive-divorce.html|child-custody-modification-3-step-process.html|child-custody-modification-pricing.html|child-custody-modification-services.html|child-custody-modification.html|child-support-modification-3-step-process.html|child-support-modification-pricing.html|child-support-modification-services.html|child-support-modification.html|guardianship-3-step-process.html|guardianship-pricing.html|guardianship-services.html|guardianship.html|home-sale-agreement-3-step-process.html|home-sale-agreement-pricing.html|home-sale-agreement-services.html|home-sale-agreement.html|separation-agreement-3-step-process.html|separation-agreement-pricing.html|separation-agreement-services.html|separation-agreement.html|spousal-support-modification-3-step-process.html|spousal-support-modification-pricing.html|spousal-support-modification-services.html|spousal-support-modification.html|stepparent-adoption-3-step-process.html|stepparent-adoption-pricing.html|stepparent-adoption-services.html|stepparent-adoption.html|legal-separation-3-step-process.html|legal-separation-pricing.html|legal-separation-services.html|legal-separation[0-9]*.html", gsCMDomainNotMapped];
//oaMappings[oaMappings.length] = ["CID5", "Contracts and Agreements", "ASD", "318|335|337|258", "92|87|88|73", "contract-drafting-3-step-process.html|contract-drafting-pricing.html|contract-drafting-services.html|contract-drafting.html|contract-review-3-step-process.html|contract-review-pricing.html|contract-review-services.html|contract-review.html|employment-agreement-3-step-process.html|employment-agreement-pricing.html|employment-agreement-services.html|employment-agreement.html|franchise-agreement-3-step-process.html|franchise-agreement-pricing.html|franchise-agreement-services.html|franchise-agreement.html", gsCMDomainNotMapped];

oaMappings[oaMappings.length] = ["PID97", "Trademark Dispute Letter", "ASD", 341, 97, "trademark-dispute-letter-3-step-process.html|trademark-dispute-letter-pricing.html|trademark-dispute-letter-services.html|trademark-dispute-letter.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID86", "Demand Letter", "ASD", 317, 86, "demand-letter-3-step-process.html|demand-letter-pricing.html|demand-letter-services.html|demand-letter.html", gsCMDomainNotMapped];
//oaMappings[oaMappings.length] = ["CID4", "Attorney Services", "", -1, -1, "^/attorneys-lawyers/$|/attorneys-lawyers/index.html", gsCMDomainNotMapped];


oaMappings[oaMappings.length] = ["CID22", "SEM - ASD FAM", "", -1, -1, "/sem/ChildCustody.html|/sem/ChildSupport.html|/sem/child-support.html|/sem/Separation.html|/sem/separationpage-1.html|/sem/separationpage-1a.html|/sem/separationpage-2.html|/sem/SpousalSupport.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["CID21", "SEM - ASD Contracts and Agreements", "", -1, -1, "/sem/contract-draftingpage1.html|/sem/contract-draftingpage2.html|/sem/contract-review-or-drafting.html|/sem/contract-reviewpage1.html|/sem/contract-reviewpage2.html|/sem/divorcepage-1.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["CID24", "SEM - EP", "", -1, -1, "/sem/estate-planning.html|/sem/free-estate-planning-guide.html|/sem/free-estate-planning-guide-confirm.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID100-CID28", "SEM - Pet Agreement", "", -1, -1, "/sem/petagreement.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID113-CID28", "SEM - Attorney Services", "", -1, -1, "/sem/legal-plans.html", gsCMDomainNotMapped];
// new entries
oaMappings[oaMappings.length] = ["PID72", "Attorney-Assisted Prenuptial Agreements", "", 138, 72, "/prenuptial/|/prenuptial-faq/|/prenuptial-glossary/|/prenuptial-guide/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID90", "Child Custody Modification", "", 339, 90, "/attorneys-lawyers/child-custody-modification", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID89", "Child Support Modification", "", 344, 89, "/attorneys-lawyers/child-support-modification", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID87", "Contract Drafting", "", 337, 87, "/attorneys-lawyers/contract-drafting", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID88", "Employment Agreement Drafting", "", 335, 88, "/attorneys-lawyers/employment-agreement", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID101", "Guardianship", "", 349, 101, "/attorneys-lawyers/guardianship", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID98", "Home Sale", "", 351, 98, "/attorneys-lawyers/home-sale-agreement", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID105", "Legal Separation", "", 359, 105, "/attorneys-lawyers/legal-separation", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID100", "Pet Protection Agreement", "", 346, 100, "/pet-protection-faq/|/pet-protection-guide/|/pet-trust-agreement/", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID106", "Postnuptial Agreement", "", 365, 106, "/attorneys-lawyers/postnuptial-agreement", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID103", "Prenuptial Review", "", 363, 103, "/attorneys-lawyers/prenuptial-agreement-review", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID85", "Separation Agreement", "", 316, 85, "/attorneys-lawyers/separation-agreement", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID91", "Spousal Support Modification", "", 336, 91, "/attorneys-lawyers/spousal-support-modification", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID92", "Standalone Franchise Agreement Review", "", 318, 92, "/attorneys-lawyers/franchise-agreement", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID96", "Stepparent Adoption", "", 347, 96, "/attorneys-lawyers/stepparent-adoption", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID95", "Attorney Consultation", "", 342, 95, gsCMFolderNotMapped, gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID102", "Divorce - ASD", "", 354, 102, gsCMFolderNotMapped, gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID93-CID28", "SEM - S-Corp Preparation", "", -1, -1, "/sem/s-corp26.html|/sem/s-corp26_video.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["CID33-CID28", "SEM - Business Formation", "", -1, -1, "/sem/business_formation26.html|/sem/business_formation26_video.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["CID54", "Business General", "", -1, -1, "national-business-month.html|/business-formations/business-formations.html|/business-formations/business-formations2.html|/business-formations/business-formations3.html|/business-formations/business-formations-control.html|/sem-incorporation-a/incorporation-llc.html|/business-formations/compare-documents.html|/business-formations/summary-compare-business-formations.html|/business-in-a-box/business-formations.html|/business-in-a-box/business-in-a-box.html|/sem-incorporation-a/business-compare.html|/businessresources/businessservices_graphic_design.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = [gsCMLegalID, "Legal", "", -1, -1, "complete-package-terms-of-service.html|divorce-satisfaction-guarantee.html|/disclaimer.html|/disclaimer-popup.html|/peace-of-mind-popup.html|/privacy-policy.html|/satisfaction-guarantee.html|/privacy-policy-popup.html|/BrainNET/TermsOfService/|/terms_of_service.html|/terms_of_service_contract-popup.html|/terms-of-service.html|/terms_of_service-popup.html|/terms-of-use.html|/ra-terms-of-use.html|/subscription-terms-of-service.html|/legal-plans-contract.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["CID102", "Secure Guarantee", "", -1, -1, "/" + gsCMSecureGuarantee, gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["CID56", "Site Map", "", -1, -1, "/site_directory.html|/site-map|/sitemap-|/site_directory.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["CID65", "IP General", "", -1, -1, "/trademarks-patents-copyrights/free-patent-guide.html|/trademarks-patents-copyrights/lz_full_patent_splash.html|/trademarks-patents-copyrights/patent-overview.html|patent-overview-page.html|/trademarks-patents-copyrights/patent-overview-full.html|/trademarks-patents-copyrights/summary-compare-patents.html|/trademarks-patents-copyrights/summary-compare-trademark-copyright.html|/trademarks-patents-copyrights/trademark-ancillary-products-overview.html|/trademarks-patents-copyrights/trademark-overview.html|/trademarks-patents-copyrights/trademarks-patents-copyrights.html|/legalguides-patent/onlineguide.html|/legalguides-patent/onlineguide-page10.html|/legalguides-patent/onlineguide-page11.html|/legalguides-patent/onlineguide-page12.html|/legalguides-patent/onlineguide-page13.html|/legalguides-patent/onlineguide-page2.html|/legalguides-patent/onlineguide-page3.html|/legalguides-patent/onlineguide-page4.html|/legalguides-patent/onlineguide-page5.html|/legalguides-patent/onlineguide-page6.html|/legalguides-patent/onlineguide-page7.html|/legalguides-patent/onlineguide-page8.html|/trademarks-patents-copyrights/compare-documents.html|/legalguides-patent/onlineguide-page9.html|/business-in-a-box/intellectual-property.html|/sem/get-patent-full.html|celebrate_innovation.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["CID60", "PSD General", "", -1, -1, "/family-law/family-law.html|/wills-estate-planning/compare-documents.html|/wills-estate-planning/summary-compare-wills.html|/wills-estate-planning/wills-estate-planning.html|/wills-estate-planning/wills-estate-planning-documents.asp|/wills-estate-planning/free-estate-planning-guide.html|/legalguides-estateplanning/onlineguide-page2.html|/legalguides-estateplanning/onlineguide-page3.html|/legalguides-estateplanning/onlineguide-page4.html|/legalguides-estateplanning/onlineguide-page5.html|/legalguides-estateplanning/onlineguide-page6.html|/legalguides-estateplanning/onlineguide-page7.html|/legalguides-estateplanning/onlineguide-page8.html", gsCMDomainNotMapped];

oaMappings[oaMappings.length] = ["CID62", "ASD Member Center", "", -1, -1, "/members/MyAccount-legaladvantageplus.asp|/members/MyAccount-businessadvantagepro.asp|/members/MyAccount-legaledgeplus.asp|/members/MyAccount-legaledge.html|/members/MyAccount-businessadvantage.html|/members/MyAccount-legaladvantage.html|/ASMemberCenter/AdditionalBenefits.aspx|/ASMemberCenter/AttorneyConsultations.aspx|/ASMemberCenter/EPDocs.aspx|/ASMemberCenter/ExpiredPage.aspx|/ASMemberCenter/LegalForms.aspx", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["CID63", "Corporate Center", "", -1, -1, "/RACorporateCenter/CompanyDashboard.aspx|/RACorporateCenter/CompanyProfile.aspx|/RACorporateCenter/ServiceOfProcess.aspx|/RACorporateCenter/Alerts.aspx|/RACorporateCenter/CompanyProfileUpdate_ConfirmationWindow.htm|/RACorporateCenter/CompanyProfileUpdateCoreEntity_Confirmation.htm|/RACorporateCenter/ErrorPage.aspx|/RACorporateCenter/help_BusinessType.html|/RACorporateCenter/help_CompanyName.html|/RACorporateCenter/help_CorporateStatus.html|/RACorporateCenter/help_FiscalYearEnd.html|/RACorporateCenter/help_FormationDate.html|/RACorporateCenter/help_FormationState.html|/RACorporateCenter/help_FQFormationState.htm|/RACorporateCenter/help_ParValue.html|/RACorporateCenter/help_RegdAddlStates.html|/RACorporateCenter/help_SharesOutstanding.html|/RACorporateCenter/help_TaxMattersMember.html|/RACorporateCenter/help_TurnOffAlerts.htm|/RACorporateCenter/help_TurnOnAlerts.htm|/RACorporateCenter/ServiceOfProcess.aspx|/RACorporateCenter/SuppressTurnOff_ConfirmationWindow.html|/RACorporateCenter/SuppressTurnOn_ConfirmationWindow.htm|/LZWEB/Members/RACorpCenter.aspx", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["CID66", "Videos", "", -1, -1, "/videos", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["CID41", "General", "", -1, -1, "^/attorneys-lawyers/$|/attorneys-lawyers/index.html|/attorney-connect/Default.aspx|/attorney-connect/Control.aspx|/attorney-connect/LegalIssue.aspx|/attorney-locator/10-point-standard.aspx|/attorney-locator/AdditionalQuestionnaire1.aspx|/attorney-locator/AdditionalQuestionnaire2.aspx|/attorney-locator/confidential.aspx|/attorney-locator/confirmation.asp|/attorney-locator/confirmation.aspx|/attorney-locator/contact.asp|/attorney-locator/Contact.aspx|/attorney-locator/Control.aspx|/attorney-locator/experience.aspx|/attorney-locator/index.html|/attorney-locator/languageNdescription.aspx|/attorney-locator/no-obligation-free-service.aspx|/attorney-connect/Confirmation.aspx", gsCMDomainNotMapped];

oaMappings[oaMappings.length] = [gscmADPBAP, "Business Advantage Pro Standalone", "", 396, 109, "/attorneys-lawyers/business-advantage-pro.html|/attorneys-lawyers/legal-plans/business.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = [gsASLAP, "LAP 14-Day Attorney Consultation", "BIZ", 399, 112, "/attorneys-lawyers/legal-advantage-plus.html|/attorney-access/|/attorneys-lawyers/legal-plans/personal.html", gsCMDomainNotMapped];
//oaMappings[oaMappings.length] = [gsASLAP, "Legal Advantage Plus Standalone", "", 396, 112, "/attorneys-lawyers/legal-advantage-plus.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID108", "Compliance Calendar", "", 395, 108, "/additional-business-services/compliance-calendar-services.html|/Questionnaire/ComplianceCalender_Preflight.aspx", gsCMDomainNotMapped];

oaMappings[oaMappings.length] = ["PID63-CID28", "SEM - Partnership Agreement", "SEM", -1, -1, "/SEM/PARTNERSHIPPAGE.HTML", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID72-CID28", "SEM - Prenuptial Agreement", "SEM", -1, -1, "/SEM/PRENUPTIAL-AGREEMENT.HTML", gsCMDomainNotMapped];

oaMappings[oaMappings.length] = ["CID69", "Business Spotlight", "", -1, -1, "/BUSINESS-SPOTLIGHT/", gsCMDomainNotMapped];

oaMappings[oaMappings.length] = ["PID" + giCMDesignPatent + "-CID28", "SEM - Design Patent", "SEM", -1, -1, "/sem/get-a-patent.html|/sem/get-a-patent-b.html", gsCMDomainNotMapped];

oaMappings[oaMappings.length] = ["PID126", "Last Will and Testament", "", 494, 126, "/espanol/testamento.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID127", "Power of Attorney", "", 496, 127, gsCMRECategoryNotMapped, gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID128", "Living Will", "", 495, 128, gsCMRECategoryNotMapped, gsCMDomainNotMapped];

oaMappings[oaMappings.length] = ["CID109", "Spanish Legal", "", -1, -1, "/espanol/user-agreement-es.asp|/espanol/disclaimer-es.html|/espanol/disclaimer-popup-es.html|/espanol/privacy-policy-popup-es.html|/espanol/subscription-terms-of-service-es.html|/espanol/terms-of-use-es.html|/espanol/terms_of_service-es.html|/espanol/testamento-legal.html", gsCMDomainNotMapped];

oaMappings[oaMappings.length] = ["PID124", "Legal Advantage Plus Attorney Consultation", "", 436, 124, gsCMRECategoryNotMapped, gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID122", "Business Advantage Pro Attorney Consultation", "", 431, 122, gsCMRECategoryNotMapped, gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID123", "Business Advantage Pro (IP) Attorney Consultation", "", 437, 123, gsCMRECategoryNotMapped, gsCMDomainNotMapped];

oaMappings[oaMappings.length] = ["CID112", "Attorney Services", "", -1, -1, "/espanol/abogado.html|/espanol/lap-bap-qual.html|/docstoc/legal-plans.html", gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID132", "Business Advantage Pro Standalone", "", -1, 132, gsCMRECategoryNotMapped, gsCMDomainNotMapped];
oaMappings[oaMappings.length] = ["PID131", "Legal Advantage Plus Attorney Consultation", "", -1, 131, gsCMRECategoryNotMapped, gsCMDomainNotMapped];

oaMappings[oaMappings.length] = ["CID111", "Notary Center", "", -1, -1, "/notarycenter/", gsCMDomainNotMapped];


var giNotFound = -99;

var igCMConversionEventStart = 1;
var igCMConversionEventComplete = 2;

function getSLocation() { return String(document.location); }
function getIFromLocation(sProcess) {
    var iOut = giNotFound;
    var sLocation = getSLocation();
    var reClean = new RegExp(sProcess, "gim");
    var re = new RegExp(sProcess.replace(/\|/gim, "[0-9]+|") + "[0-9]+", "gim");
    var match = sLocation.match(re);
    iOut = match ? String(match[0]).replace(reClean, "") : iOut;
    return iOut;
}
function getIProcessParam() { return getIFromLocation("iProcess=|iPid=|iP="); }
function getFieldFromMappings(iProdID, iArrayIndex, iFieldIndex) {
    var re = new RegExp("^" + iProdID + "$|^" + iProdID + "\\||\\|" + iProdID + "$|\\|" + iProdID + "\\|", "gim");
    var sOut = "";
    for (var i = 0; sOut == "" && i < oaMappings.length; i++) {
    sOut = String(oaMappings[i][iArrayIndex]).match(re) ? oaMappings[i][iFieldIndex] : sOut;
    }
    return sOut;
}
function matchCategoryToID(iProdID, iArrayIndex) {
    return getFieldFromMappings(iProdID, iArrayIndex, giCMCategoryID)
}
function getProductDescription(iProdID, iArrayIndex) {
    return getFieldFromMappings(iProdID, iArrayIndex, giCMCategoryDescription)
}

function matchCategoryToIQuestionnaire() { return matchCategoryToID(getIQuestionnaireFromLocation(), giCMQuestionnaire); }
function matchCategoryToIProcess() { return matchCategoryToID(getIProcessParam(), giCMProcess) }
function getParameterFromString(sIn, sParamName) {
    var sTag = sParamName + "=";
    var re = new RegExp(sTag + "[^&]+", "gim");
    var match = sIn.match(re);
    var sOut = match ? String(match).replace(new RegExp(sTag, "gim"), "") : null;
    return sOut;
}
function getParameter(sParamName) { return getParameterFromString(getSLocation(), sParamName); }
function getTimeString() { return getParameter("TIMESTRING"); }
function get_cm_mmc() { return getParameter("cm_mmc"); }
function getQPageRE(sIn) {
    var sStart = "/questionnaire/QPage_"
    var sEnd = "_[0-9]+.asp";
    var sOut = sIn == -1 ? "" : sStart + String(sIn).replace(/\|/gi, sEnd + "|" + sStart) + sEnd;
    return sOut;
}
function cmBSearchCategory(sCategory) { return sCategory == gsCMSearchCategory; }
function cmBProvisionalPatent(sCategory) { return sCategory == gsCMProvPatID; }
function cmIGetRightNowSearchResults() { return getParameter("iSearchResults"); }
function cmBGoogleSearchResults() { return getSLocation().match(new RegExp(cmgsGoogleSearch, "gim")); }
function cmGetGoogleSearch() {
    var sOut = "";
    try {
    sOut = gcmsSearch;
    } catch (e) {
    sOut = getLZOriginalSearchResultsTerm(); // fall back
    }
    return sOut;
}
function cmGetGoogleSearchResultCount() {
    var iOut = 1;
    try {
    iOut = gcmsResults;
    } catch (e) { }
    return iOut;
}
function getRightNowparam(sParamName) {
    var sTemp = unescape(getParameter("sURL"));
    return getParameterFromString(sTemp, sParamName);
}
function cmIGetLegalZoomSearchResults() {
    var iOut = 1;
    try {
    iOut = cmBGoogleSearchResults() ? cmGetGoogleSearchResultCount() : iSearchResultCount;
    } catch (e) { }
    return iOut;
}
function cmGetSearchResultsNumber(sCategory) {
    var bRightNow = cmBRightNowSearchResults();
    var iOut = bRightNow ? cmIGetRightNowSearchResults() : cmIGetLegalZoomSearchResults();
    return cmBSearchCategory(sCategory) ? iOut : null;
}
function cmBRightNowSearchResults() { return getSLocation().match(new RegExp(gsCMSearchRightNowRE, "gim")); }
function getLZOriginalSearchResultsTerm() { return getParameter("q"); }
function getLegalZoomSearchResultsTerm() {
    var sOut = cmBGoogleSearchResults() ? cmGetGoogleSearch() : getLZOriginalSearchResultsTerm();
    return sOut;
}
function getRightNowSearchResultsTerm() { return getRightNowparam("p_search_text"); }
function cmGetSearchTerm(sCategory) {
    var bRightNow = cmBRightNowSearchResults();
    var sOut = bRightNow ? getRightNowSearchResultsTerm() : getLegalZoomSearchResultsTerm();
    return cmBSearchCategory(sCategory) ? sOut : null;
}
function getPageMappingsLocation() {
    var sLocation = getSLocation();
    var re = new RegExp(document.location.protocol + "//" + document.location.host + "|" + document.location.hash, "gim");
    var sOut = sLocation.replace(re, "");
    sOut = sOut.replace(/\?.*$/gim, "");
    return unescape(sOut);
}
function getFKProduct() {
    var iOut = giNotFound;
    try {
    iOut = fkProduct ? fkProduct : iOut;
    } catch (e) { }
    return iOut;
}
function getPageMappings() {
    var oaFound = null;
    var sLocation = getPageMappingsLocation();
    var bDynProc = cmGetiProcessID() != "";
    var iProcess = bDynProc ? cmGetiProcessID() : getIProcessParam();
    var reProcess = new RegExp("\\|" + iProcess + "\\|", "gim");
    var bUseIProcess = bDynProc || sLocation.match(/\/Questionnaire\/bad_state.asp/gim);
    var reFKProduct = new RegExp("\\|" + iFKProduct + "\\|", "gim");
    var bUseFKProduct = sLocation.match(/\/questionnaire\/select_state_new.asp/gim);
    var iFKProduct = bUseFKProduct ? getFKProduct() : -1;
    var bUseIQ = sLocation.match(/\/questionnaire\/review_answers.asp|\/brainnet\/questionnaire.aspx|\/brainnet\/huge.aspx/gim);
    var iQuestionnaire = getIQuestionnaireFromLocation();
    var sFullPath = getSLocation();
    var reDomain = null;
    var matchDomain = null;
    var bUseQuestionnairePage = true;
    var sQPageRE = "";
    var sREQuestionnairePage = "";
    var reIQ = new RegExp("\\|" + iQuestionnaire + "\\|", "gim");
    var re = null;
    var sSearch = null;
    var iSearchResults = null;
    var sCategory = "UNK";

    for (var i = 0; i < oaMappings.length; i++) {
        if (bUseQuestionnairePage) {
            sQPageRE = getQPageRE(oaMappings[i][giCMQuestionnaire]);
            sREQuestionnairePage = (sQPageRE == "" ? "" : "|") + sQPageRE;
        }
        re = new RegExp(oaMappings[i][giCMPath] + sREQuestionnairePage, "gim");
        reDomain = new RegExp(oaMappings[i][giCMDomain], "gim");
        matchDomain = sFullPath.match(reDomain);
        if (sLocation.match(re) ||
            (bUseIQ && String("|" + oaMappings[i][giCMQuestionnaire] + "|").match(reIQ)) ||
            (bUseFKProduct && String("|" + oaMappings[i][giCMProcess] + "|").match(reFKProduct)) ||
            (bUseIProcess && String("|" + oaMappings[i][giCMProcess] + "|").match(reProcess)) ||
            (matchDomain)
            ) {
            oaFound = oaMappings[i];
            break;
        }
    }
    return oaFound;
}
function cmGetPageID(sLocation) {
    var reBusinessResources = new RegExp(cmGSBusinessResourcesDomain + "[\\/\\\\]*$");
    var sOut = sLocation.replace(/http[s]*:\/\/[^\/]+|\?.+$|file:\/\/\/C:/gi, "");
    sOut = sLocation.match(reBusinessResources) ? cmGSBusinessResourcesDomain : sOut;
    return sOut;
}
// ___________________________________________________________________________________________________________ product specific page view page ID START
//function getIQuestionnaireFromLocation(){ return getIFromLocation( "qpage_|iq=" ); }
// updated for dynamic page ID
function getIQuestionnaireFromLocation() {
    var reQPageClassic = /qpage_[0-9]+_[0-9]+.asp/gim;
    var reQPageNet = /questionnaire.aspx|\/brainnet\/huge.aspx/gim;
    var iOut = giNotFound;
    var sLocation = getSLocation();
    if (sLocation.match(reQPageClassic)) {
    iOut = getIFromLocation("qpage_|iq=");
    } else if (sLocation.match(reQPageNet)) {
    try {
    iOut = iQuestionnaire;
    } catch (e) { }
    }
    return iOut;
}

var saOldIQ2IPMap = [];
saOldIQ2IPMap[32] = 4;
saOldIQ2IPMap[33] = 4;
saOldIQ2IPMap[34] = 4;
saOldIQ2IPMap[66] = 4;
saOldIQ2IPMap[121] = 4;
saOldIQ2IPMap[123] = 4;
saOldIQ2IPMap[125] = 4;
saOldIQ2IPMap[154] = 4;
saOldIQ2IPMap[175] = 4;
saOldIQ2IPMap[214] = 4;
saOldIQ2IPMap[236] = 4;
saOldIQ2IPMap[237] = 4;
saOldIQ2IPMap[55] = 5;
saOldIQ2IPMap[64] = 8;
saOldIQ2IPMap[18] = 12;
saOldIQ2IPMap[77] = 13;
saOldIQ2IPMap[80] = 14;
saOldIQ2IPMap[155] = 15;
saOldIQ2IPMap[20] = 16;
saOldIQ2IPMap[94] = 17;
saOldIQ2IPMap[21] = 19;
saOldIQ2IPMap[29] = 22;
saOldIQ2IPMap[130] = 23;
saOldIQ2IPMap[131] = 24;
saOldIQ2IPMap[163] = 25;
saOldIQ2IPMap[161] = 26;
saOldIQ2IPMap[162] = 27;
saOldIQ2IPMap[105] = 28;
saOldIQ2IPMap[108] = 29;
saOldIQ2IPMap[133] = 35;
saOldIQ2IPMap[139] = 38;
saOldIQ2IPMap[134] = 39;
saOldIQ2IPMap[85] = 40;
saOldIQ2IPMap[140] = 41;
saOldIQ2IPMap[141] = 42;
saOldIQ2IPMap[118] = 44;
saOldIQ2IPMap[187] = 44;
saOldIQ2IPMap[191] = 44;
saOldIQ2IPMap[196] = 44;
saOldIQ2IPMap[204] = 44;
saOldIQ2IPMap[206] = 44;
saOldIQ2IPMap[207] = 44;
saOldIQ2IPMap[212] = 44;
saOldIQ2IPMap[149] = 45;
saOldIQ2IPMap[167] = 45;
saOldIQ2IPMap[168] = 45;
saOldIQ2IPMap[169] = 45;
saOldIQ2IPMap[170] = 45;
saOldIQ2IPMap[171] = 45;
saOldIQ2IPMap[172] = 45;
saOldIQ2IPMap[183] = 45;
saOldIQ2IPMap[184] = 45;
saOldIQ2IPMap[188] = 45;
saOldIQ2IPMap[192] = 45;
saOldIQ2IPMap[106] = 47;
saOldIQ2IPMap[148] = 48;
saOldIQ2IPMap[173] = 49;
saOldIQ2IPMap[150] = 50;
saOldIQ2IPMap[159] = 51;
saOldIQ2IPMap[160] = 52;
saOldIQ2IPMap[158] = 53;
saOldIQ2IPMap[164] = 54;
saOldIQ2IPMap[166] = 55;
saOldIQ2IPMap[215] = 56;
saOldIQ2IPMap[234] = 57;
saOldIQ2IPMap[235] = 58;
saOldIQ2IPMap[233] = 59;
saOldIQ2IPMap[174] = 60;
saOldIQ2IPMap[240] = 62;
saOldIQ2IPMap[243] = 63;
saOldIQ2IPMap[242] = 64;
saOldIQ2IPMap[244] = 65;
saOldIQ2IPMap[230] = 66;
saOldIQ2IPMap[247] = giCMProvPatIP;
saOldIQ2IPMap[248] = 68;
saOldIQ2IPMap[250] = giCMDesignPatent;
saOldIQ2IPMap[251] = giCMUtilPatStep1;
saOldIQ2IPMap[253] = giCMUtilPatStep2;
saOldIQ2IPMap[138] = 72;
saOldIQ2IPMap[304] = 75;
saOldIQ2IPMap[303] = 76;
saOldIQ2IPMap[103] = 77;
saOldIQ2IPMap[102] = 78;
saOldIQ2IPMap[104] = 79;
saOldIQ2IPMap[308] = 80;
saOldIQ2IPMap[309] = 81;
saOldIQ2IPMap[310] = 82;
saOldIQ2IPMap[307] = 83;
saOldIQ2IPMap[314] = 84;
saOldIQ2IPMap[357] = 94;
saOldIQ2IPMap[54] = 9
saOldIQ2IPMap[58] = 3
saOldIQ2IPMap[57] = 3
saOldIQ2IPMap[17] = 11
saOldIQ2IPMap[49] = 6
saOldIQ2IPMap[346] = 100
saOldIQ2IPMap[59] = 3
saOldIQ2IPMap[494] = 126
saOldIQ2IPMap[495] = 128
saOldIQ2IPMap[496] = 127

saOldIQ2IPMap[436] = 124
saOldIQ2IPMap[431] = 122
saOldIQ2IPMap[437] = 123

var saIPAbbr = [];
saIPAbbr[giNotFound] = "UNK";
saIPAbbr[1] = "Inc";
saIPAbbr[2] = "LLC";
saIPAbbr[3] = "LT";
saIPAbbr[4] = "Div";
saIPAbbr[6] = "LWT";
saIPAbbr[7] = "TM";
saIPAbbr[8] = "Copyright";
saIPAbbr[9] = "LW";
saIPAbbr[11] = "POA";
saIPAbbr[13] = "TMSrch";
saIPAbbr[14] = "TMMon";
saIPAbbr[15] = "NameChg";
saIPAbbr[18] = "DBA";
saIPAbbr[20] = "NP";
saIPAbbr[22] = "SMClaims";
saIPAbbr[23] = "LP";
saIPAbbr[24] = "LLP";
saIPAbbr[25] = "Amend";
saIPAbbr[26] = "Dissolution";
saIPAbbr[27] = "FQ";
saIPAbbr[29] = "CertGdStnd";
saIPAbbr[35] = "SMClaims";
saIPAbbr[38] = "ResLease";
saIPAbbr[39] = "CorpMinPrep";
saIPAbbr[40] = "LWT";
saIPAbbr[42] = "CorpMinSub";
saIPAbbr[44] = "SellPermit";
saIPAbbr[45] = "TaxID";
saIPAbbr[47] = "Conversion";
saIPAbbr[48] = "REDeed";
saIPAbbr[49] = "EINobt";
saIPAbbr[51] = "TMSect8";
saIPAbbr[52] = "TMRenew";
saIPAbbr[53] = "TMUse";
saIPAbbr[54] = "TMUseExt";
saIPAbbr[55] = "TMAssign";
saIPAbbr[57] = "BusLic";
saIPAbbr[59] = "501c3";
saIPAbbr[60] = "Bkrpt";
saIPAbbr[62] = "Forms";
saIPAbbr[63] = "GPAgmt";
saIPAbbr[64] = "JtVenture";
saIPAbbr[65] = "PatSrch";
saIPAbbr[giCMProvPatIP] = "PatProv";
saIPAbbr[68] = "ENC";
saIPAbbr[giCMDesignPatent] = "PatDesign";
saIPAbbr[giCMUtilPatStep1] = "PatUtil";
saIPAbbr[giCMUtilPatStep2] = "PatFiling";
saIPAbbr[72] = "AttyPrenup";
saIPAbbr[73] = "ContRev";
saIPAbbr[75] = "BylawRes";
saIPAbbr[76] = "OpAgmt";
saIPAbbr[77] = "CompanyCerts";
saIPAbbr[78] = "CompanySeal";
saIPAbbr[79] = "CorpKit";
saIPAbbr[80] = "InitRep";
saIPAbbr[81] = "AnnRep";
saIPAbbr[82] = "CertCopies";
saIPAbbr[83] = "RA";
saIPAbbr[84] = "PatDraw";
saIPAbbr[85] = "SepAgmt";
saIPAbbr[86] = "DemLtr";
saIPAbbr[87] = "ContDraft";
saIPAbbr[88] = "EmplAgmt";
saIPAbbr[89] = "ChSuppMod";
saIPAbbr[90] = "ChCustMod";
saIPAbbr[91] = "SpsSuppMod";
saIPAbbr[92] = "FrncAgmtRev";
saIPAbbr[93] = "Scorp";
saIPAbbr[94] = "FormsSub";
saIPAbbr[95] = "LegAdvPlusPlan";
saIPAbbr[96] = "StepAdoption";
saIPAbbr[97] = "TMDispLtr";
saIPAbbr[98] = "HomeSale";
saIPAbbr[99] = "EPVault";
saIPAbbr[100] = "PetProtAgmt";
saIPAbbr[101] = "Guardianship";
saIPAbbr[102] = "AttyDiv";
saIPAbbr[103] = "PrenupRev";
saIPAbbr[105] = "LegalSep";
saIPAbbr[106] = "Postnup";
saIPAbbr[107] = "ENR";
saIPAbbr[108] = "CompCal";
saIPAbbr[109] = "BizAdvSA";
saIPAbbr[112] = "LegAdvSA";
saIPAbbr[126] = "LWT";
saIPAbbr[127] = "POA";
saIPAbbr[128] = "LW";

saIPAbbr[124] = "LegalAdvAttyConsultation";
saIPAbbr[122] = "BusAdvAttyConsultation";
saIPAbbr[123] = "BusAdvIPAttyConsultation";

var gsaDynPages = [];
//gsaDynPages["additionalproduct_popup.aspx"] = "";
//gsaDynPages["authorize.aspx"] = "";
//gsaDynPages["businessadvantagestandard.aspx"] = "";
gsaDynPages["checkout.aspx"] = "CCInfo-";
gsaDynPages["paymentmodal.aspx"] = "CCPaymentModal-";
gsaDynPages["payment.aspx"] = "CCPayment-";
//gsaDynPages["confirmation.aspx"] = "";
//gsaDynPages["contactprofile.aspx"] = "";
//gsaDynPages["continuingcoverageplan.aspx"] = "";
//gsaDynPages["default.aspx"] = "";
//gsaDynPages["default2.aspx"] = "";
//gsaDynPages["download.aspx"] = "";
//gsaDynPages["enr_preflight.aspx"] = "";
//gsaDynPages["foreignquals_preflight.aspx"] = "";
//gsaDynPages["guestsignin.aspx"] = "";
//gsaDynPages["legaladvantageplus.aspx"] = "";
//gsaDynPages["myaccount.aspx"] = "";
//gsaDynPages["myaccountdetail.aspx"] = "";
//gsaDynPages["myaccountprofile.aspx"] = "";
//gsaDynPages["myaccountprofileedit.aspx"] = "";
gsaDynPages["orderdone.aspx"] = "OrderDone-";
gsaDynPages["orderconfirmation.aspx"] = "OrderDone-";
gsaDynPages["posthug.aspx"] = "PostHug-";
//gsaDynPages["preprocess.aspx"] = "";
gsaDynPages["presignin.aspx"] = "PreSignIn-";
gsaDynPages["presignin1.aspx"] = "PreSignIn-";
gsaDynPages["prequal.aspx"] = "PreQual-";
//gsaDynPages["printablereceipt.aspx"] = "";
//gsaDynPages["products.aspx"] = "";
//gsaDynPages["productsdirect.aspx"] = "";
//gsaDynPages["proxyredirect.aspx"] = "";
//gsaDynPages["purchase.aspx"] = "";
//gsaDynPages["purchasepatherror.aspx"] = "";
//gsaDynPages["purchasereview.aspx"] = "";
gsaDynPages["purchase_lock-packages.aspx"] = "PLockPkg-";
gsaDynPages["purchase_lock.aspx"] = "PLock-";
gsaDynPages["purchase_lock_mod.aspx"] = "PLockMod-";
//gsaDynPages["purchase_lock_rev.aspx"] = "";
//gsaDynPages["questionnaire.aspx"] = "QPage";
//gsaDynPages["qpage.asp"] = "QPage";
// the qpage_27_1.asp will be a problem;
//gsaDynPages["racorpcenter.aspx"] = "";
gsaDynPages["review_answers.asp"] = "RYA-";
gsaDynPages["reviewanswers.aspx"] = "RYA-";
gsaDynPages["reviewpurchase.aspx"] = "RevPurch-";
gsaDynPages["reviewyouranswers.aspx"] = "RYA-";
gsaDynPages["reviewyouranswers_mod.aspx"] = "RYAMod-";
gsaDynPages["ringcentral.aspx"] = "RingCentral-";
gsaDynPages["select_state_new.aspx"] = "StateSel-";
gsaDynPages["selfreferral-multi.aspx"] = "SelfRefMulti-";
gsaDynPages["selfreferral.aspx"] = "SelfRef-";
gsaDynPages[gsCMSecureGuarantee] = "SecGuar-";
//gsaDynPages["sendto.aspx"] = "";
//gsaDynPages["sessiontimeout.aspx"] = "";
gsaDynPages["signin.aspx"] = "SignIn-";
gsaDynPages["signin1.aspx"] = "SignIn-";
gsaDynPages["businessadvantagepro.aspx"] = "BAPInterstitial-";
gsaDynPages["bapringcentral.aspx"] = "BAPRingCInterstitial-";
gsaDynPages["bapexpeditprocessing.aspx"] = "BAPExpedInterstitial-";
//gsaDynPages["standalonera_preflight.aspx"] = "";
//gsaDynPages["taxestimator.aspx"] = "";
var iaDynPageProcessRemap = [];
iaDynPageProcessRemap[22] = 35;

function cmSetLWTQReworkTestTag() {
    var gCMLWTTestControl = /\|269420"|\|269421"|\|269480"|\|271329"|\|269726"|\|268526"|\|268536"|\|269252"|\|269253"|\|27031"|\|27032"|\|27040"|\|27041"|\|8367"|\|8369"|\|7487"|\|7489"|\|7494"|\|27051"|\|27052"|\|7490"|\|7498"|\|7500"|\|27055"|\|27056"|\|27057"|\|27058"|\|7483"|\|264744"|\|264515"|\|264516"|\|7478"|\|27042"|\|27043"|\|29447"|\|29448"|\|29449"|\|27044"|\|27045"|\|27046"|\|27047"|\|7480"|\|7482"|\|7486"|\|8368"|\|7492"|\|27049"|\|27050"|\|27053"|\|27054"|\|7496"|\|7503"|\|7504"|\|7505"|\|269770"|\|7488"|\|9958"|\|27064"|\|27065"|\|7501"|\|7502"|\|27068"|\|27069"|\|23462"|\|7476"|\|9962"|\|9963"|\|255272"|\|255269"|\|8370"|\|7484"|\|7485"|\|255244"|\|255246"|\|255247"|\|255248"|\|255249"|\|255250"|\|255251"|\|255252"|\|255253"|\|255254"|\|255255"|\|255256"|\|255257"|\|255258"|\|255259"|\|255260"|\|255261"|\|255262"|\|255263"|\|255264"|\|258760"|\|255243"|\|268525"|\|7469"|\|7470"|\|7471"|\|7472"|\|7473"|\|7474"|\|258759"|\|263744/gim;
    var gCMLWTTestExperiment = /\|278920"|\|278921"|\|278925"|\|278926"|\|278931"|\|278932"|\|278933"|\|278935"|\|278939"|\|278940"|\|278941"|\|278943"|\|278944"|\|278945"|\|278946"|\|278947"|\|278949"|\|278979"|\|278980"|\|278981"|\|278969"|\|278970"|\|278971"|\|278972"|\|278973"|\|278974"|\|278975"|\|278976"|\|278977"|\|278978"|\|278961"|\|278962"|\|278953"|\|278954"|\|278951"|\|278968"|\|278966"|\|278999"|\|279000"|\|279017"|\|279006"|\|279002"|\|278993"|\|278994"|\|278990"|\|279015"|\|279016"|\|279420"|\|278992"|\|279018"|\|279019"|\|278996"|\|278998"|\|278982"|\|278983"|\|278984"|\|278985"|\|278986"|\|278987"|\|278988"|\|279409"|\|279410"|\|279422"|\|279412"|\|279413"|\|279419"|\|279414"|\|279007"|\|279004"|\|279416"|\|279421"|\|279424"|\|279402"|\|279403"|\|279404"|\|279405"|\|279406"|\|279407"|\|279408"|\|279411"|\|279423"|\|279441/gim;
    var iProcess = cmGetShopProcess();
    var sContent = "";
    var sCategory = "LZ - Test";
    var sElement = "";
    var iPage = -1;
    var reTest = /\|[0-9]+"/gim
    if (iProcess == cmGILWTPID) {
        sContent = document.body.innerHTML;
        iPage = cmGetQPageNo();
        // if first page of the questionnaire do not track as part of the test.
        if (iPage > 1) {
            if (sContent.match(gCMLWTTestControl)) {
                sElement = "LWT QPage Test P" + iPage + " - Control"
            } else if (sContent.match(gCMLWTTestExperiment)) {
                sElement = "LWT QPage Test P" + iPage + " - Experiment"
            }
            if (sElement != "") {
                cmCreateElementTag(sElement, sCategory)
            }
        }
    }
}
function getPage() { return String(window.location.pathname.match(/[^\/\\]+$/gim)); }
function isDynPage() {
    var sPage = getPage().toLowerCase();
    var reDyn = new RegExp(gsCMSecureGuarantee + "|asp[x]*$", "gim");
    return sPage.match(reDyn) && gsaDynPages[sPage] ? true : false;
}
function cmGetDynamicPageProcess() {
    var iProcess = cmGetShopProcess();
    return iaDynPageProcessRemap[iProcess] ? iaDynPageProcessRemap[iProcess] : iProcess;
}
function cmGetDynPageQuestionnairePageNum(bClassic, sPage) {
    var iOut = giNotFound;
    var mTmp = null;
    if (bClassic) {
        mTmp = sPage.match(/_[0-9]+.asp/gim);
        iOut = mTmp ? mTmp[0].replace(/[^0-9]+/gim, "") : iOut;
    } else {
        iOut = cmGetQPageNo();
    }
    return iOut;
}
function cmGetPageQuestionnairePagePID(bClassic, sPage) {
    var iOut = giNotFound;
    var mTmp = null;
    if (bClassic) {
        mTmp = sPage.match(/_[0-9]+_/gim);
        iOut = mTmp ? mTmp[0].replace(/[^0-9]+/gim, "") : giNotFound;
        iOut = saOldIQ2IPMap[iOut] ? saOldIQ2IPMap[iOut] : giNotFound;
    } else {
        iOut = cmGetShopProcess();
    }
    return iOut;
}
function cmGetLandingPageTrackingPageIDPrefix() {
    var sCookie = String(document.cookie);
    var match = sCookie.match(/landing=[^;]+/gim);
    var sTag = match? String(match).replace(/landing=/gim,""):"";
    return sTag == ""? "": " - " + sTag;    
}
function cmGetDynPageQuestionnairePageID(sPage, oaMappings) {
    var reQPageClassic = /qpage_[0-9]+_[0-9]+.asp/gim;
    var reQPageNet = /questionnaire.aspx|huge.aspx/gim;
    var reHugeQPage = /huge.aspx/gim;
    var sPrefix = "QPage";
    var sQPageHuge = "-Huge";
    var iProcess = -99;
    var iPage = -99;
    var sProduct = "";
    var sProdAbbr = [];
    var sOut = "";
    var bQPage = false;
    if (sPage.match(reQPageClassic)) {
        sOut = sPrefix;
        iPage = cmGetDynPageQuestionnairePageNum(true, sPage);
        iProcess = cmGetPageQuestionnairePagePID(true, sPage);
        bQPage = true;
    } else if (sPage.match(reQPageNet)) {
        sOut = sPrefix;
        iPage = cmGetDynPageQuestionnairePageNum(false, sPage);
        iProcess = cmGetPageQuestionnairePagePID(false, sPage);
        bQPage = true;
    }
    sQPageHuge = (sPage.match(reHugeQPage) ? sQPageHuge : "");
    if (bQPage) {
        iProcess = iaDynPageProcessRemap[iProcess] ? iaDynPageProcessRemap[iProcess] : iProcess;
        sProdAbbr = saIPAbbr[iProcess];
        if (iProcess == giCMProvPatIP) {
            sOut = sPrefix + sQPageHuge + "-" + sProdAbbr + "-" + gsCMProvPatID + "-" + iPage + cmGetLandingPageTrackingPageIDPrefix();
        } else {
            sOut = sPrefix + sQPageHuge + "-" + sProdAbbr + "-PID" + iProcess + "-" + iPage + cmGetLandingPageTrackingPageIDPrefix();
        }
    }
    return sOut;
}
function cmGetDynPageAbbr(iProcess) {
    return saIPAbbr[iProcess];
}
function cmGetDynPageIDPrefix() {
    var sPage = getPage().toLowerCase();
    var sOut = (gsaDynPages[sPage] ? gsaDynPages[sPage] : "");
    return sOut == "" ? sPage + "-" : sOut;
}
function cmGetDynPageID(sLocation, oaMappings) {
    var sPage = String(sLocation.replace(/\?.*$/gim, "").match(/[^\/\\]+$/gim));
    var sPageID = cmGetDynPageQuestionnairePageID(sPage, oaMappings);
    if (sPageID == "" && isDynPage()) {
        var sPrefix = cmGetDynPageIDPrefix();
        var iPID = cmGetDynamicPageProcess();
        var sAbbr = cmGetDynPageAbbr(iPID);
        if (sAbbr) {
            if (iPID == giCMProvPatIP) {
                sPageID = sPrefix + sAbbr + "-" + gsCMProvPatID;
            } else {
                sPageID = sPrefix + sAbbr + "-PID" + iPID;
            }
        }
    }
    return sPageID;
}
function cmGetPageID(sLocation, oaMappings) { //oaFound
    var reBusinessResources = new RegExp(cmGSBusinessResourcesDomain + "[\\/\\\\]*$");
    var sOut = cmGetDynPageID(sLocation, oaMappings);
    sOut = sOut == "" ? sLocation.replace(/http[s]*:\/\/[^\/]+|[?#]+.*$|file:\/\/\/C:/gi, "") : sOut;
    sOut = sLocation.match(reBusinessResources) ? cmGSBusinessResourcesDomain : sOut;
    return sOut;
}
function cmGetCategory(sLocation, sCategory) {
    var sOut = sCategory;
    var rePLDetails = /\/checkout\/details_[0-9]+.html/gim;
    var sSubCat = "";
    var areSubCatPaths = /-faq[s]*[\/]+|-guide[\/]+|-glossary[\/]+|-state-requirements[\/]+|[\/]+llc[\/]+/gim; //llc/
    var saSubCats = [];
    saSubCats["-faq\/"] = "CID48";
    saSubCats["-faqs\/"] = "CID48";
    saSubCats["-guide\/"] = "CID49";
    saSubCats["-glossary\/"] = "CID50";
    saSubCats["-state-requirements\/"] = "CID51";
    saSubCats["\/llc\/"] = "CID51"; // this is an odd LLC state requirements folder
    saSubCats["details-page"] = "CID52";
    var sRevisionCatagory = cmGetRevisionCategory();
    var sPreQuestionnaire = "CID53";
    var sQuestionnaireCatID = "CID57";
    var sNOSubCat = "N-O-N-E";
    var saCIDExceptions = [];
    var saPIDExceptions = [];
    //saPIDExceptions[gsASLAP] = sNOSubCat;
    //saPIDExceptions[gscmADPBAP] = sNOSubCat;

    var reSigninException = new RegExp("/Welcome/PreSignIn[0-9]*.aspx|/Welcome/SignIn.aspx", "gim");
    var reIPPreProcess = new RegExp("/PreProcess/PreProcess.aspx", "gim");
    var reSEM = /^pid[0-9]+-CID/gim;
    var saExceptions = [];
    saExceptions["/501c3/eligibility.html|/501c3/help_[0-9]+.html|/Questionnaire/pre-qualification-[a-z\-]+.html|" + reIPPreProcess.source + "|" + reSigninException.source + "|/Questionnaire/Select_State_New.aspx|/Questionnaire/ForeignQuals_Preflight.aspx|/Questionnaire/ComplianceCalender_Preflight.aspx|/Questionnaire/StandAloneRA_Preflight.aspx|/Welcome/PreQual.aspx"] = sPreQuestionnaire;
    saExceptions["/brainnet/huge.aspx|/brainnet/questionnaire.aspx|/questionnaire/qpage_[0-9]+_[0-9]+|/questionnaire/review_answers.asp|/questionnaire/reviewyouranswers_mod.aspx|/questionnaire/reviewyouranswers.aspx|/RARenewals/Products.aspx|/RARenewals/ContactProfile.aspx"] = sQuestionnaireCatID;
    var reUseInCat = /\/Checkout\/cvv.html/gim;
    match = sLocation.match(areSubCatPaths)
    sSubCat = match ? saSubCats[match[0].toLowerCase()] : "";

    if (sSubCat == "" && !sCategory.match(reSEM) && (sCategory.match(/^PID[0-9]+/gim) || sCategory == gsCMFormsID || sCategory == gsCMProvPatID)) {
        sSubCat = saSubCats["details-page"];
    }
    for (var i in saExceptions) {
        reExceptions = new RegExp(i, "gim");
        mExceptions = sLocation.match(reExceptions);
        iProcess = cmGetShopProcess();
        if (mExceptions) {
            sSubCat = saExceptions[i];
            if (mExceptions[0].match(reIPPreProcess)) {
                sCategory = matchCategoryToID(getIProcessParam(), giCMProcess)
            } else if (mExceptions[0].match(reSigninException) && iProcess != 0) {
                sCategory = matchCategoryToID(getIProcessParam(), giCMProcess)
            if (String(iProcess).match(greLegalFormsProcess)) {
                sCategory = gsCMFormsID;
            }
        }
        break;
        }
    }
    if (saCIDExceptions[sCategory]) {
        iProcess = cmGetShopProcess();
        sSubCat = saCIDExceptions[sCategory];
        sCategory = matchCategoryToID(iProcess, giCMProcess);
    }
    if (saPIDExceptions[sCategory]) {
        sSubCat = saPIDExceptions[sCategory];
    }
    if ((sCategory == "CID9")) {
        if (sLocation.match(rePLDetails)) {
            iProcess = sLocation.replace(/[^0-9]+/gim, "").replace(/^0/gim, "");
        } else {
            iProcess = cmGetShopProcess();
        }
        sSubCat = sCategory;
        sCategory = matchCategoryToID(iProcess, giCMProcess);
    }
    if (sSubCat != sNOSubCat && !sLocation.match(reUseInCat)) {
        sOut = sCategory + (sSubCat == "" ? "" : "-") + sSubCat;
    }
    sOut += sRevisionCatagory;
    return sOut;
}
function cmGetPageViewAttributesInline() {
    var sOut = "";
    try {
        sOut = cmTestTrack.getPageViewAttributeTag(); // cmExpTrackingAttribute;
    } catch (e) {}
    return sOut;
}
function cmGetPageViewAttributes() {
    var sOut = cmGetPageViewAttributesInline();
    var sLocation = getSLocation();
    var reCCInfo = /\/CheckOut\/Checkout.aspx/gim;
    var mCCInfo = sLocation.match(reCCInfo);

    if (sOut == "") {
        if (cmGetIQuestionnaireID() == cmGIDivPreQualQID && sLocation.match(/\/questionnaire\/qpage_|questionnaire.aspx/gim)) {
            sOut = "Divorce Q Rework - " + (sLocation.match(/\/questionnaire\/qpage_/gim) ? "Control" : "Experiment");
        } else {
            sOut = cmGetTrackTestContent(false);
        }
    }
    return sOut;
}
function createPageViewTag() {
    var oaFound = getPageMappings();
    var sCategory = oaFound ? oaFound[giCMCategoryID] : matchCategoryToID(cmGetShopProcess(), giCMProcess);
    var sSearch = cmGetSearchTerm(sCategory);
    var iSearchResults = cmGetSearchResultsNumber(sCategory)
    var sLocation = getSLocation();
    var reErrorPages = /^presignin|^signin/gim;
    var reErrorID = /^-cid53$/gim;
    var reID = /[^\-]+$/gim;
    var mID = null;
    var sAttributes = cmGetPageViewAttributes();
    sCategory = cmGetCategory(sLocation, sCategory);
    sLocation = cmGetPageID(sLocation, oaFound);
    mID = sLocation.match(reID);
    if (sCategory.match(reErrorID) && mID) {
        sCategory = mID[0] + sCategory;
    }
    sLocation = cmTestTrack.getPageViewPageID(sLocation);
    sLocation = cmTestTrackFromCookie.appendTag(sLocation);
    cmCreatePageviewTag(sLocation, sCategory, sSearch, iSearchResults, sAttributes);
}
/*  */
var cmTestTrackFromCookie =
{
    saProcs: [],
    init: function () {
        this.saProcs[6] = { rePage: /\/CheckOut\/Purchase_Lock-Packages.aspx|\/CheckOut\/Purchase_Lock_Mod.aspx/gim,
            sCookieID: "LWT_Price_Drop",
            sName: "LWT Price Drop",
            sTags: "pvid",
            iTID: 247,
            saCookeSegMap: [],
            init: function () {
                this.saCookeSegMap[".Ctrl"] = "Control";
                this.saCookeSegMap[".ExpA"] = "Exp A";
                this.saCookeSegMap[".ExpB"] = "Exp B";
            },
            matchSegment: function () {
                var sTestCookie = document.cookie.match(new RegExp(this.sCookieID + "[^;]+", "gim"));
                var match = false;
                if (sTestCookie) {
                    sTestCookie = String(sTestCookie);
                    for (var i in this.saCookeSegMap) {
                        match = sTestCookie.match(new RegExp(i));
                        if (match) {
                            break;
                        }
                    }
                }
                return match ? this.saCookeSegMap[String(match)] : "";
            },
            getTag: function () {
                var sSegment = this.matchSegment();
                return sSegment && sSegment != "" ? " - " + this.iTID + " - " + this.sName + " - " + sSegment : "";
            }
        };
        this.saProcs[6].init();
    },
    appendTag: function (sTag) {
        var sLocation = getSLocation();
        var iPID = cmGetShopProcess();
        var oPIDFound = this.saProcs[iPID];
        var bPageMatch = oPIDFound ? sLocation.match(oPIDFound.rePage) : false;
        var sTestTag = "";
        var sOut = sTag;
        if (oPIDFound && bPageMatch) {
            sTestTag = oPIDFound.getTag();
            sOut += sTestTag;
        }
        return sOut;
    }
}
cmTestTrackFromCookie.init();
/* */
// ___________________________________________________________________________________________________________ product specific page view page ID END
// delete this once verified __________________________________________________________________________________  START
// dependent on the RA renewal routines being updated.
function cmGetPurchaseLockPricing() { return iGrandTotal; }
function cmGetPurchaseLockCustomerOrder() { return iOrder; }
function cmGetPurchaseLockQuantity() { return 1; }

var gCMBTest = typeof (gCMBTest) == "undefined" ? false : gCMBTest;
var gbMBAttorneyAssistedPatent = typeof (gbMBAttorneyAssistedPatent) == "undefined" ? false : gbMBAttorneyAssistedPatent;
var gbMBBundled = typeof (gbMBBundled) == "undefined" ? false : gbMBBundled;
function cmSetAttorneyAssistedPatent(bIn) { gbMBAttorneyAssistedPatent = bIn; }
function getAttorneyAssistedTagInformation() {
    var sCategoryID = matchCategoryToID(giCMProvPatInHouseIQ, giCMQuestionnaire);
    var sProductID = sCategoryID;
    var sProductName = getProductDescription(giCMProvPatInHouseIQ, giCMQuestionnaire);
    return [sCategoryID, sProductID, sProductName]
}
function cmGetPurchaseLockIReopen() {
    var iOut = 0;
    try {
        iOut = cmGIReopen;
    } catch (e) { }
    return iOut;
}
function cmGetInfRequestExistingPageParams() { return document.location.search; }
function cmGetInfRequestURL(sParams) { return "/lib/coremetrics-get-inf.asp" + sParams; }
function cmShouldSetShopTag(sCategoryID) {
    var bIsAttorneyAssistedPatent = false;
    var bProvisionalPatent = cmBProvisionalPatent(sCategoryID);
    var bOut = true;
    try {
        bIsAttorneyAssistedPatent = bAttorneyAssistedPatent == "true";
    } catch (e) {
        bIsAttorneyAssistedPatent = gbMBAttorneyAssistedPatent;
    }
    bOut = (sCategoryID != gsCMEntityNameCheck) &&
           (sCategoryID != gsCMDesignPatentID) &&
           (!bProvisionalPatent || (bProvisionalPatent && !bIsAttorneyAssistedPatent));
    return bOut;
}
function cmInHousePatent(sCategoryID) {
    var bOut = cmShouldSetShopTag(sCategoryID) && cmBProvisionalPatent(sCategoryID);
    return bOut;
}
// delete this once verified __________________________________________________________________________________  END
function getRevisionCategoryId(sCategoryID, iReopen) { return iReopen && iReopen > 0 ? gsCMRevisionCatID : sCategoryID; }
function getRevisionProductId(sProductID, iReopen) {
    return sProductID + cmGetRevisionCategory()
    //return sProductID + ( iReopen && iReopen > 0? " - REV": "" ); 
}
function getRevisionOrderNumber(iOrder, iReopen) {
    var sPrefix = 'R_';
    var reAlreadySet = new RegExp(sPrefix + "[0-9]+", "gim");
    var sOut = String(iOrder);
    if (iOrder && sOut != "" && iReopen && iReopen > 0 && !sOut.match(reAlreadySet)) {
    sOut += sPrefix + iReopen;
    }
    return sOut;
}
// ----------------------------------------------------------------- cookie routines - start
var sgCMCookieID = "cmtLZ";
var sgCMCookieOrderSep = "~";
var sgCMCookieItemSep = "|";
var sgCMCookieRevisionSep = "_";

var sgCMConversionEventQuestionnaireStart = 1;
var sgCMConversionEventQuestionnaireEnd = 2;
var sgCMShopAction5Tag = 3;
var sgCMShopAction9Tag = 4;

function cmGetCookie() {
    var re = new RegExp(sgCMCookieID + "[^;]+", "gim");
    var match = document.cookie.match(re);
    return match ? String(match) : "";
}
function cmCleanCookieID(sIn) { return sIn.replace(new RegExp(sgCMCookieID + "=", "gim"), ""); }
function cmGetOrderCookieID(iOrder, iReopen) {
    var sOut = iOrder;
    if (iReopen && iReopen > 0) {
        sOut += sgCMCookieRevisionSep + iReopen;
    }
    return sOut;
}
function cmGetCookieByOrder(iOrder, iReopen) {
    var re = new RegExp("^" + cmGetOrderCookieID(iOrder, iReopen) + "\\" + sgCMCookieItemSep, "gim");
    var sCookie = cmCleanCookieID(cmGetCookie());
    var saOrders = sCookie.split(sgCMCookieOrderSep);
    var sOut = "";
    for (var i = 0; sOut == "" && i < saOrders.length; i++) {
        sOut = saOrders[i].match(re) ? saOrders[i] : sOut;
    }
    return sOut;
}
function cmCookieClear() {
    var dt = new Date();
    var sExpire = "";
    var sAction = "";
    var sCookie = sgCMCookieID + "=del"
    dt.setDate(dt.getDate() - 100);
    sExpire = (dt.getMonth() + 1) + "/" + dt.getDate() + "/" + dt.getFullYear()
    sCookie += ";expires=" + sExpire + ";path=/;";
    document.cookie = sCookie;
}
function cmGetCookieExpiration() {
    var dt = new Date();
    dt.setDate(dt.getDate() + 90);
    return (dt.getMonth() + 1) + "/" + dt.getDate() + "/" + dt.getFullYear()
}
function cmSetCookie(iOrder, iReopen, iAction) {
    var sExpire = cmGetCookieExpiration();
    var sAction = "";
    var sValue = "";
    var sOrigCookie = cmCleanCookieID(cmGetCookie());
    var sOrderCookie = cmGetCookieByOrder(iOrder, iReopen);
    var reCleanSep = new RegExp("^" + sgCMCookieOrderSep + "|" + sgCMCookieOrderSep + "$", "gim");
    var reCleanOrderCookie = new RegExp(sOrderCookie, "gim");
    var reCleanAction = new RegExp("\\" + sgCMCookieItemSep + iAction, "gim");
    var sCookie = sgCMCookieID + "="
    sOrigCookie = sOrigCookie.replace(sOrderCookie, "");
    sOrigCookie = sOrigCookie.replace(reCleanSep, "");
    sOrderCookie = sOrderCookie.replace(reCleanAction, "");
    sAction = iAction + sgCMCookieItemSep;
    sOrderCookie = (sOrderCookie == "" ? cmGetOrderCookieID(iOrder, iReopen) + sgCMCookieItemSep : sOrderCookie);
    sValue = (sOrderCookie == "" && sOrigCookie == "" ? cmGetOrderCookieID(iOrder, iReopen) + sgCMCookieItemSep : sOrderCookie) + sAction;
    sCookie += (sOrigCookie == "" ? "" : sOrigCookie + sgCMCookieOrderSep) + sValue;
    sCookie += ";expires=" + sExpire + ";path=/;";
    document.cookie = sCookie;
}
function cmCheckActionFromCookie(iOrder, iReopen, sAction) {
    var sCookie = cmGetCookieByOrder(cmGetOrderCookieID(iOrder, iReopen));
    var re = new RegExp("\\" + sgCMCookieItemSep + sAction + "\\" + sgCMCookieItemSep, "gim");
    return sCookie.match(re);
}
// ----------------------------------------------------------------- cookie routines - end
var cmsg500ErrorStr = "That Page Contains an Error";
var cmsg404ErrorStr = "That Page Does Not Exist";

function cmGetErrorRE() { return new RegExp(cmsg500ErrorStr + "|" + cmsg404ErrorStr, "gim"); }
function cmSetErrorTag() {
    var sLocation = getSLocation();
    var oaFound = getPageMappings();
    var mError = document.title.match(cmGetErrorRE());
    var sCategory = "ERROR";
    sLocation = cmGetPageID(sLocation);
    if (mError) {
        sLocation += mError[0].match(new RegExp(cmsg500ErrorStr, "gim")) ? " - 500" : " - 404";
    }
    cmCreateErrorTag(sLocation, sCategory)
}
function cmBErrorPage() {
    return document.title.match(cmGetErrorRE()) ? true : false;
}
function cmMyAccountProfileSubmit() {
    var bOut = true;
    try {
        var oForm = document.forms["frmMain"];
        var iCustomerID = cmGIUserID;
        var sCustomerEmail = cmGSEmail;
        var sCustomerCity = oForm.elements["sContactCity"].value;
        var sCustomerState = oForm.elements["sContactState"].value;
        var sCustomerZip = oForm.elements["sContactZip"].value;
        cmCreateRegistrationTag(iCustomerID, sCustomerEmail, sCustomerCity, sCustomerState, sCustomerZip);
    } catch (e) { }
    return bOut;
}
function cmSetMyAccountProfileSubmit() {
    var oaLinks = document.links;
    var reFound = /javascript:document.frmMain.submit.+/gim;
    var sLink = "";
    var mFound = null; // will need to loop all the links.
    var iFound = -1;
    for (var i = 0; i < oaLinks.length; i++) {
        mFound = oaLinks[i].href.match(reFound);
        iFound = mFound ? i : iFound;
        if (mFound) {
            sLink = String(mFound).replace(/javascript:/gim, "");
            oaLinks[iFound].href = "javascript:cmMyAccountProfileSubmit();" + sLink;
        }
    }
}
var cmGIUserIDNone = -1;
var cmGIUserID = cmGIUserIDNone;
var cmGSEmail = "";
// delete this once verified _________________________________________________________________________________________ START
function cmGetLegalFormsCheckoutPrice() {
    var nOut = 0.00;
    try {
    nOut = nPrice;
    } catch (e) { }
    return nOut;
}
/* --------------------------------------- ra renewal tracking start -------------------------------------------------------- */
var cmRArenewalOrderSep = "~"
var cmRArenewalAmountSep = "|"
function cmRARenewalCleanOrders(sIn) { }
function cmRARenewalSplitOrders(sIn) { }
function cmRARenewalSlitOrderInf(sIn) { }
function cmRARenewalShouldSetShopTag(sCategoryID, iOrder, iReopen, sTag, nAmount) { }
function cmRARenewalPurchaseLock(sOrders, iUser) { }
function cmRARenewalOrderDone(sOrders, iUser) { }
/* --------------------------------------- ra renewal tracking end   -------------------------------------------------------- */
// delete this once verified _________________________________________________________________________________________ END
/* --------------------------------------- page element tracking start   -------------------------------------------------------- */
var gsCMPageElementTagCookieName = "cmPET";
var gsCMCMPageElementVideoCategoy = "Video Page Element";
function cmGetSetPageElementCookie() {
    var sAllCookies = document.cookie;
    var reGet = new RegExp(gsCMPageElementTagCookieName + "[^;]+", "gim");
    var reClean = new RegExp(gsCMPageElementTagCookieName + "|;", "gim");
    var match = sAllCookies.match(reGet);
    var sPageElementCookie = match ? String(match) : "";
    var sOut = sPageElementCookie.replace(reClean, "");
    return sOut;
}
function cmSetPageElementCookieAlreadSet(sIn) {
    var sCookie = cmGetSetPageElementCookie();
    var re = new RegExp("[|]*" + sIn + "[|]*", "gim");
    return sCookie.match(re);
}
function cmSetPageElementCookie(sIn) {
    var dt = new Date();
    var sExpire = "";
    var sAction = "";
    var sValue = "";
    var sOrigCookie = cmGetSetPageElementCookie();
    var reOrderCookieClean = new RegExp("[|]*" + sIn + "[|]*", "gim");
    var sOrderCookie = sOrigCookie.replace(reOrderCookieClean, "");
    var sCookie = gsCMPageElementTagCookieName + "="
    sValue = sOrderCookie + (sOrderCookie == "" ? sIn : "|" + sIn);
    sValue = sValue.replace(/^[|]+|[|]+$|^[=]+/gim, "")
    sCookie += sValue
    dt.setDate(dt.getDate() + 90);
    sExpire = (dt.getMonth() + 1) + "/" + dt.getDate() + "/" + dt.getFullYear()
    sCookie += ";expires=" + sExpire + ";path=/;";
    if (!cmSetPageElementCookieAlreadSet(sIn)) {
        document.cookie = sCookie;
    }
}
function cmTrackFlashPlayExt(sVideoLink) {
    var sFilename = String(sVideoLink.match(/[^\/\\]+$/gim)).replace(/\..*$/gim, "").toLowerCase();
    var saVideos = [];
    saVideos["llc_3step"] = "Vid2_LLC_123";
    saVideos["llc_comparison"] = "Vid2_LLC_Comp";
    saVideos["llc_edupod"] = "Vid2_LLC_Edu";
    saVideos["llc_overview"] = "Vid2_LLC_Over";
    saVideos["llc_pricing"] = "Vid2_LLC_Price";
    saVideos["llc_purchase"] = "Vid2_LLC_Purchase";
    saVideos["llc_sem"] = "Vid2_LLC_SEM";
    saVideos["wills_3step"] = "Vid2_LWT_123";
    saVideos["wills_comparison"] = "Vid2_LWT_Comp";
    saVideos["wills_edupod"] = "Vid2_LWT_Edu";
    saVideos["wills_overview"] = "Vid2_LWT_Over";
    saVideos["wills_pricing"] = "Vid2_LWT_Price";
    saVideos["wills_purchase"] = "Vid2_LWT_Purchase";
    saVideos["wills_sem"] = "Vid2_LWT_SEM";
    var sElementID = saVideos[sFilename];
    if (sElementID != "" && !cmSetPageElementCookieAlreadSet(sElementID)) {
        cmCreatePageElementTag(sElementID, gsCMCMPageElementVideoCategoy);
        cmSetPageElementCookie(sElementID);
    }
}
var gscmVideoPagesPurchPageID = "Purch";
var gscmVideoPagesPurch = "Vid2_" + gscmVideoPagesPurchPageID;
var gsaVideoPages = [];
gsaVideoPages["summary-compare-business-formations.html"] = "Vid2_LLC_Comp";
gsaVideoPages["wills-3-step-process.html"] = "Vid2_LWT_123";
gsaVideoPages["wills-overview.html"] = "Vid2_LWT_Over";
gsaVideoPages["wills-pricing.html"] = "Vid2_LWT_Price";
gsaVideoPages["limited-liability-company-3-step-process.html"] = "Vid2_LLC_123";
gsaVideoPages["limited-liability-company-overview.html"] = "Vid2_LLC_Over";
gsaVideoPages["limited-liability-company-pricing.html"] = "Vid2_LLC_Price";
gsaVideoPages["limited-liability-company-edu-center.html"] = "Vid2_LLC_Edu";
//gsaVideoPages[ 'llcpage.html' ] = "Vid2_LLC_SEM";
//gsaVideoPages[ "last-will-and-testament.html" ] = "Vid2_LWT_SEM";
gsaVideoPages["summary-compare-wills.html"] = "Vid2_LWT_Comp";
gsaVideoPages["importance-of-wills.html"] = "Vid2_LWT_Edu";
gsaVideoPages["review_purchase.asp"] = gscmVideoPagesPurch;
// if you don't get a parameter passed to this routine you will have to grab the iP or iQ
// these are added to avoid conflict with the SEM/TSA Test.
gsaVideoPages['llcpage.html'] = "SEM_TSA_LLC_SEM";
gsaVideoPages["last-will-and-testament.html"] = "SEM_TSA__LWT_SEM";
function cmTrackFlashGetPurchPageTag(sIn) {
    var sOut = sIn;
    var saPurchProducts = [];
    saPurchProducts[27] = "LLC";
    saPurchProducts[49] = "LWT";
    var sProduct = "";
    var rePurchTag = new RegExp(gscmVideoPagesPurchPageID, "gim");
    var iQ = -1;
    if (sIn == gscmVideoPagesPurch) {
        iQ = getIQuestionnaireFromLocation();
        sProduct = saPurchProducts[iQ];
        sOut = sOut.replace(rePurchTag, sProduct + "_" + gscmVideoPagesPurchPageID)
    }
    return sOut;
}
function cmTrackFlashPlay() {
    // only used on SEM pages, flash calls this function so we cannot remove
    //var sPage = getSLocation().replace( /^.*[\\//]+|\?.*$/gim, "" ).toLowerCase();
    //var sElementID = gsaVideoPages[ sPage ];
    //sElementID = cmTrackFlashGetPurchPageTag( sElementID );
    //if ( sElementID != "" && !cmSetPageElementCookieAlreadSet( sElementID ) ){
    //cmCreatePageElementTag( sElementID, gsCMCMPageElementVideoCategoy );
    //cmSetPageElementCookie( sElementID );
    // }
}
function cmTrackFlashDisplay() { // only used on SEM pages
    // only used on SEM pages, flash calls this function so we cannot remove
    // var sElementTag = "_display"
    // var sPage = getSLocation().replace( /^.*[\\//]+|\?.*$/gim, "" ).toLowerCase();
    // var sElementID = gsaVideoPages[ sPage ];
    // sElementID = cmTrackFlashGetPurchPageTag( sElementID );
    // sElementID += sElementID && sElementID != ""? sElementTag: "";
    // if ( sElementID != "" && !cmSetPageElementCookieAlreadSet( sElementID ) ){
    //cmCreatePageElementTag( sElementID, gsCMCMPageElementVideoCategoy );
    //cmSetPageElementCookie( sElementID );
    // }
}
/* --------------------------------------- signup tracking start -------------------------------------------------------- */
function cmTrackSignupRegistration(iUser, sEmail) {
    try {
        cmCreateRegistrationTag(iUser, sEmail);
    } catch (e) { }
}
/* --------------------------------------- signup tracking end   -------------------------------------------------------- */
function cmTrackClick(sEventID, iActionType, sEventCategoryID) {
    cmCreateConversionEventTag(sEventID, iActionType, sEventCategoryID);
}
/* --------------------------------------- 2.5 start -------------------------------------------- */
function cmGetFormatedPrice(sIn) {
    var reClean = /[\,\$]+/gim
    var reOK = /[0-9]+\.[0-9]{2}/gim;
    var iDecPos = -1;
    var sOut = String(sIn);
    var iCnt = 0;
    sOut = sOut.replace(reClean, "");
    sOut = isNaN(sOut) ? "0.00" : sOut;
    iDecPos = sOut.indexOf(".");
    sOut += iDecPos == -1 ? "." : "";
    while (!sOut.match(reOK) && iCnt < 3) {
        sOut += "0";
        iCnt++;
    }
    sOut = sOut.match(reOK);  // there may be too many decimal places sent in
    return sOut;
}
function cmRegistrationProfileSubmit() {
    var oaForms = document.forms;
    var oForm = null;
    var iCustomerID = -1;
    var sCustomerEmail = "";
    var sCustomerCity = "";
    var sCustomerState = "";
    var sCustomerZip = "";
    var sTimeString = "";
    var reTimeString = /TIMESTRING/gim;
    var reEmail = /tbContactEmail/gim;
    var reCity = /hdn_CityValue/gim;
    var reState = /hdn_StateValue/gim;
    var reZip = /txtZip/gim;
    var sName = "";
    var sOut = "";
    try {
        for (var i = 0; !oForm && i < oaForms.length; i++) {
            oForm = oaForms[i].elements && oaForms[i].elements.length > 3 ? oaForms[i] : null;
        }
        for (var i = 0; i < oForm.elements.length; i++) {
            sName = oForm.elements[i].name;
            if (sName.match(reTimeString)) {
                sTimeString = oForm.elements[i].value;
                iCustomerID = sTimeString.substring(0, sTimeString.length - 3); ;
            } else if (sName.match(reEmail)) {
                sCustomerEmail = oForm.elements[i].value;
            } else if (sName.match(reCity)) {
                sCustomerCity = oForm.elements[i].value;
            } else if (sName.match(reState)) {
                sCustomerState = oForm.elements[i].value;
            } else if (sName.match(reZip)) {
                sCustomerZip = oForm.elements[i].value;
            }
        }
        if (iCustomerID != -1) {
            cmCreateRegistrationTag(iCustomerID, sCustomerEmail, sCustomerCity, sCustomerState, sCustomerZip);
        }
    } catch (e) { }
}
function cmSetLegalFormsPurchaseStartTag() {
    try {
        iProcess = cmGetShopProcess();
        iProcess = !isNaN(iProcess) ? Number(iProcess) : -1;
        if (String(iProcess).match(greLegalFormsProcess)) { // on checkout only process for legal forms
            cmThrowShopTag(giCMShopAction5, null, null, cmGetOrderSubTotal(true, true, true));
            createPageViewTag();
        }
    } catch (e) { }
}
// _________________________________________________________________________________________________________ New Order Tracking        START
function cmPurchaseLockSubmit() { /* remove this once references have been removed */ }
function cmSetOrderDoneTag() { /* remove this once references have been removed */ }
var giCMShopAction5 = 5;
var giCMShopAction9 = 9;

function cmGetOrderObj() {
    var oOut = new Object();
    try {
        oOut = oCMOrder;
    } catch (e) { }
    return oOut;
}
function cmIsTestOrder() {
    var bOut = false;
    var obj = cmGetOrderObj();
    try {
        if (obj.oTestCheck.sCheckType == 'email') {
            bOut = obj.oTestCheck.sCheckValue.match(/@legalzoom.com$/gim) &&
             !obj.oTestCheck.sCheckValue.match(/guest_LZ[0-9]+_LZ[0-9]+@legalzoom.com/gim) ? true : false;
        }
    } catch (e) { }
    return bOut;
}
function cmGetNumeric(sIn) {
    var sTmp = "";
    try {
        sTmp = String(sIn).replace(/[^0-9\.]+/gim, "");
    } catch (e) { }
    return sTmp == "" || isNaN(sTmp) ? 0 : Number(sTmp);
}
function cmGetOrderItems() {
    var obj = cmGetOrderObj();
    return obj.oaItems ? obj.oaItems : [];
}
function cmGetShopProcess() {
    var iOut = giNotFound;
    try {
        iOut = cmGetOrderObj().iProcess;
        iOut = isNaN(iOut) ? giNotFound : iOut;
        if (iOut == giNotFound) {
            iOut = getIProcessParam();
        }
    } catch (e) { }
    return iOut;
}
function cmGetQPageNo() {
    var obj = cmGetOrderObj();
    return obj.sPage ? obj.sPage : giNotFound;
}

function cmGetiProcessID() { try { return cmGetOrderObj().iProcess; } catch (e) { return ""; } }

function cmGetOrderID() { try { return cmGetOrderObj().sUserOrderID; } catch (e) { return ""; } }
function cmGetOrderPaymentPlan() { try { return cmGetOrderObj().sPaymentPlan; } catch (e) { return ""; } }
function cmGetOrderReopen() { try { return cmGetNumeric(cmGetOrderObj().sReopen); } catch (e) { return 0; } }
function cmGetOrderIdWithRevision() {
    var iReopen = cmGetOrderReopen();
    return cmGetOrderID() + (iReopen == 0 ? "" : "R_" + iReopen);
}
function cmGetOrderCustomerID() { try { return cmGetOrderObj().oUser.sCustomerID; } catch (e) { return ""; } }
function cmGetOrderCustomerCity() { try { return cmGetOrderObj().oUser.sCustomerCity; } catch (e) { return ""; } }
function cmGetOrderCustomerState() { try { return cmGetOrderObj().oUser.sCustomerState; } catch (e) { return ""; } }
function cmGetOrderCustomerZip() { try { return cmGetOrderObj().oUser.sCustomerZip; } catch (e) { return ""; } }
function cmGetOrderCustomerEmail() { try { return cmGetOrderObj().oUser.sEmail; } catch (e) { return ""; } }

function cmGetOrderItemID(oIn) { try { return oIn.sProductID; } catch (e) { return ""; } }
function cmGetOrderItemName(oIn) { try { return oIn.sProductName; } catch (e) { return ""; } }
function cmGetOrderItemAmount(oIn) { try { return cmGetNumeric(oIn.sAmount); } catch (e) { return 0; } }
function cmGetOrderItemQuantity(oIn) {
    return 1;
    //try{ return cmGetNumeric( oIn.sQuantity ); } catch( e ){ return 0 } 
}
function cmGetOrderItemPerItemAmount(oIn) {
    var fAmount = cmGetOrderItemAmount(oIn);
    var iQuantity = cmGetOrderItemQuantity(oIn);
    return fAmount > 0 || iQuantity > 0 ? fAmount / iQuantity : 0.00;
}
function cmGetOrderItemRelationshipType(oIn) { try { return oIn.sRelationshipType; } catch (e) { return ""; } }
function cmGetOrderItemSalesTax(oIn) { try { return cmGetNumeric(oIn.sSalesTax); } catch (e) { return 0; } }
function cmGetOrderItemPaymentReceiver(oIn) { try { return cmGetNumeric(oIn.sPaymentReceiver); } catch (e) { return 0 } }
function cmGetOrderDiscountObj() { try { return cmGetOrderObj().oDiscount; } catch (e) { return null; } }
function cmGetOrderDiscountCode() { try { return cmGetOrderDiscountObj().sCode; } catch (e) { return ""; } }
function cmGetOrderDiscountAmount(bIgnoreCode) {
    try {
        var sCode = cmGetOrderDiscountCode();
        return (sCode != "" || bIgnoreCode) ? cmGetNumeric(cmGetOrderDiscountObj().sAmount) : 0;
    } catch (e) { return 0 }
}
function cmGetOrderPackage(oIn) { try { return oIn.sProductName; } catch (e) { return ""; } }                                                /////
function cmGetiProcessID() { try { return cmGetOrderObj().iProcess; } catch (e) { return ""; } }
function cmGetsRevision() { try { return cmGetOrderObj().sRevision; } catch (e) { return ""; } }
function cmGetiQuestionPage() { try { return cmGetOrderObj().sPage; } catch (e) { return ""; } }
function cmGetIQuestionnaireID() {
    var iQuestionnaire = getIQuestionnaireFromLocation();
    if (iQuestionnaire == giNotFound) {
        try {
            return cmGetOrderObj().iQuestionnaire;
        } catch (e) { return ""; }
    }
    return iQuestionnaire; 
}
function cmIsRevision() {
    var iRevision = cmGetsRevision();
    var iReopen = cmGetOrderReopen();
    return (iRevision == 1 || (iReopen != "" && !isNaN(iReopen) && Number(iReopen) > 0));
}
function getConversionCategory() { return cmIsRevision() == 1 ? "Revision" : "Questionnaire"; }
function cmGetRevisionCategory() { return cmIsRevision() ? "-" + gsCMRevisionCatID : ""; }


function cmGetOrderShipping() {
    var reShipping = /Shipping/gim;
    var oaItems = cmGetOrderItems();
    var iOut = 0;
    for (var i = 0; i < oaItems.length; i++) {
        if (cmGetOrderItemRelationshipType(oaItems[i]).match(reShipping)) {
            iOut += cmGetOrderItemAmount(oaItems[i]);
        }
    }
    return iOut;
}
function cmGetOrderSubTotalDeduction(oIn, bIncludeStateFeeInTotal, bIgnoreAttorneyFees, bIncludeShipping) {
    //var sDeduct = bIncludeStateFeeInTotal ? "Shipping": "Shipping|FilingFee";
    var sDeduct = (bIncludeShipping ? "" : "Shipping");
    var reDeduct = null;
    var iSalesTax = cmGetOrderItemSalesTax(oIn);
    var sRelationshipType = cmGetOrderItemRelationshipType(oIn);
    var mRelationshipType = null;
    var iPaymentReceiver = cmGetOrderItemPaymentReceiver(oIn);
    var iOut = iSalesTax;
    var bProcessed = false;
    if (!bIncludeStateFeeInTotal) {
        sDeduct += (sDeduct == "" ? "" : "|") + "FilingFee";
    }
    reDeduct = new RegExp(sDeduct, "gim");
    mRelationshipType = sRelationshipType.match(reDeduct);
    if (sDeduct != "" && mRelationshipType) {
        iOut += cmGetOrderItemPerItemAmount(oIn);
        bProcessed = true;
    }
    if (!bProcessed && iPaymentReceiver != 1 && bIgnoreAttorneyFees) {
        iOut += cmGetOrderItemPerItemAmount(oIn);
    }
    return iOut;
}
var goaCM3rdParty = [];
goaCM3rdParty[giCMDesignPatent] = [150, 200, 0]; // same as previous receiver.
goaCM3rdParty[giCMProvPatIP] = [129, 375, 275];
goaCM3rdParty[giCMUtilPatStep1] = [129, 375, 299];
goaCM3rdParty[giCMUtilPatStep2] = [400, 530, 0];

function cmBOrderHasItem(oOrder, sProductName) {
    var bOut = false;
    for (var i = 0; !bOut && i < oOrder.oaItems.length; i++) {
        bOut = oOrder.oaItems[i].sProductName == sProductName;
    }
    return bOut;
}
function cmGet3rdPartyOrderSubtotal(oOrder) {
    var fOut = 0;
    var iProcess = Number(oOrder.iProcess);
    if (goaCM3rdParty[iProcess]) {
        switch (iProcess) {
            case giCMDesignPatent:
                fOut = goaCM3rdParty[iProcess][0] + goaCM3rdParty[iProcess][1] + goaCM3rdParty[iProcess][2];
                break;
            case giCMProvPatIP:
                if (oOrder.oaItems[0].sProductID != '159') {
                    fOut = goaCM3rdParty[iProcess][0];
                    fOut += cmBOrderHasItem(oOrder, "Patent Illustrations") ? goaCM3rdParty[iProcess][1] : 0;
                    fOut += cmBOrderHasItem(oOrder, "Patent Search") ? goaCM3rdParty[iProcess][2] : 0;
                }
                break;
            case giCMUtilPatStep1:
                fOut = goaCM3rdParty[iProcess][0] + goaCM3rdParty[iProcess][1] + goaCM3rdParty[iProcess][2];
                fOut += cmBOrderHasItem(oOrder, "Patent Illustrations") ? goaCM3rdParty[iProcess][1] : 0;
                fOut += cmBOrderHasItem(oOrder, "Patent Search") ? goaCM3rdParty[iProcess][2] : 0;
                break;
            case giCMUtilPatStep2:
                fOut = goaCM3rdParty[iProcess][0] + goaCM3rdParty[iProcess][1] + goaCM3rdParty[iProcess][2];
                fOut += cmBOrderHasItem(oOrder, "Patent Illustrations") ? goaCM3rdParty[iProcess][1] : 0;
                //fOut += cmBOrderHasItem(oOrder, "Patent Search") ? goaCM3rdParty[iProcess][2] : 0;
                break;
        }
    }
    return fOut;
}
function getOrderShippingAmount() {
    var reShipping = /Shipping/gim;
    var fOut = 0;
    var oaOrderItems = cmGetOrderItems();
    for (var i = 0; i < oaOrderItems.length; i++) {
        fOut += oaOrderItems[i].sRelationshipType.match(reShipping) && !isNaN(oaOrderItems[i].sAmount) ? Number(oaOrderItems[i].sAmount) : 0;
    }
    return fOut;
}
function cmGetOrderSubTotal(bIncludeStateFeeInTotal, bIgnoreAttorneyFees, bIncludeShipping) {
    var obj = cmGetOrderObj();
    var oaOrderItems = cmGetOrderItems();
    var iOrderAmount = cmGetNumeric(obj.sOrderAmount);
    var i3rdPartyOrderAmount = cmGet3rdPartyOrderSubtotal(obj);
    var iDeduct = cmGetOrderDiscountAmount(true);  //for the shop 5 tag
    if (i3rdPartyOrderAmount == 0) {
        for (var i = 0; iOrderAmount > 0 && i < oaOrderItems.length; i++) {
            iDeduct += cmGetOrderSubTotalDeduction(oaOrderItems[i], bIncludeStateFeeInTotal, bIgnoreAttorneyFees, bIncludeShipping);
        }
        iOrderAmount -= iDeduct;
    } else {
        iOrderAmount = i3rdPartyOrderAmount - iDeduct;
    }
    iOrderAmount = Math.round(iOrderAmount * 100) / 100;  // deal with rounding error
    return iOrderAmount;
}
function cmThrowShopTag(iType, sCustomerID, sOrderID, fOrderSubtotal, fOrderTotal) {
    try {
        var iReopen = cmGetOrderReopen();
        var bTestOrder = cmIsTestOrder();
        var iProcess = cmGetShopProcess();
        var iQuantity = 1;
        var sCategoryID = matchCategoryToID(iProcess, giCMProcess);
        var sProductID = sCategoryID;
        var sProductName = getProductDescription(iProcess, giCMProcess);
        if (!bTestOrder) {
            //sCategortyID = getRevisionCategoryId( sCategoryID, iReopen );
            sProductID = getRevisionProductId(sProductID, iReopen);
            sCategoryID = sProductID;
            if (iType == giCMShopAction5) {
                cmCreateShopAction5Tag(sProductID, sProductName, iQuantity, cmGetFormatedPrice(fOrderSubtotal), sCategoryID);
                cmDisplayShop5s()
            } else if (iType == giCMShopAction9) {
                if (sProductID == gsCMCorpMinPrep && fOrderSubtotal > 0) {
                    sProductID = gsCMCorpMinSub;
                    sCategortyID = sProductID;
                }
                cmCreateShopAction9Tag(sProductID, sProductName, iQuantity, cmGetFormatedPrice(fOrderSubtotal), sCustomerID, sOrderID, cmGetFormatedPrice(fOrderTotal), sCategoryID, cmGetOrderAttributeTag());
                cmDisplayShop9s();
            }
        }
    } catch (e) { }
}
function cmSetConversionEventTag(iActionType) {
    try {
        var iReopen = cmGetOrderReopen();
        var sOrder = cmGetOrderID();
        var iProcess = cmGetShopProcess();
        var sProductName = getProductDescription(iProcess, giCMProcess);
        var sEventCategory = cmGetOrderEventCategory();
        var bAlreadySet = cmCheckActionFromCookie(sOrder, iReopen, iActionType);
        if (!bAlreadySet) {
            if (String(iProcess).match(greLegalFormsProcess)) { // only process for legal forms
                cmSetFormConversionEvent(iActionType);
            } else {
                cmCreateConversionEventTag(cmCleanFormStr(sProductName), iActionType, cmCleanFormStr(sEventCategory));
            }
            cmSetCookie(sOrder, iReopen, iActionType);
        }
    } catch (e) { }
}
function cmGetFormShopAttribute() {
    var iProcess = cmGetShopProcess();
    var sOut = "";
    if (String(iProcess).match(greLegalFormsProcess)) {
        sOut = cmCleanFormStr(cmGetFormCookieInf(gicmCookieInfDescription));
    }
    return sOut;
}
function cmGetOrderAttributeTag() {
    var sAttributes = "";
    try {
        var bTestOrder = cmIsTestOrder();
        var oaItems = cmGetOrderItems();
        var sPaymentReceiver = "";
        var sRelationshipType = "";
        var sAmount = "";
        var sSalesTax = "";
        var fSalesTax = 0.0;
        var sFilingFee = "";
        var fFilingFee = 0.0;
        var fAttorneyFees = 0.0;
        var sDiscountCode = cmGetOrderDiscountCode();
        var fDiscountAmnt = cmGetOrderDiscountAmount();
        var sPackage = cmGetOrderPackage();
        var sPaymentPlan = cmGetOrderPaymentPlan();
        var sFormAttribute = cmGetFormShopAttribute();

        if (sPaymentPlan == "" || sPaymentPlan == "undefined" || sPaymentPlan == "0") {
            sPaymentPlan = "SINGLE PAY";
        }

        /*
        1)	State Taxes
        2)	State Filing Fee
        3)	Attorney Services
        4)	Discount Code
        5)	Discount Amt
        6)  Package
        7)  Payment Plan (single/3pay)
        */
        if (!bTestOrder) {
            for (var i = 0; i < oaItems.length; i++) {
                sRelationshipType = oaItems[i].sRelationshipType;
                sPaymentReceiver = oaItems[i].sPaymentReceiver;
                sAmount = oaItems[i].sAmount;
                sSalesTax = oaItems[i].sSalesTax;
                fSalesTax += !isNaN(sSalesTax) ? Number(sSalesTax) : "0.0";
                if (sRelationshipType == "FilingFee") {
                    fFilingFee += !isNaN(sAmount) ? Number(sAmount) : "0.0";
                }
                if (sPaymentReceiver != "1") {  // LegalZoom
                    fAttorneyFees += !isNaN(sAmount) ? Number(sAmount) : "0.0";
                }
                if (sRelationshipType == "Package") {
                    sPackage = oaItems[i].sProductName;
                }
            }
        }

        sAttributes = (fSalesTax == 0 ? "" : cmGetFormatedPrice(fSalesTax)) + "-_-" +
                      (fFilingFee == 0 ? "" : cmGetFormatedPrice(fFilingFee)) + "-_-" +
                      (fAttorneyFees == 0 ? "" : cmGetFormatedPrice(fAttorneyFees)) + "-_-" +
                      sDiscountCode + "-_-" +
                      (fDiscountAmnt == 0 ? "" : cmGetFormatedPrice(fDiscountAmnt)) + "-_-" +
                      (sPackage == "" ? "" : sPackage) + "-_-" +
                      (sPaymentPlan == "" ? "" : sPaymentPlan) + "-_-" +
                      (sFormAttribute == "" ? "" : sFormAttribute);

    } catch (e) { }
    return sAttributes;
}


function cmSetShop5() {
    var fTotal = cmGetOrderSubTotal(true, true, true);
    if (fTotal > 0) {
        cmThrowShopTag(giCMShopAction5, null, null, fTotal, fTotal);
    }
}
function cmSetShop9AndOrderTags() {
    try {
        var sOrderID = cmGetOrderIdWithRevision();
        // bIgnoreAttorneyFees = false will not deduct the attorney fees from the total.  On the order done page it already has been deducted.
        var bIncludeStateFeeInTotal = true;
        var bIgnoreAttorneyFees = false;
        var bIncludeShipping = true;
        var fOrderSubTotal = cmGetOrderSubTotal(true, false, false);
        var fShop9OrderTotal = cmGetOrderSubTotal(true, false, true);
        var fShop9SubTotal = cmGetOrderSubTotal(bIncludeStateFeeInTotal, bIgnoreAttorneyFees, bIncludeShipping);
        var fOrderShipping = cmGetOrderShipping();
        var sCustomerID = cmGetOrderCustomerID();
        var sCustomerEmail = cmGetOrderCustomerEmail();
        var sCustomerCity = cmGetOrderCustomerCity();
        var sCustomerState = cmGetOrderCustomerState();
        var sCustomerZip = cmGetOrderCustomerZip();
        var bTestOrder = cmIsTestOrder();
        var iProcess = cmGetiProcessID();
        if (iaRevExcept[iProcess] && cmIsRevision()) {
            fOrderSubTotal = fShop9OrderTotal;
        }

        var RunShop9OrderTag = true

        if (iProcess == 28) { RunShop9OrderTag = false }; //fix RAnewals, not getting package,payment fields

        if (RunShop9OrderTag) {
            if (fShop9OrderTotal > 0 && fShop9SubTotal > 0 && (fOrderSubTotal > 0 || fOrderShipping > 0)) {
                cmThrowShopTag(giCMShopAction9, sCustomerID, sOrderID, fShop9SubTotal, fShop9OrderTotal);
                if (!bTestOrder) {
                    if (iaRevExcept[iProcess] && cmIsRevision()) {
                        fOrderSubTotal = fOrderSubTotal - getOrderShippingAmount();
                    }
                    cmCreateOrderTag(sOrderID, cmGetFormatedPrice(fOrderSubTotal), cmGetFormatedPrice(fOrderShipping), sCustomerID, sCustomerCity, sCustomerState, sCustomerZip, cmGetOrderAttributeTag());
                }
            }
        }

        // Exception for Entity Name Availability Check(68), BAP(109), LAP(112) - track even if $0
        if (iProcess == 68 || iProcess == 109 || iProcess == 112) {
            cmThrowShopTag(giCMShopAction9, sCustomerID, sOrderID, fShop9SubTotal, fShop9OrderTotal);
            if (!bTestOrder) {
                cmCreateOrderTag(sOrderID, cmGetFormatedPrice(fOrderSubTotal), cmGetFormatedPrice(fOrderShipping), sCustomerID, sCustomerCity, sCustomerState, sCustomerZip, cmGetOrderAttributeTag());
            }
        }

        if (!bTestOrder) {
            cmSetConversionEventTag(igCMConversionEventComplete);
        }
        cmNewsletterSignupTrackEnd();
        if (sCustomerID > 0) {
            cmCreateRegistrationTag(sCustomerID, sCustomerEmail, sCustomerCity, sCustomerState, sCustomerZip);
        }
    } catch (e) { }
}
function cmStartConversionEvent() {
    try {
        var bTestOrder = cmIsTestOrder();
        if (!bTestOrder) {
            cmSetConversionEventTag(igCMConversionEventStart);
        }
    } catch (e) { }
}
// _________________________________________________________________________________________________________ New Order Tracking        END
function cmGetOrderEventCategory(sForceProcess) {
    var sProcess = sForceProcess && sForceProcess != "" ? sForceProcess : cmGetShopProcess();
    var sBaseCategory = getProductDescription(sProcess, giCMProcess)
    var sCategoryID = sBaseCategory == gsCMFormsDescription ? gsCMFormsID : getConversionCategory();
    //sCategoryID = cmGetIsNewsletterSignupTracked()? cmgsNewsLetterConversion: sCategoryID;
    return sCategoryID
}

var gicmCookieInfCategory = 1;
var gicmCookieInfDescription = 2;
var gicmCookieInfSubscription = 3;

var gscmCookieSplit = "|";
var gscmFormCookieID = "lzlfc";

function cmGetFormConversionEventID() {
    var sCategory = cmGetFormCookieInf(gicmCookieInfCategory);
    var sDescription = cmGetFormCookieInf(gicmCookieInfDescription);
    var sOut = "";
    if (sCategory != "" && sDescription != "") {
        sOut += gsCMFormsID + " - " + sCategory + " - " + sDescription + " - " + cmGetFormsPurchaseMethod();
    }
    return cmCleanFormStr(sOut);
}
function cmGetFormCookieInf(iContent) {
    var sOut = "";
    var oCookie = unescape(document.cookie);
    var sCookieID = gscmFormCookieID;
    var match = oCookie.match(new RegExp(sCookieID + "=" + "[^;]+", "gim"));
    var sCookie = match ? String(match).replace(new RegExp(sCookieID + "=", "gim"), "") : "";
    var saCookie = sCookie.split(gscmCookieSplit);
    if (sCookie) {
        switch (iContent) {
            case gicmCookieInfCategory:
                sOut = saCookie[0];
                break;
            case gicmCookieInfDescription:
                sOut = saCookie.length > 1 ? saCookie[1] : "";
                break;
            case gicmCookieInfSubscription:
                sOut = saCookie.length > 2 ? saCookie[2] : "";
                break;
        }
    }
    return sOut;
}
function cmIsFormSubscription() { return cmGetFormCookieInf(gicmCookieInfSubscription) == "1"; }
function cmGetFormsPurchaseMethod() { return cmIsFormSubscription() ? "Forms Subscription" : "Forms Standalone"; }
function cmGetFormsPurchaseCategory() { return "PID" + (cmIsFormSubscription() ? gsLegalFormsSubProcessID : gsLegalFormsSAProcessID); }
function cmSetFormCookieID(sCategory, sDescription, bSubscription) {
    var dt = new Date();
    var dtExpires = dt.setDate(dt.getDate() + 90);
    var sCookie = gscmFormCookieID + "=" +
                   sCategory +
                   (sDescription == "" ? "" : gscmCookieSplit) + sDescription +
                   gscmCookieSplit + (bSubscription ? "1" : "0") +
                   ";expires=" + dt.toGMTString() +
                   ";path=/";
    if (sCategory != "" && sDescription != "") {
        document.cookie = sCookie;
    }
}
function cmFormTrack(c_name, value) {  // used in js_legalforms.js and coremetricsControl.js
    if (c_name != gscmFormCookieID) {
        var obj = document.getElementById(value);
        var oa = obj.parentNode.getElementsByTagName("A");
        var sFormID = oa[0].innerHTML.replace(/^[\n\r\f]+/gim, "");
        var sCat = cmGetFormCookieInf(gicmCookieInfCategory);
        cmSetFormCookieID(sCat, sFormID)
    }
}
function cmLegalFormOnClick(oEventIn) {
    var sLink = "";
    var reProcess = /iProcess=[0-9]+/gim;
    var match = "";
    var reSubscription = new RegExp("\[" + gsLegalFormsSubProcessID + "\]", "gim");
    var bSubscription = false;
    var sCategory = "";
    var sDescription = cmGetFormCookieInf(gicmCookieInfDescription);

    if (oEventIn) {
        sLink = String(oEventIn.currentTarget);
    } else if (event) {
        sLink = event.srcElement.tagName == "IMG" ? event.srcElement.parentElement.toString() : event.srcElement.href;
    }
    match = sLink.match(reProcess);
    if (match) {
        bSubscription = match[0].match(reSubscription);
    }
    sCategory = "PID" + (bSubscription ? gsLegalFormsSubProcessID : gsLegalFormsSAProcessID);
    cmSetFormCookieID(sCategory, sDescription, bSubscription);
    cmSetFormsPurchaseEvent();
    //return false;
}
function setLegalFormsOnClick() {
    var oaLinks = document.getElementsByTagName("A");
    var oLink = null;
    var re = /PreProcess.aspx\?iProcess=[0-9]+&FormIndex=/gim;
    var sLink = "";
    var sOut = "In setLegalFormsOnClick\n";
    for (var i = 0; i < oaLinks.length; i++) {
        oLink = oaLinks[i].href;
        sLink = oLink
        if (sLink.match(re)) {
            oaLinks[i].onclick = cmLegalFormOnClick;
            sOut += oaLinks[i].href + "\n";
        }
    }
}
function cmOnloadInitFormsTracking() {
    if (window.addEventListener) {
        window.addEventListener("load", setLegalFormsOnClick, false);
    } else if (window.attachEvent) {
        window.attachEvent("onload", setLegalFormsOnClick);
    }
}
function cmCleanFormStr(sIn) { return sIn.replace(/[ ]*[\(\)'\/\\]+[ ]*/gim, " ").replace(/^[ ]+|[ ]+$/gim, ""); }
function cmGetFormCDFCategory(bAppendMethod) { return gsCMFormsID; }
function cmSetFormPageViewTag() {
    var sCategory = cmGetFormCDFCategory();
    var sLocation = getSLocation();
    var sPage = String(sLocation.match(/[^\/\\]+$/gim));
    sCategory = cmGetCategory(sLocation, sCategory);
    sPage = sPage.replace(/[#\?]+.*$/gim, "");
    sPage = cmTestTrack.getPageViewPageID(sPage);
    cmCreatePageviewTag(sPage, sCategory, null, null);
}
function cmSetFormsProductView() {
    try {
        var sCategory = cmGetFormsPurchaseCategory();
        var sProductID = sCategory;
        var sDescription = cmGetFormsPurchaseMethod();
        cmCreateProductviewTag(cmCleanFormStr(sProductID), cmCleanFormStr(sDescription), cmCleanFormStr(sProductID))
        cmSetFormPageViewTag();
    } catch (e) { }
}
function cmSetFormConversionEvent(iConversionEvent) {
    cmCreateConversionEventTag(cmGetFormsPurchaseMethod(), iConversionEvent, cmCleanFormStr(gsCMFormsDescription));
}
function cmResetLegalFormCookie() {
    var sLocation = String(document.location);
    var reGoodPage = /[\/\\]+legalforms[\/\\]+/gim;
    var sDescription = document.title.replace(/ \|.*/gim, "");
    var sCategory = "";
    var bSubscription = cmGetFormCookieInf(gicmCookieInfSubscription) == "1";
    if (sLocation.match(reGoodPage)) {
        sCategory = cmGetFormCookieInf(gicmCookieInfCategory);
        sCategory = sCategory == "" ? "Link" : sCategory;
        cmSetFormCookieID(sCategory, sDescription, bSubscription);
    }
}
function cmSetFormsPurchaseEvent() {
    cmResetLegalFormCookie();
    cmSetFormsProductView();
    cmSetFormConversionEvent(igCMConversionEventStart);
}
/*                                 newsletter signup handling start                             */
var cmgsNewsLetterCookieID = "nl";
var cmgreNewsLetter = new RegExp("[~]*" + cmgsNewsLetterCookieID + "[^~;]*", "gim");
var cmgsNewsLetterSignup = "Newsletter Signup";
//var cmgsNewsLetterConversion = "Newsletter Purchase Path";

function cmIsNewletterSignup(sURL) {
    var reNewLetter = /[\/\\]+welcome[\/\\]+subscribenewsletter.asp/gim;
    var mNewLetter = sURL.match(reNewLetter);
    return mNewLetter ? true : false;
}
function cmGetIsNewsletterSignupTracked() {
    var sCookie = cmGetCookie();
    var bNewsLetter = sCookie.match(cmgreNewsLetter) ? true : false;
    return bNewsLetter;
}
function cmClearNewsletterSignupCookie() {
    var reClear = new RegExp("[~]*" + cmgsNewsLetterCookieID + "[|]+[^|]+[|]*", "gim");
    var sOrigCookie = cmCleanCookieID(cmGetCookie());
    var sExpire = cmGetCookieExpiration();
    var sCookie = sgCMCookieID + "="
    if (cmGetIsNewsletterSignupTracked()) {
        sCookie += sOrigCookie.replace(reClear, "");
        sCookie += ";expires=" + sExpire + ";path=/;";
        document.cookie = sCookie;
    }
}
function cmNewsletterSignupTrackEnd() {
    if (cmGetIsNewsletterSignupTracked()) {
        cmClearNewsletterSignupCookie();
    }
}
function cmNewsletterSignupTrackStart(sURL) {
    if (cmIsNewletterSignup(String(sURL)) && !cmGetIsNewsletterSignupTracked()) {
        var oaPageInf = getPageMappings();
        var sLoction = getPageMappingsLocation();
        var sEventID = oaPageInf ? oaPageInf[giCMCategoryID] : "";
        //cmCreateConversionEventTag( sEventID, igCMConversionEventStart, cmgsNewsLetterConversion );
        // do this on the first page of the questionnaire
        cmCreateConversionEventTag(sLoction, igCMConversionEventStart, cmgsNewsLetterSignup);
        cmSetCookie(cmgsNewsLetterCookieID, 0, igCMConversionEventStart);
    }
}
/*                                 newsletter signup handling end                               */
/*                                 questionnaire tracking start                                 */
function cmCookie(sNewContentID) {
    this.sContentID = sNewContentID;

    this.sCookie = "";
    this.saCookie = [];

    this.sFieldSep = "|";
    this.iOrderIndex = 0;
    this.iQuestionnaireIndex = 1;
    this.iReopenIndex = 2;
    this.iTestOrderIndex = 3;

    this.init = function () {
        var re = new RegExp(this.sContentID + "=", "gim");
        var sCookie = this.getCookie();
        this.sCookie = sCookie ? String(sCookie) : "";
        this.saCookie = sCookie ? String(sCookie).replace(re, "").split(this.sFieldSep) : [];
    }
    this.getCookieRE = function () { return new RegExp(this.sContentID + "=[^;]+", "gim"); }
    this.getCookie = function () { return document.cookie.match(this.getCookieRE()); }
    this.cookieOK = function () { return this.sCookie != ""; }
    this.getFieldValue = function (iIndex) {
        return this.saCookie && this.saCookie.length > iIndex ? this.saCookie[iIndex] : "";
    }
    this.getOrderID = function () { return this.getFieldValue(this.iOrderIndex); }
    this.getQuestionnaireID = function () { return this.getFieldValue(this.iQuestionnaireIndex); }
    this.getReopenCount = function () {
        var iReopen = this.getFieldValue(this.iReopenIndex);
        return iReopen != "" && !isNaN(iReopen) ? iReopen : 0;
    }
    this.getTestOrder = function () { return this.getFieldValue(this.iTestOrderIndex).match(/true/gim) ? true : false; }

    this.init();
}
var iCMQPageVersion1 = 1;
var iCMQPageVersion2 = 2;
function cmSetQuestionnaireTOSTag() {
    var sTOSName = "";
    var sCategory = "";
    var sElement = "";
    var sProductName = "";
    var iProcess = -1
    try {
        sTOSName = cmQPageTOSElemTag.sName;
    } catch (e) { }
    if ( sTOSName != ""){
        sCategory = "QPage TOS";
        iProcess = cmGetShopProcess();
        sProductName = saIPAbbr[iProcess] ? saIPAbbr[iProcess] : "Unkown - PID " + iProcess;
        sElement = sProductName + " - " + sTOSName;
        cmCreateElementTag(sElement, sCategory)
    }
}
function cmSetQuestionnaireTag(iQPageVersion, iPage, iOrder, iQuestionnaire, iReopen, bTestOrder) {
    var bQuestionnaireFirstPage = !isNaN(iPage) && Number(iPage) < 2;
    var sOrder = getRevisionOrderNumber(iOrder, iReopen);
    var sEventID = getProductDescription(iQuestionnaire, giCMQuestionnaire);
    var sEventCategory = getConversionCategory();
    var iAction = sgCMConversionEventQuestionnaireStart;
    var sProductID = matchCategoryToID(iQuestionnaire, giCMQuestionnaire);
    var sProductName = getProductDescription(iQuestionnaire, giCMQuestionnaire);
    var sCategoryID = sProductID;
    var bAlreadySet = cmCheckActionFromCookie(sOrder, iReopen, iAction);
    var sLocation = iQPageVersion == iCMQPageVersion1 ? cmGetPageID(getSLocation()) : "/questionnaire/QPage_" + iQuestionnaire + "_" + iPage + ".asp";
    var iProcess = saOldIQ2IPMap[iQuestionnaire]
    bQuestionnaireFirstPage = bQuestionnaireFirstPage || (iQuestionnaire == 49 && iPage == 2);
    if (!bTestOrder) {
        if (bQuestionnaireFirstPage) {
            cmCreateConversionEventTag(sEventID, igCMConversionEventStart, sEventCategory);
            if (iaRevExcept[iProcess] && cmIsRevision()) {
                createProductViewTag();
            }
        }
    }
    cmSetQuestionnaireTOSTag();
    createPageViewTag();
}
function cmProcessOldQuestionnaire() {
    var oCookie = new cmCookie("cmOI");
    var bCookieOK = oCookie.cookieOK();
    var iOrder = oCookie.getOrderID();
    var iQuestionnaire = oCookie.getQuestionnaireID();
    var iReopen = oCookie.getReopenCount();
    var bTestOrder = oCookie.getTestOrder();
    var sLocation = getSLocation();
    var rePage = /[0-9]+.asp/
    var mPage = sLocation.match(rePage);
    var iPage = mPage ? mPage[0].replace(/.asp/gim, "") : -1;

    if (iReopen == 0) {
        iReopen = cmGetOrderReopen()
    }

    if (bCookieOK) {
        cmSetQuestionnaireTag(iCMQPageVersion1, iPage, iOrder, iQuestionnaire, iReopen, bTestOrder);
    }
}
function cmProcessQuestionnaire() {
    var oCookie = new cmCookie("cmOI");
    var bCookieOK = oCookie.cookieOK();
    var bCookieTestOrder = oCookie.getTestOrder();

    var iOrder = -1;
    var iQ = -1;
    var ilReopen = -1;
    var bIsTestOrder = true;
    var bOK = false;
    var iProcess = -1;

    try {
        iProcess = cmGetShopProcess();
        iOrder = iUserOrder;
        iQ = iQuestionnaire;
        ilReopen = iReopen;
        bIsTestOrder = oCookie.getTestOrder();
        bIsTestOrder = !bIsTestOrder ? bCookieTestOrder : bIsTestOrder;  // currently will be set to false on the second questionnaire.
        bOK = true;
    } catch (e) { }

    if (bOK) {
        cmSetQuestionnaireTag(iCMQPageVersion2, iPage, iOrder, iQuestionnaire, ilReopen, bIsTestOrder);
        /*
        if (iProcess == cmGILWTPID) {
            cmSetTrackLWTQTest();
        }
        */
    }
}
var cmTestTrack = {
    sTagPageAttribute: "pva",  //used to set the first attribute in cmCreatePageviewTag
    sTagElement: "el",  // used as the element id in cmCreateElementTag
    sTagPageID: "pvid", // appended to the page ID in cmCreatePageviewTag

    bUseTID: true,

    // -- deprecated functionality start
    getExpTrackingElement: function () {
        var sElementID = "";
        try {
            sElementID = cmExpTrackingElement ? cmExpTrackingElement : sElementID;
        } catch (e) { }
        return sElementID;
    },
    getEpxTrackingAttribute: function () {
        var sOut = "";
        try {
            sOut = cmExpTrackingAttribute;
        } catch (e) { }
        return sOut;
    },
    // -- deprecated functionality end


    getTestObj: function () { try { return cmTestContent } catch (e) { return null } },
    getName: function () {
        var obj = this.getTestObj();
        return obj && obj.sName ? obj.sName : "";
    },
    getSegment: function () {
        var obj = this.getTestObj();
        return obj && obj.sSegment ? obj.sSegment : "";
    },
    getTID: function () {
        var obj = this.getTestObj();
        return obj && obj.iTID ? obj.iTID : -1;
    },
    getTags: function () {
        var obj = this.getTestObj();
        return obj && obj.sTags ? obj.sTags : "";
    },
    getBShouldThrowTag: function (sTag) {
        var sTags = this.getTags();
        return sTags == "" || sTags.match(new RegExp(sTag, "gim"));
    },
    getBShouldUseInlinePageID: function () {
        var sTags = this.getTags();
        return sTags.match(new RegExp(this.sTagPageID, "gim"));
    },
    getPageID: function () {
        var obj = this.getTestObj();
        return obj && obj.sPageID ? obj.sPageID : "";
    },
    getPageAbbr: function () {
        var obj = this.getTestObj();
        return obj && obj.sPageAbbr ? obj.sPageAbbr : "";
    },
    getTracking: function (bUseTID) {
        var iTID = this.getTID();
        var sName = bUseTID && iTID != -1 ? iTID : this.getName();
        var sSegment = this.getSegment();
        return sName != "" && sSegment != "" ? sName + " - " + sSegment : "";
    },
    getTrackingString: function (sTag, bUseTID) {
        var sTestTrack = this.getTracking(bUseTID);
        return this.getBShouldThrowTag(sTag) && sTestTrack != "" ? sTestTrack : "";
    },
    getPageViewAttributeTag: function () {
        var sDeprecatedTag = this.getEpxTrackingAttribute();
        var sCurrentTag = this.getTracking(!this.bUseTID);
        var sOut = sCurrentTag == "" ? sDeprecatedTag : sCurrentTag;
        return this.getBShouldThrowTag(this.sTagPageAttribute) ? sOut : "";
    },
    getPageViewPageID: function (sCurID) {
        var sCurrentTracking = this.getTrackingString(this.sTagPageID, this.bUseTID);
        var sDeprecatedTracking = this.getEpxTrackingAttribute();
        var sPageID = this.getPageID();
        var sOut = sCurID ? sCurID : "";
        if (this.getBShouldUseInlinePageID() && sPageID != "") {
            sOut = sPageID;
        }
        if (sCurrentTracking != "") {  // do not set if using deprecated content
            sOut += (sOut == "" ? "" : " - ") + (sCurrentTracking != "" ? sCurrentTracking : sDeprecatedTracking);
        }
        return sOut;
    },
    getElementTracking: function () {
        var sName = this.getName();
        var sSegment = this.getSegment();
        var sPageAbbr = this.getPageAbbr();
        return sName != "" && sSegment != "" ? sName + " - " + sPageAbbr + (sPageAbbr == "" ? "" : " - ") + sSegment : "";
    },
    getElementTrackingString: function (sTag) {
        var sTestTrack = this.getElementTracking();
        return this.getBShouldThrowTag(sTag) && sTestTrack != "" ? sTestTrack : "";
    },
    getElementTag: function () {
        var sDeprecatedTracking = this.getExpTrackingElement();
        var sCurrentTracking = this.getElementTrackingString(this.sTagElement);
        return (sCurrentTracking != "" ? sCurrentTracking : sDeprecatedTracking);
    },
    end: "here"
}

function cmTrackTestContentElement() {
    var sElementID = "";
    try {
        sElementID = cmTestTrack.getElementTag(); // cmExpTrackingElement ? cmExpTrackingElement : sElementID;
        if (sElementID != "") {
            cmCreateElementTag(sElementID, "LZ - Test", "");
        }
    } catch (e) { }
}
function cmSetTrackTestContentElement() {
    if (window.addEventListener) {
        window.addEventListener("load", cmTrackTestContentElement, false);
    } else if (window.attachEvent) {
        window.attachEvent("onload", cmTrackTestContentElement);
    }
}
function cmSetTrackLWTQTest() {
    if (window.addEventListener) {
        window.addEventListener("load", cmSetLWTQReworkTestTag, false);
    } else if (window.attachEvent) {
        window.attachEvent("onload", cmSetLWTQReworkTestTag);
    }
}
/*                                 questionnaire tracking end                                   */
function cmSetPSSSOnload() {
    if (window.addEventListener) {
        window.addEventListener("load", cmSetPSSSTag, false);
    } else if (window.attachEvent) {
        window.attachEvent("onload", cmSetPSSSTag);
    }
}
function cmSetPSSSTag() {
    try {
        var sPageAbbr = [];
        sPageAbbr["1"] = "PwReset";
        sPageAbbr["2"] = "PwExpInv";
        sPageAbbr["3"] = "PwSuccess";
        var sVal = String(document.getElementById("ctl00_ContentPlaceHolder1_hdn_PageVersion").value);
        var sPage = sPageAbbr[sVal] ? sPageAbbr[sVal] : getSLocation();
        cmCreatePageviewTag(sPage, "CID101", null, null);
    } catch (e) { }
}
/* --------------------------------------- 2.5 end -------------------------------------------- */
var gsCMSPGSeg = [];
gsCMSPGSeg[1193] = "TM Delay Fee - Control";
gsCMSPGSeg[1194] = "TM Delay Fee - Experiment";

function cmGetSPGSegmentFromField() {
    var iOut = -1;
    /*
    var obj = null;
    try {
        obj = document.getElementById("hfSPGSegment");
        if (!obj) {
            obj = document.getElementById("ctl00_ContentPlaceHolder1_hfSPGSegment");
        }
        iOut = obj ? obj.value : iOut;
    } catch (e) { }
    */
    return iOut;
}
function cmGetSPGSegmentName() {
    var iSeg = cmGetSPGSegmentFromField();
    return iSeg != -1 && gsCMSPGSeg[iSeg] ? gsCMSPGSeg[iSeg] : "";
}
function cmGetTrackTestContent(bAppendPageAbbr) {
    var obj = null;
    var sLocation = getSLocation();
    var reTrackPages = /\/CheckOut\/Purchase_Lock.aspx|\/CheckOut\/Checkout.aspx/gim;
    var reOrderDone = /\/Finished\/OrderDone.aspx/gim;
    var reOrderDoneBullet = /Government-required filing fee will be automatically charged upon the filing of your trademark application with the USPTO./gim;
    var reOrderDoneTestCheck = /Total Paid Today/gim;
    var rePrintableReceipt = /\/Members\/PrintableReceipt.aspx/gim;
    var rePrintableReceiptTestCheck = /Current Total/gim;
    var sBody = "";
    var iProcess = cmGetShopProcess();
    var sElementID = "";
    var sPageAbbr = cmGetDynPageIDPrefix().replace(/[ ]*-[ ]*$/gim, "");
    if (sLocation.match(rePrintableReceipt)) {
        sBody = document.body.innerHTML;
        sElementID = cmGetSPGSegmentName();
        if (bAppendPageAbbr) {
            sElementID = (sBody.match(rePrintableReceiptTestCheck) ? sElementID : "")
        }
    }
    if (bAppendPageAbbr && sElementID != "") {
        sElementID += " - " + sPageAbbr
    }
    return sElementID;
}
function cmTrackTestContent() {
    var sElementID = cmGetTrackTestContent(true);
    if (sElementID != "") {
        cmCreateElementTag(sElementID, "LZ - Test", "");
    }

}
function cmProcessAdditionalTags() {
    var sLocation = getSLocation();
    var reRARenewalsPurcaseStart = /[\/\\]+RARenewals[\/\\]+PurchaseReview.aspx/gim;
    var mRARenewalsPurcaseStart = sLocation.match(reRARenewalsPurcaseStart);
    var rePLPage = /[\/\\]+checkout[\/\\]+purchase_lock|[\/\\]+checkout[\/\\]+revision_check|[\/\\]+RARenewals[\/\\]+PurchaseReview.aspx/gim;
    var rePLPageIgnore = /[\/\\]+checkout[\/\\]+purchase_lock-packages/gim;
    var mPLMatch = sLocation.match(rePLPage);
    var mPLMatchIgnore = sLocation.match(rePLPageIgnore);
    var reLegalFormsCheckout = /\/checkout\/checkout.asp[x]*/gim;
    var mLegalFormsCheckout = sLocation.match(reLegalFormsCheckout) && (getParameter("iQ").match(greLegalFormsQuestionnaire));
    var reQuestionnaire = /[\/\\]+questionnaire[\/\\]+QPage_[0-9]+_[0-9]+.asp/gim;
    var mQuestionnaire = sLocation.match(reQuestionnaire);
    var reNewQuestionnaire = /\/brainnet\/huge.aspx|questionnaire.aspx/gim;
    var mNewQuestionnaire = sLocation.match(reNewQuestionnaire);
    var reOrderDonePage = /[\/\\]+finished[\/\\]+order_done|[\/\\]+finished[\/\\]+orderdone|[\/\\]+RARenewals[\/\\]+Confirmation.aspx|[\/\\]+Finished[\/\\]+OrderConfirmation.aspx/gim;
    var mOrderDone = sLocation.match(reOrderDonePage);
    var reForms = new RegExp(gsCMFormsPath, "gim");
    //var reFormsIgnore = new RegExp( gsCMFormsPath + "home.html", "" );
    var reFormsIgnore = new RegExp("home.html", "gim");
    var mForms = sLocation.match(reForms) && !sLocation.match(reFormsIgnore);
    var bError = cmBErrorPage();
    var reRegistration = /[\/\\]+members[\/\\]+my_account_profile.asp/gim;
    var mRegistration = sLocation.match(reRegistration);
    var reIgnoreForPageViewTag = /[\/\\]+RARENEWALS[\/\\]+Purchase/gim;
    var bIgnoreForPageViewTag = sLocation.match(reIgnoreForPageViewTag);
    var reOverview = /espanol\/testamento.html|-overview.html|-overview-[a-z]+.html|additional-business-services|small-claims-overview-california.html|contract-review.html|contract-drafting.html|demand-letter.html|trademark-dispute-letter.html|separation-agreement.html|spousal-support-modification.html|child-support-modification.html|child-custody-modification.html|stepparent-adoption.html|guardianship.html|legal-separation.html|home-sale-agreement.html|employment-agreement.html|franchise-agreement.html|prenuptial-agreement-review.html|postnuptial-agreement.html|business-advantage-pro.html|legal-advantage-plus.html|personal.html|business.html/gim;
    var mOverview = sLocation.match(reOverview);
    var reOverviewExclude = /trademark-ancillary-products-overview|\/sitemap-|corporate-supplies.html|s-corp-election.html|sellers-permit.html|state-tax-id.html|patent-overview-page.html|patent-overview.html|trademark-overview.html|ra-compare.html/gim;
    var mOverviewExclude = sLocation.match(reOverviewExclude);

    // RID4074
    var reCorpMinutesSubscription = /[\/\\]+CheckOut[\/\\]+Purchase_Lock.aspx/gim;
    var mCorpMinutesSubscription = sLocation.match(reCorpMinutesSubscription);
    var reASDMembership = /[\/\\]+CheckOut[\/\\]+Purchase_Lock.aspx/gim;
    var mASDMembership = sLocation.match(reASDMembership);
    var reRARenewalConversion = /[\/\\]+RARENEWALS[\/\\]+ContactProfile.aspx/gim;
    var mRARenewalConversion = sLocation.match(reRARenewalConversion);
    var reRARenewalShop5 = /[\/\\]+RARENEWALS[\/\\]+Purchase.aspx/gim;
    var mRARenewalShop5 = sLocation.match(reRARenewalShop5);
    var reRARenewalConfirmation = /[\/\\]+RARENEWALS[\/\\]Confirmation.aspx/gim;
    var mRARenewalConfirmation = sLocation.match(reRARenewalConfirmation);
    var reEntityNameCheck = /[\/\\]+questionnaire[\/\\]+QPage_248_1.asp/gim;
    var mEntityNameCheck = sLocation.match(reEntityNameCheck);
    var reRARenewalHelp = /ra_autorenewhelp.html/gim;
    var mRARenewalHelp = sLocation.match(reRARenewalHelp);
    var mAdvantageAttorneys = sLocation.match(greAdvantageAttorneys);
    var rePSSS = /\/Welcome\/PasswordReset.aspx/gim;
    var mPSSS = sLocation.match(rePSSS)? true: false;

    if (mOverview) {
        if (!mOverviewExclude) {
            createProductViewTag();
            createPageViewTag();
        } else {
            createPageViewTag();
        }
    } else if (mPLMatch && !mPLMatchIgnore) {
        if (!mRARenewalsPurcaseStart) {
            cmSetShop5();
        }
        createPageViewTag();
    } else if (mOrderDone) {
        cmSetShop9AndOrderTags();
        createPageViewTag();
    } else if (mNewQuestionnaire) {
        cmProcessQuestionnaire();
    } else if (mQuestionnaire) {
        cmProcessOldQuestionnaire();
    } else if (bError) {
        cmSetErrorTag();
    } else if (mRegistration) {
        cmRegistrationProfileSubmit();
    } else if (mLegalFormsCheckout) {
        cmSetLegalFormsPurchaseStartTag();
    } else if (mForms) {
        cmSetFormPageViewTag();
        cmOnloadInitFormsTracking();
    } else if (mRARenewalHelp) {
        cmCreatePageviewTag("/ra_autorenewhelp.html", "PID28-CID9");
    } else if (mPSSS) {
        cmSetPSSSOnload();
    } else if (mAdvantageAttorneys) {
        cmProcessAdvantageAttorneys();
    } else if (!bIgnoreForPageViewTag) {
        createPageViewTag();
    }

    // Misc Tags
    if (mCorpMinutesSubscription) {
        ProcessCorpMinutesSubscription();
    }
    if (mASDMembership) {
        ProcessASDMembership();
    }
    if (mRARenewalShop5) {
        ProcessRARenewalShop5();
    }
    if (mRARenewalConversion) {
        ProcessRARenewalConversion();
    }
    if (mRARenewalConfirmation) {
        ProcessRARenewalConfirmation();
    }
    if (mEntityNameCheck) {
        ProcessEntityNameCheck();
    }
    cmTrackTestContent();
    cmSetTrackTestContentElement();
}

function createProductViewTag() {
    var oaFound = getPageMappings();
    var sCategory = oaFound ? oaFound[giCMCategoryID] : "UNK";
    var sCategoryDescription = oaFound ? oaFound[giCMCategoryDescription] : "UNKNOWN";
    var sLocation = getSLocation();
    sLocation = cmGetPageID(sLocation);
    sCategory += cmGetRevisionCategory();
    cmCreateProductviewTag(sCategory, sCategoryDescription, sCategory);
}

function ProcessRARenewalConversion() {
    try {
        var url = document.referrer;
        url = url.substring(0, (url.indexOf("#") == -1) ? url.length : url.indexOf("#"));
        url = url.substring(0, (url.indexOf("?") == -1) ? url.length : url.indexOf("?"));
        url = url.substring(url.lastIndexOf("/") + 1, url.length);
        if (url != "ContactProfile.aspx") // fix multiple RA items
        {
            createProductViewTag();
            cmCreateConversionEventTag("RA Renewal", igCMConversionEventStart);
        }
    } catch (e) { }
}

function ProcessRARenewalShop5() {
    try {
        var RenewalAmount = $("#ctl00_ContentPlaceHolder1_lblGrandTotal").html().replace("$", "");
        cmCreateShopAction5Tag("PID28", "RA Renewal", 1, RenewalAmount);
        cmDisplayShop5s();
        cmCreatePageviewTag("/LZWeb/RARenewals/Purchase.aspx", "PID28-CID9");
    } catch (e) { }
}

function ProcessRARenewalConfirmation() {
    try {
        var oaOrderItems = cmGetOrderItems();
        var sOrderID = cmGetOrderIdWithRevision();
        var bIncludeStateFeeInTotal = true;
        var bIgnoreAttorneyFees = false;
        var bIncludeShipping = true;
        var fOrderSubTotal = cmGetOrderSubTotal(true, false, false);
        var fShop9OrderTotal = cmGetOrderSubTotal(true, false, true);
        var fShop9SubTotal = cmGetOrderSubTotal(bIncludeStateFeeInTotal, bIgnoreAttorneyFees, bIncludeShipping);
        var fOrderShipping = cmGetOrderShipping();
        var sCustomerID = cmGetOrderCustomerID();
        var sCustomerEmail = cmGetOrderCustomerEmail();
        var sCustomerCity = cmGetOrderCustomerCity();
        var sCustomerState = cmGetOrderCustomerState();
        var sCustomerZip = cmGetOrderCustomerZip();
        //cmCreateConversionEventTag("RA Renewal", igCMConversionEventComplete);
        cmCreateShopAction9Tag("PID28", "RA Renewal", 1, cmGetFormatedPrice(fOrderSubTotal), sCustomerID, sOrderID, cmGetFormatedPrice(fShop9OrderTotal), "PID28", "-_--_--_--_--_-" + oaOrderItems[0].sProductName + "-_-SINGLE PAY");
        cmDisplayShop9s();
        cmCreateOrderTag(sOrderID, cmGetFormatedPrice(fOrderSubTotal), cmGetFormatedPrice(fOrderShipping), sCustomerID, sCustomerCity, sCustomerState, sCustomerZip, "-_--_--_--_--_-" + oaOrderItems[0].sProductName + "-_-SINGLE PAY");
    } catch (e) { }
}

function ProcessEntityNameCheck() {
    try {
        cmCreateShopAction5Tag(gsCMEntityNameCheck, "Entity Name Availability Check", 1, 0.00, gsCMEntityNameCheck);
        cmDisplayShop5s();
        var oaOrderItems = cmGetOrderItems();
    } catch (e) { }
}

function ProcessCorpMinutesSubscription() {
    try {
        var sProcess = cmGetiProcessID();
        if (sProcess == "42") {
            cmCreateConversionEventTag("Corporate Minutes Annual Subscription", igCMConversionEventStart);
        }
    } catch (e) { }
}

//BAP AND LAP Memberships
function ProcessASDMembership() {
    try {
        var sProcess = cmGetiProcessID();
        if (sProcess == 109 || sProcess == 112) {
            var oaOrderItems = cmGetOrderItems();
            var sCategoryID = matchCategoryToID(iProcess, giCMProcess);
            var sProductID = oaOrderItems[0].sProductID;
            var sProductName = getProductDescription(iProcess, giCMProcess);
            var ASDPackage = "6 Months"
            if (sProcess == 109) {
                if (sProductID == 1514) { ASDPackage = "6 Months" }
                if (sProductID == 1512) { ASDPackage = "3 Months" }
                if (sProductID == 1423) { ASDPackage = "Monthly" }
            }
            if (sProcess == 112) {
                if (sProductID == 1519) { ASDPackage = "6 Months" }
                if (sProductID == 1517) { ASDPackage = "3 Months" }
                if (sProductID == 1440) { ASDPackage = "Monthly" }
            }
            cmCreateConversionEventTag(sProductName, igCMConversionEventStart);
            cmCreateShopAction5Tag(sProcess, oaOrderItems[0].sProductName, 1, 0.00, sCategoryID, "-_--_--_--_--_-" + ASDPackage + "-_-SINGLE PAY");
            cmDisplayShop5s();
        }
    } catch (e) { }
}

//Legal Forms
function cmProcessLegalForms() {
    try {
        if (WritePod.toString().length > 0) {
            var cmPodContent = WritePod.toString().replace(/[^a-zA-Z 0-9]+/g, '');
            if (cmPodContent.indexOf("Welcome") == -1) {
                var cmPageTitle = document.title.replace(" | LegalZoom Legal Forms", "");
                cmCreateProductviewTag("PID" + gsLegalFormsSAProcessID, "Forms Standalone", "PID" + gsLegalFormsSAProcessID); // PID
                cmCreateProductviewTag("PID" + gsLegalFormsSubProcessID, "Forms Subscription", "PID" + gsLegalFormsSubProcessID); // PID
            }
        }
    } catch (e) { }
}

function cmProcessLegalFromsEvents(ProcessId, FormName) {
    try {
        var gsCMFormsName = "";
        if (ProcessId == 62) { gsCMFormsName = "Forms Standalone"; }
        if (ProcessId == 94) {
            gsCMFormsName = "Forms Subscription";
            var cmPageTitle = document.title.replace(" | LegalZoom Legal Forms", "");
            cmSetFormCookieID("Legal Forms", cmPageTitle, "1");
        }
        cmCreateConversionEventTag(gsCMFormsName, igCMConversionEventStart);
    }
    catch (e) { }
    window.location = "/LZWeb/PreProcess/PreProcess.aspx?iProcess=" + ProcessId + "&FormIndex=" + FormName;
}

function cmProcessAdvantageAttorneys() {
    var reLocationPage = /[^\/\\]+$/gim; ;
    var mLocationPage = "";
    var sLocationPage = "";
    var sLocation = getSLocation();
    if (sLocation.match(greAdvantageAttorneys)) {
        mLocationPage = sLocation.match(reLocationPage)
        if (mLocationPage) {
            sLocationPage = String(mLocationPage);
            cmCreatePageviewTag(sLocationPage, "CID103", null, null, null);
        } else {
            createPageViewTag();
        }
    } else {
        createPageViewTag();
    }
}
cmProcessLegalForms();

cmProcessAdditionalTags();
// document select routines START
var gsPDFFile = "";
var cmDocSelect = {
    saCheckIgnoreSource: { 4: "questionnaire.aspx|QPage_[0-9]+_[0-9]+.asp|huge.aspx" }, 
    sCheckForModal: ",1,2,3,4,6,9,11,15,18,20,23,24,25,26,27,38,47,48,75,80,81,107,",
    oOverlay: null,
    sPDF: "",
    getProcess: function () {
        var oa = getPageMappings();
        var iOut = giNotFound;
        if (oa) {
            iOut = oa[giCMProcess];
        }
        if (iOut == giNotFound) {
            try { iOut = fkProduct } catch (e) { }
        }
        iOut = iOut == giNotFound ? cmGetShopProcess() : iOut;
        return iOut;
    },
    getLocation: function () { return String(String(document.location).match(/[^\/\\]+$/gim)); },
    shouldShowModal: function () {
        var bOut = false;
        var iProcess = this.getProcess();
        var reProcess = new RegExp("," + iProcess + ",", "gim");
        var sLocation = this.getLocation();
        if (this.sCheckForModal.match(reProcess)) {
            if (this.saCheckIgnoreSource[iProcess]) {
                bOut = sLocation.match(new RegExp(this.saCheckIgnoreSource[iProcess], "gim")) ? false : true;
            } else {
                bOut = true;
            }
        }
        return bOut;
    },
    showModal: function () {
        gsPDFFile = this.sPDF;
        $("body").append("<style>#overlayChooseDocument {width:500px;height:250px;border: solid #eeeeee 6px;}.overlay{display:none;background-color:#fff;padding:35px;font-size:11px;}.overlay .close {background-image:url(/img/overlay/close.png);position:absolute; right:-13px; top:-13px;cursor:pointer;height:40px;width:40px;}</style><scr" + "ipt type='text/javascript'>var sFile = \"" + this.sPDF + "\";</scr" + "ipt><div class='overlay' id='overlayChooseDocument'><div class='contentWrap'></div></div>");
        this.oOverlay = $("#overlayChooseDocument").overlay({ mask: 'lightgrey', effect: 'default', closeOnClick: true, load: true, api: true });
        includeJavascript("/lib/lz.questionnaire.jquery.js");
        var wrap = $("#overlayChooseDocument").find(".contentWrap");
        wrap.load("/chooseDocument.html");
    },
    closeModal: function () {
        if (this.oOverlay) {
            this.oOverlay.close();
        }
    }
}
function cmShowDocumentSelectModal() {
    cmDocSelect.showModal()
}
// document select routines END
// for pdf tracking and acrobat version detection - start
function includeJavascript(src, callback) {
    if (document.createElement && document.getElementsByTagName) {
        var head_tag = document.getElementsByTagName('head')[0];
        var script_tag = document.createElement('script');
        script_tag.setAttribute('type', 'text/javascript');
        script_tag.setAttribute('src', src);
        head_tag.appendChild(script_tag);
        if (callback) {
            if (script_tag.readyState) {  //IE
                script_tag.onreadystatechange = function () {
                    if (script_tag.readyState == "loaded" ||
                        script_tag.readyState == "complete") {
                        script_tag.onreadystatechange = null;
                        callback();
                    }
                };
            } else {  //Others
                script_tag.onload = function () {
                    callback();
                };
            }
        }
    }
}
function showIncorrectPDFVerion() {
    $("body").append("<style>#overlayMessage {width:500px;height:300px;}.overlay{display:none;background-image:url(/img/home/navigationOverlayBackground.gif);background-repeat: repeat-x;background-color:#fff;padding:35px;font-size:11px;}.overlay .close {background-image:url(/img/overlay/close.png);position:absolute; right:-10px; top:-10px;cursor:pointer;height:35px;width:35px;}</style><div class=\"overlay\" id=\"overlayMessage\"><div style=\"height:60px\"></div><span style=\"font-size:14px;font-family:arial;color:#000000;font-weight:normal\">To view any LegalZoom sample documents, you must have Adobe&reg; Reader&reg; Version 9.0 or higher installed on your computer. Click on the link below to download the latest version for free and follow the instructions provided.<br /><br /><div align=\"center\"><a href=\"http://get.adobe.com/reader\" target=\"_blank\">Go to Adobe Reader Download Page Now ></a></div></span></div>");
    $("#overlayMessage").overlay({ mask: 'lightgrey', effect: 'default', closeOnClick: true, load: true });
    includeJavascript("/lib/lz.questionnaire.jquery.js");
} 
function cmPDFsample(pdf, bLoad) {
    var pdfname = pdf.replace("/samples/", "").replace("http://www.legalzoom.com","");
    try {
        var perform_acrobat_detection = function () {
            var browser_info = {
                name: null,
                acrobat: null,
                acrobat_ver: null
            };
            if (navigator && (navigator.userAgent.toLowerCase()).indexOf("chrome") > -1) browser_info.name = "chrome";
            else if (navigator && (navigator.userAgent.toLowerCase()).indexOf("msie") > -1) browser_info.name = "ie";
            else if (navigator && (navigator.userAgent.toLowerCase()).indexOf("firefox") > -1) browser_info.name = "firefox";
            else if (navigator && (navigator.userAgent.toLowerCase()).indexOf("msie") > -1) browser_info.name = "other";
            try {
                if (browser_info.name == "ie") {
                    var control = null;
                    // load the activeX control
                    try {
                        // AcroPDF.PDF is used by version 7 and later
                        control = new ActiveXObject('AcroPDF.PDF');
                    }
                    catch (e) { }

                    if (!control) {
                        try {
                            // PDF.PdfCtrl is used by version 6 and earlier
                            control = new ActiveXObject('PDF.PdfCtrl');
                        }
                        catch (e) { }
                    }
                    if (!control) {
                        browser_info.acrobat == null;
                        return browser_info;
                    }
                    version = control.GetVersions().split(',');
                    version = version[0].split('=');
                    browser_info.acrobat = "installed";
                    browser_info.acrobat_ver = parseFloat(version[1]);
                }
                else if (browser_info.name == "chrome") {
                    for (key in navigator.plugins) {
                        if (navigator.plugins[key].name == "Chrome PDF Viewer" || navigator.plugins[key].name == "Adobe Acrobat") {
                            browser_info.acrobat = "installed";
                            browser_info.acrobat_ver = parseInt(navigator.plugins[key].version) || "Chome PDF Viewer";
                        }
                    }
                }
                // NS3+, Opera3+, IE5+ Mac, Safari (support plugin array):  check for Acrobat plugin in plugin array
                else if (navigator.plugins != null) {
                    var acrobat = navigator.plugins['Adobe Acrobat'];
                    if (acrobat == null) {
                        browser_info.acrobat = null;
                        return browser_info;
                    }
                    browser_info.acrobat = "installed";
                    browser_info.acrobat_ver = parseInt(acrobat.version[0]);
                }
            }
            catch (e) {
                browser_info.acrobat_ver = null;
            }
            return browser_info;
        }
        showPDF = true;
        var browser_info = perform_acrobat_detection();
        // ie
        if (browser_info.name == "ie") {
            if (browser_info.acrobat_ver < 9) {
                showPDF = false;
            }
        }
        // firefox
        if (browser_info.name == "firefox") {
            if (browser_info.acrobat_ver != 1 && browser_info.acrobat_ver < 9) { // acrobat v10 shows as 1
                showPDF = false;
            }
        }
        // chrome
        if (browser_info.name == "chrome") {
            showPDF = true;
        }
        if (showPDF) {

            if (cmDocSelect.shouldShowModal() && !bLoad) {
                cmDocSelect.sPDF = pdf;
                includeJavascript("/lib/jquery.tools.min.js", cmShowDocumentSelectModal);
            } else {
                cmDocSelect.closeModal();
                cmCreatePageviewTag(pdfname, "CID104");
                window.open(pdf);
            }
        }
        else {
            cmCreatePageviewTag(pdfname + " version check popup", "CID104");
            currentURL = document.location.href.toLowerCase();
            if (browser_info.name == "firefox" && currentURL.indexOf("questionnaire") != -1) {
                function OpenConfirmPopup() {
                    if (confirm("To view any LegalZoom sample documents, you must have Adobe Reader Version 9.0 or higher installed on your computer. Click OK to download the latest version for free.")) {
                        window.open('http://get.adobe.com/reader', 'getnewversion', 'width=600,height=500');
                    }
                }
                OpenConfirmPopup();
            }
            else { 
                // output popup msg
                includeJavascript("/lib/jquery.tools.min.js", showIncorrectPDFVerion);
            }
        }
    }
    catch (e) {
        cmCreatePageviewTag(pdfname, "CID104");
        window.open(pdf);
    }
}

// for pdf tracking and acrobat version detection - end

