Advertisement
Guest User

Untitled

a guest
Nov 22nd, 2017
4,567
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var POWERREVIEWS = (function(publicScope) {
  2.     publicScope.ext = publicScope.ext || {};
  3.     publicScope.ext.evaluate = function(arg) {
  4.         return eval(arg);
  5.     }
  6.     ;
  7.     return publicScope;
  8. }
  9. )(POWERREVIEWS || {});
  10. POWERREVIEWS = (function(F) {
  11.     F.common = F.common || {};
  12.     F.display = F.display || {};
  13.     F.config = F.config || {};
  14.     var Bu = false;
  15.     var CO = false;
  16.     var t = null;
  17.     var K = null;
  18.     var s = {};
  19.     var L = {};
  20.     var AI = {};
  21.     var B0 = {};
  22.     F.common.gResult = B0;
  23.     var f = {};
  24.     var Bj = {};
  25.     var V;
  26.     var Ca = 0;
  27.     var BO = [];
  28.     var BI = encodeURIComponent || escape;
  29.     var A2 = "prBaseStylesheet";
  30.     var BD = "prMerchantOverrideStylesheet";
  31.     var BP = {
  32.         "0": {
  33.             large: "pr-stars-0",
  34.             small: "pr-stars-0-sm"
  35.         },
  36.         "1": {
  37.             large: "pr-stars-1",
  38.             small: "pr-stars-1-sm"
  39.         },
  40.         "1.5": {
  41.             large: "pr-stars-1_5",
  42.             small: "pr-stars-1_5-sm"
  43.         },
  44.         "2": {
  45.             large: "pr-stars-2",
  46.             small: "pr-stars-2-sm"
  47.         },
  48.         "2.5": {
  49.             large: "pr-stars-2_5",
  50.             small: "pr-stars-2_5-sm"
  51.         },
  52.         "3": {
  53.             large: "pr-stars-3",
  54.             small: "pr-stars-3-sm"
  55.         },
  56.         "3.5": {
  57.             large: "pr-stars-3_5",
  58.             small: "pr-stars-3_5-sm"
  59.         },
  60.         "4": {
  61.             large: "pr-stars-4",
  62.             small: "pr-stars-4-sm"
  63.         },
  64.         "4.5": {
  65.             large: "pr-stars-4_5",
  66.             small: "pr-stars-4_5-sm"
  67.         },
  68.         "5": {
  69.             large: "pr-stars-5",
  70.             small: "pr-stars-5-sm"
  71.         }
  72.     };
  73.     var a = {};
  74.     function Aj() {
  75.         return {
  76.             "en_US": {
  77.                 "en_US": "US English"
  78.             }
  79.         };
  80.     }
  81.     F.common.getLocaleTranslations = Aj;
  82.     var BC = Aj();
  83.     var Ar = {
  84.         pr_merchant_table: {
  85.             "m6406": {
  86.                 "cobranded": "true",
  87.                 "name": "Ulta"
  88.             },
  89.             "siteId-1": {
  90.                 "cobranded": "true",
  91.                 "name": "Ulta"
  92.             }
  93.         },
  94.         pr_merchant_id: 6406,
  95.         pr_merchant_name: "Ulta",
  96.         pr_site_id: null,
  97.         pr_merchant_group_id: 11984,
  98.         pr_locale: "en_US",
  99.         pr_all_locales: ["en_US"],
  100.         pr_all_locales_hash: {
  101.             "en_US": true
  102.         },
  103.         pr_locale_transitions: {},
  104.         pr_read_review: "#ReviewHeader",
  105.         pr_read_qa: "#QAHeader",
  106.         pr_write_review: "",
  107.         pr_ask_question: "",
  108.         pr_answer_question: "",
  109.         pr_js_controller_url: "http://services.powerreviews.com/JSController.do",
  110.         pr_reviews_per_page: 10,
  111.         pr_questions_per_page: 10,
  112.         pr_zip_location: "/reviewcenter/",
  113.         pr_powerreviews_root: "pwr",
  114.         pr_review_display_usage_tracker_path: "http://cdn.powerreviews.com/aux/",
  115.         pr_allow_engine_css_override: true,
  116.         pr_style_sheet: "",
  117.         pr_analytics_script_src: "",
  118.         pr_analytics_account: "",
  119.         pr_badge_definitions_url: "javascript:POWERREVIEWS.common.showSmallPopup('http://www.powerreviews.com/legal/badge_definitions_~~~LOCALE~~~.html', 580, 460)",
  120.         pr_expert_badge_definitions_url: "javascript:POWERREVIEWS.common.showSmallPopup('http://www.powerreviews.com/legal/expert_badge_definitions_~~~LOCALE~~~.html', 580, 460)",
  121.         pr_frame_height: 3000,
  122.         pr_base_services_urls: {
  123.             "-": "http://services.powerreviews.com/"
  124.         },
  125.         pr_base_follow_landing_urls: {
  126.             "-": "http://social.powerreviews.com"
  127.         },
  128.         pr_resize_url: "",
  129.         pr_mobile_write_a_review_html_url: "/reviewcenter/pwr/engine/js/writeReview.html",
  130.         pr_snippet_min_reviews: 0,
  131.         pr_suppress_google_plus_one: false,
  132.         pr_source: "web",
  133.         pr_image_snippet_show_image: B7,
  134.         pr_image_snippet_max: 7,
  135.         pr_snippet_star_click: "",
  136.         pr_back_to_top_link: "#",
  137.         pr_see_all_reviews_url: "",
  138.         pr_nbr_displayed_profile_reviews: -1,
  139.         pr_overwrite_inline_content: false,
  140.         pr_badge_table: {
  141.             "42104": {
  142.                 "locales": {
  143.                     "en_US": {
  144.                         "filename": "badge_119841435692833819.png",
  145.                         "description": "",
  146.                         "hovertext": "Staff Expert"
  147.                     }
  148.                 },
  149.                 "isStaff": true,
  150.                 "label": "Staff Expert NEW"
  151.             },
  152.             "11023": {
  153.                 "locales": {
  154.                     "fr_CA": {
  155.                         "filename": "badge_sr_fr_CA.gif",
  156.                         "description": "",
  157.                         "hovertext": "Critique de personnel"
  158.                     },
  159.                     "en_GB": {
  160.                         "filename": "badge_sr_en_GB.gif",
  161.                         "description": "A Staff Reviewer is a merchant or brand employee who contributes a review based on ownership or usage of the product.",
  162.                         "hovertext": "Staff Reviewer"
  163.                     },
  164.                     "jp_JP": {
  165.                         "filename": "badge_sr_jp_JP.gif",
  166.                         "description": "",
  167.                         "hovertext": ""
  168.                     },
  169.                     "en_US": {
  170.                         "filename": "badge_sr_en_US.gif",
  171.                         "description": "A Staff Reviewer is a merchant or brand employee who contributes a review based on ownership or usage of the product.",
  172.                         "hovertext": "Staff Reviewer"
  173.                     },
  174.                     "en_CA": {
  175.                         "filename": "badge_sr_en_CA.gif",
  176.                         "description": "A Staff Reviewer is a merchant or brand employee who contributes a review based on ownership or usage of the product.",
  177.                         "hovertext": "Staff Reviewer"
  178.                     },
  179.                     "en_AU": {
  180.                         "filename": "badge_sr_en_AU.gif",
  181.                         "description": "A Staff Reviewer is a merchant or brand employee who contributes a review based on ownership or usage of the product.",
  182.                         "hovertext": "Staff Reviewer"
  183.                     },
  184.                     "fr_FR": {
  185.                         "filename": "badge_sr_fr_FR.gif",
  186.                         "description": "",
  187.                         "hovertext": ""
  188.                     },
  189.                     "nl_NL": {
  190.                         "filename": "badge_sr_nl_NL.gif",
  191.                         "description": "A Staff Beoordeler is een handelaar of merk werknemer die beoordelingen inzend op basis van eigendom of gebruik van het product.",
  192.                         "hovertext": "Staff Beoordeler"
  193.                     },
  194.                     "de_DE": {
  195.                         "filename": "badge_sr_de_DE.gif",
  196.                         "description": "",
  197.                         "hovertext": "Mitarbeiter-Bewerter"
  198.                     }
  199.                 },
  200.                 "isStaff": true,
  201.                 "label": "staff"
  202.             },
  203.             "11024": {
  204.                 "locales": {
  205.                     "it_IT": {
  206.                         "filename": "badge_se_it_IT.gif",
  207.                         "description": "",
  208.                         "hovertext": ""
  209.                     },
  210.                     "fr_CA": {
  211.                         "filename": "badge_se_fr_CA.gif",
  212.                         "description": "",
  213.                         "hovertext": ""
  214.                     },
  215.                     "en_GB": {
  216.                         "filename": "badge_se_en_GB.gif",
  217.                         "description": "A Staff Expert is a merchant or brand employee with recognized expertise within the company who contributes a review based on in-depth knowledge of the product as well as related products.",
  218.                         "hovertext": "Staff Reviewer"
  219.                     },
  220.                     "jp_JP": {
  221.                         "filename": "badge_se_jp_JP.gif",
  222.                         "description": "",
  223.                         "hovertext": ""
  224.                     },
  225.                     "en_US": {
  226.                         "filename": "badge_se_en_US.gif",
  227.                         "description": "A Staff Expert is a merchant or brand employee with recognized expertise within the company who contributes a review based on in-depth knowledge of the product as well as related products.",
  228.                         "hovertext": "Staff Reviewer"
  229.                     },
  230.                     "en_CA": {
  231.                         "filename": "badge_se_en_CA.gif",
  232.                         "description": "",
  233.                         "hovertext": ""
  234.                     },
  235.                     "pt_BR": {
  236.                         "filename": "badge_se_pt_BR.gif",
  237.                         "description": "",
  238.                         "hovertext": ""
  239.                     },
  240.                     "fr_FR": {
  241.                         "filename": "badge_se_fr_FR.gif",
  242.                         "description": "",
  243.                         "hovertext": ""
  244.                     },
  245.                     "de_DE": {
  246.                         "filename": "badge_se_de_DE.gif",
  247.                         "description": "",
  248.                         "hovertext": "Mitarbeiter-Bewerter"
  249.                     }
  250.                 },
  251.                 "isStaff": true,
  252.                 "label": "staff-expert"
  253.             },
  254.             "42105": {
  255.                 "locales": {
  256.                     "en_US": {
  257.                         "filename": "badge_119841435692939907.png",
  258.                         "description": "",
  259.                         "hovertext": "Brand Expert"
  260.                     }
  261.                 },
  262.                 "isStaff": false,
  263.                 "label": "Brand Expert NEW"
  264.             }
  265.         },
  266.         pr_attribution_table: {
  267.             "840447": {
  268.                 "image_uri": "17837_840447_logo_small.png",
  269.                 "originating_merchant_url": "http://www.lancome-usa.com/"
  270.             },
  271.             "947326": {
  272.                 "image_uri": "48372_947326_logo_small.png",
  273.                 "originating_merchant_url": "http://www.hawaiiantropic.com/"
  274.             },
  275.             "157832": {
  276.                 "image_uri": "15790_157832_logo_small.png",
  277.                 "originating_merchant_url": "http://www.CrestComplete.com"
  278.             },
  279.             "406823": {
  280.                 "image_uri": "49201_406823_logo_small.png",
  281.                 "originating_merchant_url": "http://www.peterthomasroth.com/Home"
  282.             },
  283.             "834325": {
  284.                 "image_uri": "17748_834325_logo_small.png",
  285.                 "originating_merchant_url": "http://https://www.ogxbeauty.com/"
  286.             },
  287.             "849181": {
  288.                 "image_uri": "48523_849181_logo_small.png",
  289.                 "originating_merchant_url": "http://www.strivectin.com/"
  290.             },
  291.             "22994": {
  292.                 "image_uri": "77688_22994_logo_small.png",
  293.                 "originating_merchant_url": "http://www.shawnsignature.com/"
  294.             },
  295.             "724678": {
  296.                 "image_uri": "15792_logo_small.png",
  297.                 "originating_merchant_url": "http://www.CleanClear.com"
  298.             },
  299.             "468752": {
  300.                 "image_uri": "48939_468752_logo_small.png",
  301.                 "originating_merchant_url": "http://incoco.com/"
  302.             },
  303.             "8803": {
  304.                 "image_uri": "11027_8803_logo_small.png",
  305.                 "originating_merchant_url": "http://www.perriconemd.com"
  306.             },
  307.             "730427": {
  308.                 "image_uri": "15700_logo_small.png",
  309.                 "originating_merchant_url": "http://www.Olay.com"
  310.             },
  311.             "993415": {
  312.                 "image_uri": "49040_993415_logo_small.png",
  313.                 "originating_merchant_url": "http://www.michaeltoddbeauty.com"
  314.             },
  315.             "113582": {
  316.                 "image_uri": "17010_113582_logo_small.png",
  317.                 "originating_merchant_url": "http://www.gillettevenus.com/"
  318.             },
  319.             "34989": {
  320.                 "image_uri": "48488_logo_small.png",
  321.                 "originating_merchant_url": "http://www.instyler.com/"
  322.             },
  323.             "844498": {
  324.                 "originating_merchant_url": "http://skinandcoroma.com"
  325.             },
  326.             "589963": {
  327.                 "image_uri": "15837_logo_small.png",
  328.                 "originating_merchant_url": "http://www.BurtsBees.com"
  329.             },
  330.             "590511": {
  331.                 "image_uri": "48488_logo_small.png",
  332.                 "originating_merchant_url": "http://https://www.instylermax.com/"
  333.             },
  334.             "294357": {
  335.                 "image_uri": "48681_294357_logo_small.png",
  336.                 "originating_merchant_url": "http://www.elfcosmetics.com/"
  337.             },
  338.             "19275": {
  339.                 "image_uri": "15403_logo_small.jpg",
  340.                 "originating_merchant_url": "http://www.dyson.com/"
  341.             },
  342.             "12285": {
  343.                 "image_uri": "15858_12285_logo_small.png",
  344.                 "originating_merchant_url": "http://www.RemingtonProducts.com"
  345.             },
  346.             "419508": {
  347.                 "image_uri": "16227_logo_small.png",
  348.                 "originating_merchant_url": "http://www.lorealparisusa.com/"
  349.             },
  350.             "309380": {
  351.                 "image_uri": "16227_419508_logo_small.png",
  352.                 "originating_merchant_url": "http://www.lorealparisusa.com/"
  353.             },
  354.             "707585": {
  355.                 "image_uri": "15736_logo_small.png",
  356.                 "originating_merchant_url": "http://www.Gillette.com"
  357.             },
  358.             "48817": {
  359.                 "image_uri": "48488_logo_small.png",
  360.                 "originating_merchant_url": "http://https://www.trytulip.com/"
  361.             },
  362.             "60521": {
  363.                 "image_uri": "15637_logo_small.png",
  364.                 "originating_merchant_url": "http://www.Aveeno.com"
  365.             },
  366.             "790461": {
  367.                 "originating_merchant_url": "http://www.skinfixinc.com/us/"
  368.             },
  369.             "228352": {
  370.                 "image_uri": "48617_228352_logo_small.png",
  371.                 "originating_merchant_url": "http://sesamestreetbathproducts.com/"
  372.             },
  373.             "763550": {
  374.                 "image_uri": "15696_logo_small.png",
  375.                 "originating_merchant_url": "http://www.Rogaine.com"
  376.             },
  377.             "938008": {
  378.                 "image_uri": "48488_logo_small.png",
  379.                 "originating_merchant_url": "http://www.instylerwettodry.com/"
  380.             },
  381.             "922403": {
  382.                 "image_uri": "16267_922403_logo_small.png",
  383.                 "originating_merchant_url": "http://www.tresemme.com"
  384.             },
  385.             "617592": {
  386.                 "image_uri": "48592_617592_logo_small.png",
  387.                 "originating_merchant_url": "http://www.nubianheritage.com/"
  388.             },
  389.             "129344": {
  390.                 "image_uri": "48435_715206_logo_small.png",
  391.                 "originating_merchant_url": "http://www.mauimoisture.com/"
  392.             },
  393.             "49018": {
  394.                 "image_uri": "49971_logo_small.png",
  395.                 "originating_merchant_url": "http://https://www.beachwaver.com/"
  396.             },
  397.             "293675": {
  398.                 "image_uri": "49194_293675_logo_small.png",
  399.                 "originating_merchant_url": "http://www.australiangold.com/"
  400.             },
  401.             "293832": {
  402.                 "image_uri": "48607_293832_logo_small.png",
  403.                 "originating_merchant_url": "http://www.mynuface.com"
  404.             },
  405.             "262135": {
  406.                 "image_uri": "47778_262135_logo_small.png",
  407.                 "originating_merchant_url": "http://www.proganixbeauty.com/"
  408.             },
  409.             "816278": {
  410.                 "image_uri": "48488_logo_small.png",
  411.                 "originating_merchant_url": "http://www.instylerblu.com/"
  412.             },
  413.             "352612": {
  414.                 "image_uri": "11027_logo_small.png",
  415.                 "originating_merchant_url": "http://www.perriconemd.com"
  416.             },
  417.             "786814": {
  418.                 "image_uri": "48488_logo_small.png",
  419.                 "originating_merchant_url": "http://www.instylerstraightup.com/"
  420.             },
  421.             "766576": {
  422.                 "image_uri": "49279_766576_logo_small.png",
  423.                 "originating_merchant_url": "http://www.clinique.com/"
  424.             },
  425.             "635744": {
  426.                 "image_uri": "15859_logo_small.png",
  427.                 "originating_merchant_url": "http://www.SallyHansen.com"
  428.             },
  429.             "522341": {
  430.                 "image_uri": "15689_522341_logo_small.png",
  431.                 "originating_merchant_url": "http://www.CoverGirl.com"
  432.             },
  433.             "120681": {
  434.                 "image_uri": "49136_120681_logo_small.png",
  435.                 "originating_merchant_url": "http://www.treehutshea.com/"
  436.             },
  437.             "590193": {
  438.                 "image_uri": "16264_590193_logo_small.png",
  439.                 "originating_merchant_url": "http://www.stives.com/"
  440.             },
  441.             "615929": {
  442.                 "image_uri": "16786_logo_small.png",
  443.                 "originating_merchant_url": "http://www.garnierusa.com/\u200e"
  444.             },
  445.             "882458": {
  446.                 "image_uri": "47509_882458_logo_small.png",
  447.                 "originating_merchant_url": "http://www.triabeauty.com/"
  448.             },
  449.             "143800": {
  450.                 "originating_merchant_url": "http://www.skinfixinc.com"
  451.             },
  452.             "250621": {
  453.                 "image_uri": "48989_logo_small.png",
  454.                 "originating_merchant_url": "http://www.origins.com/"
  455.             },
  456.             "843666": {
  457.                 "image_uri": "49657_logo_small.png",
  458.                 "originating_merchant_url": "http://www.maccosmetics.com/"
  459.             },
  460.             "175079": {
  461.                 "image_uri": "47348_175079_logo_small.png",
  462.                 "originating_merchant_url": "http://https://www.silkn.com/"
  463.             },
  464.             "836156": {
  465.                 "image_uri": "48016_461665_logo_small.png",
  466.                 "originating_merchant_url": "http://atlanticcoastbrands.com/"
  467.             },
  468.             "808382": {
  469.                 "image_uri": "48860_808382_logo_small.png",
  470.                 "originating_merchant_url": "http://www.esteelauder.com/"
  471.             },
  472.             "153203": {
  473.                 "image_uri": "17130_logo_small.png",
  474.                 "originating_merchant_url": "http://www.braun.com/us/home.html"
  475.             },
  476.             "570821": {
  477.                 "image_uri": "48396_570821_logo_small.png",
  478.                 "originating_merchant_url": "http://dermae.com/"
  479.             },
  480.             "522196": {
  481.                 "image_uri": "48766_logo_small.png",
  482.                 "originating_merchant_url": "http://www.pacificabeauty.com/"
  483.             },
  484.             "310344": {
  485.                 "image_uri": "17605_310344_logo_small.png",
  486.                 "originating_merchant_url": "http://www.clarinsusa.com/"
  487.             },
  488.             "502644": {
  489.                 "image_uri": "16227_419508_logo_small.png",
  490.                 "originating_merchant_url": "http://www.lorealparisusa.com/"
  491.             },
  492.             "175307": {
  493.                 "image_uri": "49121_175307_logo_small.png",
  494.                 "originating_merchant_url": "http://www.carolsdaughter.com/"
  495.             },
  496.             "811668": {
  497.                 "image_uri": "48544_811668_logo_small.png",
  498.                 "originating_merchant_url": "http://www.julep.com/"
  499.             },
  500.             "360602": {
  501.                 "image_uri": "17244_360602_logo_small.png",
  502.                 "originating_merchant_url": "http://www.eco-tools.com/"
  503.             },
  504.             "123827": {
  505.                 "image_uri": "49320_logo_small.png",
  506.                 "originating_merchant_url": "http://www.aquaphorus.com/"
  507.             }
  508.         },
  509.         pr_tracking_domain: "",
  510.         pr_widget_url: "//static.powerreviews.com/widgets/v1/widget.js",
  511.         pr_widget_data_url_override: "",
  512.         pr_mwar_enabled: "false",
  513.         pr_api_write_base_url: "http://services.powerreviews.com/api",
  514.         pr_ui_library_base_url: "//ui.powerreviews.com/stable",
  515.         pr_environment: "prod",
  516.         pr_waq_waa_style: "MODERN",
  517.         pr_war_server_path: "3.0",
  518.         pr_war_fullscreen_enabled: "NONE",
  519.         pr_review_display_split_testing_enabled: "false",
  520.         pr_hosted_display_engine_enabled: false,
  521.         pr_style_sheet_override_url: false,
  522.         pr_force_email_collection: "EMAIL_OPTIONAL",
  523.         pr_integrated_profile_display_enabled: false,
  524.         pr_bv_peekaboo_enabled: false,
  525.         pr_review_display_style: "LEGACY",
  526.         pr_is_self_service: false,
  527.         pr_track_review_display_usage: false,
  528.         pr_base_url_group_key: "-",
  529.         pr_pollute_window: true,
  530.         pr_short_month_names: {
  531.             "en_US": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", ""]
  532.         },
  533.         pr_long_month_names: {
  534.             "en_US": ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December", ""]
  535.         },
  536.         pr_short_day_names: {
  537.             "en_US": ["", "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]
  538.         },
  539.         pr_long_day_names: {
  540.             "en_US": ["", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]
  541.         },
  542.         pr_am_pm_names: {
  543.             "en_US": ["AM", "PM"]
  544.         },
  545.         pr_engine_base_version: "2",
  546.         pr_fb_like_in_snippet_enabled: false,
  547.         pr_google_plus1_in_snippet_enabled: false,
  548.         pr_pinterest_in_snippet_enabled: false,
  549.         pr_social_measurement_enabled: true,
  550.         pr_reviews_enabled: true,
  551.         pr_answers_enabled: true,
  552.         pr_image_snippet_enabled: false,
  553.         pr_teaser_enabled: false,
  554.         pr_omniture_enabled: false,
  555.         pr_beacon_delay_enabled: false,
  556.         pr_tracking_pixel_url: "//t.powerreviews.com/t/v1.gif",
  557.         pr_social_measurement_engine_version: "2",
  558.         pr_non_word_replacement: "__",
  559.         pr_review_display_default_sort_order: "Newest",
  560.         pr_is_master_merchant: false,
  561.         pr_use_https_wrapper: false,
  562.         pr_is_inline_seo: true,
  563.         pr_is_microdata_schemaorg: false,
  564.         pr_is_microdata_schemaorg_product: true,
  565.         pr_responsive_answers_enabled: false,
  566.         pr_follow_channels: "All",
  567.         pr_structured_data_type: "false",
  568.         pr_enable_facebook_get_advice: false,
  569.         pr_enable_facebook_follow_product_category: false,
  570.         pr_enable_facebook_follow_profile: false,
  571.         pr_enable_facebook_follow_product: false,
  572.         pr_face_off_enabled: false,
  573.         pr_enable_ask_a_reviewer: false,
  574.         pr_enable_profiles: false,
  575.         pr_is_attribution_url_disabled: true,
  576.         pr_is_facebook_verify_enabled: false,
  577.         pr_services_hide_verify_box: false,
  578.         pr_social_loyalty_point_value_map: {},
  579.         pr_creation_date: "2017-11-19 21:22:00.382",
  580.         pr_simplified_zip: false,
  581.         pr_snippet_style: "LEGACY"
  582.     };
  583.     var Cn = {
  584.         pr_review_display_date_pattern: "{0,date,M/d/yyyy}",
  585.         pr_gas_snapshot_reviewed_by_with_filters: "Filtered to show {0} of {1} reviews",
  586.         pr_gas_error_thanks_for_feedback: "Thank you for your feedback.  Please note that only your first vote will be counted.",
  587.         pr_services_review_display_thanks_for_feedback: "Thank you for your feedback.  Please note that only your first vote will be counted.",
  588.         pr_gas_error_only_one_vote_per_review: "You may only submit one vote per review.",
  589.         pr_services_review_display_only_one_vote_per_review: "You may only submit one vote per review.",
  590.         pr_gas_error_already_notified: "You have already notified us of an error for this review.",
  591.         pr_services_review_display_already_notf_err: "You have already notified us of an error for this review.",
  592.         pr_gas_error_required_email: "Email Address is required when flagging a review",
  593.         pr_gas_error_required_flag_issue: "Please select the reason you are flagging this review",
  594.         pr_gas_error_thanks_for_notification: "Thank you for notifying us of this error.",
  595.         pr_services_review_display_thanks_for_notf_err: "Thank you for notifying us of this error.",
  596.         pr_gas_modal_follow_emailaddress_prompt_prepopulate: "Enter email address",
  597.         pr_gas_snippet_no_reviews: "(No reviews)",
  598.         pr_gas_snippet_review_count: "(1 review)",
  599.         pr_gas_snippet_reviews_count: "({0} reviews)",
  600.         pr_gas_snippet_read_review: "Read <span>1</span> Review",
  601.         pr_gas_snippet_read_reviews: "Read <span>{0}</span> Reviews",
  602.         pr_gas_snippet_write_review: "Write a Review",
  603.         pr_gas_snippet_be_the_first: "Be the first to",
  604.         pr_gas_star_message_0: "Got it? Rate it.",
  605.         pr_gas_star_message_1: "Not good",
  606.         pr_gas_star_message_2: "Needs that special something",
  607.         pr_gas_star_message_3: "Average, ordinary",
  608.         pr_gas_star_message_4: "That's good stuff",
  609.         pr_gas_star_message_5: "Perfect. It doesn't get any better",
  610.         pr_gas_snapshot_describeyourself: "Reviewer Profile",
  611.         pr_gas_snapshot_based_on_singular: "based on {0} review",
  612.         pr_gas_snapshot_based_on_plural: "based on {0} reviews",
  613.         pr_social_loyalty_get_advice_prompt_points: "+100",
  614.         pr_gas_social_loyalty_get_advice_prompt_text: "Earn points simply by sharing with your friends!",
  615.         pr_gas_facebook_get_advice_label: "Need more help?",
  616.         pr_gas_facebook_get_advice_link: "Get advice from friends &#0155;",
  617.         pr_gas_facebook_follow_product_category_label: "Like this category?",
  618.         pr_gas_facebook_follow_product_category_link: "Follow trending products",
  619.         pr_gas_snapshot_title: "REVIEW SNAPSHOT&reg;",
  620.         pr_gas_snapshot_by_powerreviews_express_link: "http://www.powerreviews.com/legal/index_prx_en_US.html",
  621.         pr_gas_snapshot_by_powerreviews_express: "by PowerReviews",
  622.         pr_gas_snapshot_by_powerreviews_link: "http://www.powerreviews.com/legal/index_en_US.html",
  623.         pr_gas_snapshot_by_powerreviews: "by PowerReviews",
  624.         pr_gas_snapshot_switch_locale: "Show {0} {1} review",
  625.         pr_gas_snapshot_switch_locale_plural: "Show {0} {1} reviews",
  626.         pr_gas_snapshot_consensus: "of respondents would recommend this to a friend.",
  627.         pr_gas_snapshot_histogram_rating_distribution: "Ratings Distribution",
  628.         pr_gas_snapshot_pros: "Pros",
  629.         pr_gas_snapshot_cons: "Cons",
  630.         pr_gas_no: "No",
  631.         pr_gas_cons: "Cons",
  632.         pr_gas_snapshot_bestuses: "Best Uses",
  633.         pr_gas_snapshot_social_loyalty_review_prompt: "Share your opinion, earn points",
  634.         pr_gas_snapshot_be_the_first: "Not yet rated. Be the first to",
  635.         pr_gas_snapshot_write_a_review: "Write a Review",
  636.         pr_gas_snapshot_social_loyalty_first_review_prompt: "(earn bonus points)",
  637.         pr_gas_facebook_subscribe_to_reviews_label: "Subscribe to Reviews",
  638.         pr_gas_snapshot_face_off_positive: "Most Liked Positive Review",
  639.         pr_gas_snapshot_face_off_read_full_review: "Read complete review",
  640.         pr_gas_snapshot_face_off_versus: "VS",
  641.         pr_gas_snapshot_face_off_negative: "Most Liked Negative Review",
  642.         pr_gas_snapshot_reviews_label: "REVIEWS",
  643.         pr_gas_snapshot_reviewed_by_singular: "Reviewed by 1 customer",
  644.         pr_gas_snapshot_reviewed_by_plural: "Reviewed by {0} customers",
  645.         pr_gas_snapshot_sort_by_label: "Sort by",
  646.         pr_gas_snapshot_sort_by_new: "Newest",
  647.         pr_gas_snapshot_sort_by_old: "Oldest",
  648.         pr_gas_snapshot_sort_by_rate_high: "Highest rating",
  649.         pr_gas_snapshot_sort_by_rate_low: "Lowest rating",
  650.         pr_gas_snapshot_sort_by_helpf_high: "Most helpful",
  651.         pr_gas_snapshot_sort_by_helpf_low: "Least helpful",
  652.         pr_gas_bottomline_Yes: "Yes, I would recommend this to a friend",
  653.         pr_gas_bottomline_No: "No, I would not recommend this to a friend",
  654.         pr_gas_displaying_review: "Displaying review",
  655.         pr_gas_displaying_reviews: "Displaying reviews",
  656.         pr_gas_back_to_top: "Back to top",
  657.         pr_gas_previous: "Previous",
  658.         pr_gas_next: "Next",
  659.         pr_gas_helpful_ratio: "{0} of {1}",
  660.         pr_gas_found_helpful: "customers found this review helpful",
  661.         pr_gas_by: "By",
  662.         pr_gas_from: "from",
  663.         pr_gas_describeyourself: "About Me",
  664.         pr_gas_profile_see_all_my_reviews: "See all my reviews",
  665.         pr_gas_reviews_ask_me_a_question_link: "Ask me a question",
  666.         pr_gas_facebook_follow_me_link: "Follow me",
  667.         pr_gas_verified_buyer: "Verified Buyer",
  668.         pr_gas_site_member: "Site Member",
  669.         pr_gas_verified_reviewer: "Verified Reviewer",
  670.         pr_gas_pros: "Pros",
  671.         pr_gas_bestuses: "Best Uses",
  672.         pr_gas_comments_about: "Comments about <em>{0}</em>:",
  673.         pr_gas_service_comments: "Service and delivery comments:",
  674.         pr_gas_recommended_products: "Recommended",
  675.         pr_gas_similar_products: "Similar",
  676.         pr_gas_bottomline: "Bottom Line",
  677.         pr_gas_images_shared_by: "Images shared by",
  678.         pr_gas_video_shared_by: "Video shared by",
  679.         pr_gas_images_video_shared_by: "Images shared by",
  680.         pr_gas_image_thumbnail: "Image Thumbnail",
  681.         pr_gas_video_thumbnail: "Video Thumbnail",
  682.         pr_gas_media_tags_label: "Tags:",
  683.         pr_gas_merchant_response: "Merchant response: ",
  684.         pr_gas_attributes_reviewed_at: "REVIEWED AT",
  685.         pr_gas_was_helpful: "Was this review helpful?",
  686.         pr_gas_yes: "Yes",
  687.         pr_gas_flag_review_before: "You may also",
  688.         pr_gas_flag_review_after: "flag this review",
  689.         pr_gas_reviews_facebook_comment: "Comment on this review",
  690.         pr_facebook_comment_on_review: false,
  691.         pr_gas_reviews_facebook_comment_instructions: "Click here to write a comment and share this review with your friends on Facebook. Your comment and this review will show up in your Facebook News Feed.",
  692.         pr_gas_social_loyalty_facebook_comment_prompt: "(earn points)",
  693.         pr_gas_footer_privacy_policy_link: "http://www.powerreviews.com/legal/privacy_policy_prx_en_US.html",
  694.         pr_gas_footer_privacy_policy: "Privacy & Cookie Policy",
  695.         pr_gas_snapshot_prx_link: "http://www.powerreviewsexpress.com/expressminisite/powerreviews_express.jsp?referrer={0}",
  696.         pr_gas_snapshot_add_reviews_to_your_site: "Add Reviews to your site",
  697.         pr_gas_snapshot_histogram_1_stars: "1 Stars",
  698.         pr_gas_snapshot_histogram_2_stars: "2 Stars",
  699.         pr_gas_snapshot_histogram_3_stars: "3 Stars",
  700.         pr_gas_snapshot_histogram_4_stars: "4 Stars",
  701.         pr_gas_snapshot_histogram_5_stars: "5 Stars",
  702.         pr_gas_issue_header: "Please let us know what kind of issue this is:",
  703.         pr_gas_issue_profanity: "Profanity",
  704.         pr_gas_issue_wrong_product: "Wrong product",
  705.         pr_gas_issue_spam: "Spam",
  706.         pr_gas_issue_duplicate: "Duplicate",
  707.         pr_gas_issue_copyright_violation: "Copyright violation",
  708.         pr_gas_issue_not_review: "Not a product review",
  709.         pr_gas_issue_customer_image: "Customer image",
  710.         pr_gas_issue_problem_with_image: "Problem with image",
  711.         pr_gas_issue_other: "Other",
  712.         pr_gas_issue_email_address: "Email Address:",
  713.         pr_gas_issue_email_subtext: "",
  714.         pr_gas_issue_comments: "Comments:",
  715.         pr_gas_submit: "Submit",
  716.         pr_gas_cancel: "Cancel",
  717.         pr_gas_facebook_follow_product_label: "Follow this Product",
  718.         pr_gas_facebook_follow_product_instructions: "<b>Click the Like button</b> to follow on Facebook OR enter your email. Get the latest reviews for this product on your Facebook News Feed or by email. You can unsubscribe anytime.",
  719.         pr_gas_facebook_follow_product_email_only_instructions: "Enter your email to get the latest reviews for this product. You can unsubscribe anytime.",
  720.         pr_gas_facebook_follow_me_modal_facebook_messaging: "Follow on <span>Facebook</span>",
  721.         pr_gas_facebook_follow_invalid_email_message: "Please enter a valid email address.",
  722.         pr_gas_facebook_follow_submit_button_label: "SUBMIT",
  723.         pr_gas_facebook_follow_me_modal_thank_you_message: "<span><b>Thank You.</b></span>You have successfully signed up to receive emails.",
  724.         pr_gas_facebook_modal_follow_product_category_label: "",
  725.         pr_gas_facebook_follow_category_instructions: "",
  726.         pr_gas_facebook_follow_category_email_only_instructions: "",
  727.         pr_services_question_display_header_question_prompt_intro: "Do you have questions about this product?",
  728.         pr_gas_social_loyalty_answerbox_header_prompt: "(earn points for answers!)",
  729.         pr_services_question_display_header_question_prompt_cta: "",
  730.         pr_services_question_display_header_question_prompt: "Get answers from in-house experts.",
  731.         pr_services_question_display_question_count_singular: "1 Question",
  732.         pr_services_question_display_question_count_plural: "Questions",
  733.         pr_services_question_display_answer_count_singular: "1 Answer",
  734.         pr_services_question_display_answer_count_plural: "Answers",
  735.         pr_services_question_byline_prefix_ask: "Asked on",
  736.         pr_services_question_by: "by",
  737.         pr_services_question_anonymous: "Anonymous",
  738.         pr_services_question_from: "from",
  739.         pr_services_answer_question_notation: "Q:",
  740.         pr_services_question_answer_prompt: "Know the answer?",
  741.         pr_services_question_answer_link_label: "Answer this question",
  742.         pr_services_question_answer_count_singular: "1 answer",
  743.         pr_services_question_answer_count_plural: "answers",
  744.         pr_gas_social_loyalty_answerbox_first_answer_prompt: "(earn bonus points)",
  745.         pr_services_answer_byline_prefix_answer: "Answered on",
  746.         pr_services_answer_by: "by",
  747.         pr_services_answer_anonymous: "Anonymous",
  748.         pr_services_answer_from: "from",
  749.         pr_services_answer_purchaser_badge: "VERIFIED BUYER",
  750.         pr_services_answer_merchant_badge: "CUSTOMER CARE",
  751.         pr_services_answer_answer_notation: "A:",
  752.         pr_gas_displaying_question: "Displaying question",
  753.         pr_gas_displaying_questions: "Displaying questions",
  754.         pr_services_question_display_ask_question_link_content: "Ask a question",
  755.         pr_services_question_display_footer_question_prompt_intro: "Do you have a question about this product?",
  756.         pr_gas_pa_snippet_title: "Q&A",
  757.         pr_gas_pa_snippet_text: "Ask Questions, share answers",
  758.         pr_gas_pa_snippet_question: "<span>1</span> Question",
  759.         pr_gas_pa_snippet_questions: "<span>{0}</span> Questions",
  760.         pr_gas_pa_snippet_answer: "<span>1</span> Answer",
  761.         pr_gas_pa_snippet_answers: "<span>{0}</span> Answers",
  762.         pr_gas_pa_snippet_ask_question: "Ask a Question",
  763.         pr_gas_facebook_follow_me_modal_submit_error_header: "Sorry",
  764.         pr_gas_facebook_follow_me_modal_submit_error_message: "We are having difficulties submitting your email right now. Please try again later.",
  765.         pr_services_review_display_teaser_headline: "Customer reviews",
  766.         pr_services_review_display_teaser_subheadline: "Showing most recent reviews",
  767.         pr_services_review_display_image_snippet_header: "Customer Images",
  768.         pr_gas_profile_histogram_rating_distribution: "Ratings Distribution",
  769.         pr_gas_profile_facebook_manage_settings: "Is this you? Manage Settings",
  770.         pr_gas_profile_my_reviews: "My Reviews",
  771.         pr_gas_profile_n_most_recent_reviews: "{0} most recent reviews",
  772.         pr_gas_facebook_modal_follow_me_label: "Follow this Reviewer",
  773.         pr_gas_facebook_follow_location_preposition: "from",
  774.         pr_gas_facebook_modal_follow_me_instructions: "<b>Click the Like button</b> to follow on Facebook OR enter your email. See the latest reviews this reviewer writes on your Facebook News Feed or by email. You can unsubscribe anytime.",
  775.         pr_gas_facebook_modal_follow_me_email_only_instructions: "Enter your email to get the latest reviews this reviewer writes. You can unsubscribe anytime.",
  776.         pr_avatar_image_url: "http://images.powerreviews.com/images/avatar-grey.gif",
  777.         pr_gas_sweepstakes_message: "Submitted as part of a sweepstakes entry",
  778.         pr_gas_sampling_message: "Reviewer received a free sample of this product",
  779.         pr_qa_display_author_asked_by: "",
  780.         pr_qa_display_relative_time_days_ago: "",
  781.         pr_qa_display_relative_time_months_ago: "",
  782.         pr_qa_display_relative_time_years_ago: ""
  783.     };
  784.     var CH = {};
  785.     if (window && window.location && window.location.search) {
  786.         var BK = window.location.search.substring(1).split("&");
  787.         for (var CL = 0, BQ = BK.length; CL < BQ; ++CL) {
  788.             var CI = BK[CL].split("=");
  789.             CH[CI[0]] = CI[1];
  790.         }
  791.     }
  792.     function BX(i) {
  793.         var DV = document.getElementsByTagName("head")[0];
  794.         if (DV && DV.firstChild) {
  795.             DV.appendChild(i);
  796.         } else {
  797.             if (DV) {
  798.                 DV.appendChild(i);
  799.             } else {
  800.                 window.document.children[0].appendChild(i);
  801.             }
  802.         }
  803.     }
  804.     function AN(DX) {
  805.         for (var DY = 1, DW = arguments.length; DY < DW; ++DY) {
  806.             var DZ = arguments[DY];
  807.             if (DZ) {
  808.                 var DV = DZ[DX];
  809.                 if (typeof DV != "undefined") {
  810.                     return DV;
  811.                 }
  812.             }
  813.         }
  814.         return null;
  815.     }
  816.     function M(DV, i) {
  817.         return AN(DV, i, CH, window, Ar);
  818.     }
  819.     F.common.get = M;
  820.     function BR() {
  821.         return Ar;
  822.     }
  823.     F.getDefaults = BR;
  824.     function DT() {
  825.         return Cn;
  826.     }
  827.     F.getMessages = DT;
  828.     function C9(DV, i) {
  829.         if (typeof POWERREVIEWS.getMessages()[DV] === "object") {
  830.             return POWERREVIEWS.getMessages()[DV][i];
  831.         } else {
  832.             return POWERREVIEWS.getMessages()[DV];
  833.         }
  834.     }
  835.     F.msg = C9;
  836.     if (typeof document !== "undefined" && !F.isAppLaunch && (CH.pr_enable_hosted_renderer === "1" || !!M("pr_hosted_display_engine_enabled"))) {
  837.         function B7() {}
  838.         function BR() {
  839.             return Ar;
  840.         }
  841.         F.getDefaults = BR;
  842.         function DT() {
  843.             return Cn;
  844.         }
  845.         F.getMessages = DT;
  846.         var Bl = [];
  847.         function Ch() {
  848.             return Bl;
  849.         }
  850.         F.getEventQueue = Ch;
  851.         F.display = {};
  852.         function Ax(DV, i) {
  853.             Bl.push({
  854.                 docRoot: DV,
  855.                 params: i,
  856.                 methodName: "prData",
  857.                 methodParent: "display"
  858.             });
  859.         }
  860.         F.display.prData = Ax;
  861.         window.prData = Ax;
  862.         function CF(i) {
  863.             BO.push(i);
  864.         }
  865.         F.display.registerCallback = CF;
  866.         window.registerCallback = CF;
  867.         var B5 = 0;
  868.         function CM(i, DW) {
  869.             var DX = "pr-snippet-holder-" + ++B5;
  870.             i.write('<div id="' + DX + '"></div>');
  871.             var DV = document.getElementById(DX);
  872.             DV.write = function(DY) {
  873.                 DV.innerHTML += DY;
  874.             }
  875.             ;
  876.             Bl.push({
  877.                 docRoot: DV,
  878.                 params: DW,
  879.                 methodName: "snippet",
  880.                 methodParent: "display"
  881.             });
  882.         }
  883.         F.display.snippet = CM;
  884.         window.snippet = CM;
  885.         var D = 0;
  886.         function B1(i, DW) {
  887.             var DX = "pr-engine-holder-" + ++D;
  888.             i.write('<div id="' + DX + '" ></div>');
  889.             var DV = document.getElementById(DX);
  890.             DV.write = function(DY) {
  891.                 DV.innerHTML += DY;
  892.             }
  893.             ;
  894.             Bl.push({
  895.                 docRoot: DV,
  896.                 params: DW,
  897.                 methodName: "engine",
  898.                 methodParent: "display"
  899.             });
  900.         }
  901.         F.display.engine = B1;
  902.         window.engine = B1;
  903.         var Ci = 0;
  904.         function DQ(i, DW) {
  905.             var DX = "pr-product-answers-holder-" + ++Ci;
  906.             i.write('<div id="' + DX + '"></div>');
  907.             var DV = document.getElementById(DX);
  908.             DV.write = function(DY) {
  909.                 DV.innerHTML += DY;
  910.             }
  911.             ;
  912.             Bl.push({
  913.                 docRoot: DV,
  914.                 params: DW,
  915.                 methodName: "productAnswers",
  916.                 methodParent: "display"
  917.             });
  918.         }
  919.         F.display.productAnswers = DQ;
  920.         window.productAnswers = DQ;
  921.         var Ag = 0;
  922.         function CT(i, DW) {
  923.             var DX = "pr-product-answers-snippet-holder-" + ++Ag;
  924.             i.write('<div id="' + DX + '"></div>');
  925.             var DV = document.getElementById(DX);
  926.             DV.write = function(DY) {
  927.                 DV.innerHTML += DY;
  928.             }
  929.             ;
  930.             Bl.push({
  931.                 docRoot: DV,
  932.                 params: DW,
  933.                 methodName: "productAnswersSnippet",
  934.                 methodParent: "display"
  935.             });
  936.         }
  937.         F.display.productAnswersSnippet = CT;
  938.         window.productAnswersSnippet = CT;
  939.         var BY = 0;
  940.         function DM(i, DW) {
  941.             var DX = "pr-teaser-review-holder-" + ++BY;
  942.             i.write('<div id="' + DX + '"></div>');
  943.             var DV = document.getElementById(DX);
  944.             DV.write = function(DY) {
  945.                 DV.innerHTML += DY;
  946.             }
  947.             ;
  948.             Bl.push({
  949.                 docRoot: DV,
  950.                 params: DW,
  951.                 methodName: "teaserReview",
  952.                 methodParent: "display"
  953.             });
  954.         }
  955.         F.display.teaserReview = DM;
  956.         window.teaserReview = DM;
  957.         var Bg = 0;
  958.         function AB(i, DW) {
  959.             var DX = "pr-image-snippet-holder-" + ++Bg;
  960.             i.write('<div id="' + DX + '"></div>');
  961.             var DV = document.getElementById(DX);
  962.             DV.write = function(DY) {
  963.                 DV.innerHTML += DY;
  964.             }
  965.             ;
  966.             Bl.push({
  967.                 docRoot: DV,
  968.                 params: DW,
  969.                 methodName: "imageSnippet",
  970.                 methodParent: "display"
  971.             });
  972.         }
  973.         F.display.imageSnippet = AB;
  974.         window.imageSnippet = AB;
  975.         var G = 0;
  976.         function DS(i, DW) {
  977.             var DX = "pr-profile-holder-" + ++G;
  978.             i.write('<div id="' + DX + '"></div>');
  979.             var DV = document.getElementById(DX);
  980.             DV.write = function(DY) {
  981.                 DV.innerHTML += DY;
  982.             }
  983.             ;
  984.             Bl.push({
  985.                 docRoot: DV,
  986.                 params: DW,
  987.                 methodName: "profile",
  988.                 methodParent: "display"
  989.             });
  990.         }
  991.         F.display.profile = DS;
  992.         window.profile = DS;
  993.         var BA = document.createElement("script");
  994.         BA.setAttribute("src", Al() + "/fulljs/full.js");
  995.         BA.setAttribute("type", "text/javascript");
  996.         BX(BA);
  997.         return F;
  998.     }
  999.     function Z(DW, DV) {
  1000.         var i = AN(DW, DV, CH, window, Ar);
  1001.         if (Ar.pr_all_locales_hash.hasOwnProperty(i)) {
  1002.             return i;
  1003.         } else {
  1004.             return Ar.pr_locale;
  1005.         }
  1006.     }
  1007.     function Ac(i) {
  1008.         var DW = {};
  1009.         for (var DV in i) {
  1010.             DW[DV] = i[DV];
  1011.         }
  1012.         return DW;
  1013.     }
  1014.     F.cloneObject = Ac;
  1015.     function C6(i) {
  1016.         if ("https:" == document.location.protocol) {
  1017.             return i.replace(/^http:\/\//i, "https://");
  1018.         } else {
  1019.             return i;
  1020.         }
  1021.     }
  1022.     function Cs(i) {
  1023.         var DW = "res.cloudinary.com";
  1024.         var DV = (i.toLowerCase().indexOf(DW) > -1);
  1025.         if (DV) {
  1026.             return true;
  1027.         }
  1028.         return false;
  1029.     }
  1030.     function AM(i) {
  1031.         if (i) {
  1032.             if (!Cs(i)) {
  1033.                 i = "//images.powerreviews.com" + i;
  1034.             }
  1035.         }
  1036.         return i;
  1037.     }
  1038.     function p(Db) {
  1039.         if (M("pr_simplified_zip")) {
  1040.             var DX = new jsSHA("SHA-256","TEXT");
  1041.             DX.update(Db);
  1042.             var DY = DX.getHash("HEX").toUpperCase();
  1043.             var DV = "/";
  1044.             var Dc = DY.substr(0, 2) + DV + DY.substr(2, 2) + DV + DY.substr(4, 2) + DV + DY;
  1045.             return Dc;
  1046.         }
  1047.         var Da = 0;
  1048.         var DZ;
  1049.         for (DZ = 0; DZ < Db.length; DZ++) {
  1050.             var De = Db.charCodeAt(DZ);
  1051.             De = De * Math.abs(255 - De);
  1052.             Da += De;
  1053.         }
  1054.         Da = Da % 1023;
  1055.         Da = Da + "";
  1056.         var DW = 4;
  1057.         var Dd = Da.split("");
  1058.         for (DZ = 0; DZ < DW - Da.length; DZ++) {
  1059.             Dd.unshift("0");
  1060.         }
  1061.         Da = Dd.join("");
  1062.         Da = Da.substring(0, DW / 2) + "/" + Da.substring(DW / 2, DW);
  1063.         return Da;
  1064.     }
  1065.     function CU(i) {
  1066.         return ["1 Stars", "2 Stars", "3 Stars", "4 Stars", "5 Stars"];
  1067.     }
  1068.     function Bc(i, DW) {
  1069.         if (Bu) {
  1070.             return true;
  1071.         } else {
  1072.             if (!R(DW)) {
  1073.                 return false;
  1074.             }
  1075.         }
  1076.         Bu = true;
  1077.         if (!document.getElementById(A2) && !M("pr_style_sheet_override_url")) {
  1078.             var DZ = document.createElement("script");
  1079.             DZ.setAttribute("type", "text/javascript");
  1080.             i.write('<link rel="stylesheet" href="' + b(DW) + '/engine/pr_styles_review.css" type="text/css" id="' + A2 + '">\n');
  1081.             J(DW);
  1082.         }
  1083.         var Da = b(DW) + "/engine/merchant_styles2.css";
  1084.         var DV = AR(M("pr_style_sheet", DW));
  1085.         if (M("pr_allow_engine_css_override", DW) && DV) {
  1086.             Da = DV;
  1087.         }
  1088.         if (!document.getElementById(BD)) {
  1089.             i.write('<link rel="stylesheet" href="' + Da + '" type="text/css" id="' + BD + '">\n');
  1090.         }
  1091.         if (window.document && window.location) {
  1092.             if (Bp(DW) && !M("pr_style_sheet_override_url")) {
  1093.                 AF(DW);
  1094.             } else {
  1095.                 if (!!M("pr_style_sheet_override_url")) {
  1096.                     var DX = document.head || document.getElementsByTagName("head")[0];
  1097.                     var DY = document.createElement("link");
  1098.                     DY.href = M("pr_style_sheet_override_url", DW);
  1099.                     DY.type = "text/css";
  1100.                     DY.rel = "stylesheet";
  1101.                     DY.id = A2;
  1102.                     DX.appendChild(DY);
  1103.                 }
  1104.             }
  1105.         }
  1106.         r({
  1107.             "type": "init"
  1108.         }, DW);
  1109.         setTimeout(function() {
  1110.             r({
  1111.                 "type": "objects",
  1112.                 "count": Ca
  1113.             }, DW);
  1114.         }, 5000);
  1115.         return true;
  1116.     }
  1117.     function Bp(i) {
  1118.         if (parseInt(DG("pr_review_display_split_testing_enabled")) === 1) {
  1119.             return true;
  1120.         }
  1121.         return AN("pr_review_display_split_testing_enabled", CH, i, window, Ar) === "true";
  1122.     }
  1123.     function AF(DV) {
  1124.         var DW = document.head || document.getElementsByTagName("head")[0];
  1125.         var DY = document.createElement("link");
  1126.         DY.href = b(DV) + "/engine/pr_styles_review.css";
  1127.         DY.type = "text/css";
  1128.         DY.rel = "stylesheet";
  1129.         DY.id = A2;
  1130.         DW.appendChild(DY);
  1131.         var DX = Al(DV);
  1132.         var i = DX + "/review-display/config.js";
  1133.         var DZ = i.replace(/^(http[s]?:\/\/)|(\/\/)/, "");
  1134.         Ce(i, DZ, function(Da) {
  1135.             DU(DV, Da, DY);
  1136.         }, DV);
  1137.     }
  1138.     function DU(Dj, DW, Da) {
  1139.         var i = M("pr_merchant_group_id");
  1140.         var Dd = M("pr_merchant_id");
  1141.         var Di = M("pr_site_id");
  1142.         var DZ = (DW["mid" + Dd] || DW["mgid" + i + "sid" + Di] || DW["mgid" + i]);
  1143.         if (DZ) {
  1144.             var DV = DZ;
  1145.             var Db;
  1146.             var DY = parseInt(DG("pr_review_display_split_test_override"));
  1147.             if (DY !== NaN && DV[DY]) {
  1148.                 Db = DV[DY];
  1149.             } else {
  1150.                 var DX = Math.abs(B(F.tracker.getUID()));
  1151.                 var Dc = 100;
  1152.                 var Dh = DX % Dc;
  1153.                 for (var Dg = 0; Dg < DV.length; Dg++) {
  1154.                     var Df = DV[Dg];
  1155.                     if (Dh >= Df.min && Dh < Df.max) {
  1156.                         Db = Df;
  1157.                         break;
  1158.                     }
  1159.                 }
  1160.                 var De = "LEGACY";
  1161.                 if (!!Db) {
  1162.                     De = Db.group_id;
  1163.                 }
  1164.                 C4.trackPageview("rd", {
  1165.                     locale: M("pr_locale", Dj),
  1166.                     pageId: M("pr_page_id", Dj),
  1167.                     merchantId: M("pr_merchant_id", Dj),
  1168.                     siteId: M("pr_site_id", Dj),
  1169.                     engineVersion: "2",
  1170.                     eventType: "test",
  1171.                     tg: De
  1172.                 });
  1173.             }
  1174.             if (!Db) {
  1175.                 return;
  1176.             }
  1177.             Da.href = Db.path + "/styles.css";
  1178.             Ce(Db.path + "/js/rd-styles.js", null, null, null);
  1179.             J(Dj);
  1180.         }
  1181.     }
  1182.     function J(i) {
  1183.         var DW = ".pr-stars { background-image: url(" + b(i) + "/engine/images/stars.gif); } .pr-stars-small { background-image: url(" + b(i) + "/engine/images/stars_small.gif); }";
  1184.         var DV = document.head || document.getElementsByTagName("head")[0];
  1185.         var DX = document.createElement("style");
  1186.         DX.type = "text/css";
  1187.         if (DX.styleSheet) {
  1188.             DX.styleSheet.cssText = DW;
  1189.         } else {
  1190.             DX.appendChild(document.createTextNode(DW));
  1191.         }
  1192.         if (!!DV.firstChild) {
  1193.             DV.insertBefore(DX, DV.firstChild);
  1194.         } else {
  1195.             DV.appendChild(DX);
  1196.         }
  1197.     }
  1198.     function B(DZ) {
  1199.         var DY = 0, DW, DX, DV;
  1200.         if (DZ.length == 0) {
  1201.             return DY;
  1202.         }
  1203.         for (DW = 0,
  1204.         DV = DZ.length; DW < DV; DW++) {
  1205.             DX = DZ.charCodeAt(DW);
  1206.             DY = ((DY << 5) - DY) + DX;
  1207.             DY |= 0;
  1208.         }
  1209.         return DY;
  1210.     }
  1211.     function DG(DW) {
  1212.         if (!V) {
  1213.             V = {};
  1214.             for (var DV = document.cookie.split(/;\s*/), DY = DV.length - 1; DY >= 0; DY--) {
  1215.                 var DZ = DV[DY].split("=");
  1216.                 var DX = DZ[0];
  1217.                 var Da = DZ[1];
  1218.                 V[DX] = Da;
  1219.             }
  1220.         }
  1221.         return V[DW];
  1222.     }
  1223.     function R(i) {
  1224.         if (CO) {
  1225.             return true;
  1226.         } else {
  1227.             if (!M("pr_page_id", i) && !M("pr_merchant_user_id", i)) {
  1228.                 return false;
  1229.             }
  1230.         }
  1231.         CO = true;
  1232.         return true;
  1233.     }
  1234.     function BG(i, DV, DW) {
  1235.         if (!document.getElementById(i)) {
  1236.             setTimeout(function() {
  1237.                 BG(i, DV, DW);
  1238.             }, 1000);
  1239.         } else {
  1240.             B9(i, DV, DW);
  1241.         }
  1242.     }
  1243.     function B9(i, DW, DX) {
  1244.         try {
  1245.             if (!DW) {
  1246.                 DW = "";
  1247.             }
  1248.             C2(function() {
  1249.                 Cj(document.getElementById(i), DW);
  1250.                 if (DX) {
  1251.                     DX();
  1252.                 }
  1253.             });
  1254.         } catch (DV) {}
  1255.     }
  1256.     F.common.writeContentToDivNested = B9;
  1257.     function Cj(DW, DV) {
  1258.         if (DW.parentNode) {
  1259.             var i = document.createElement("div");
  1260.             i.id = DW.id;
  1261.             i.className = DW.className;
  1262.             i.innerHTML = DV;
  1263.             DW.parentNode.replaceChild(i, DW);
  1264.             return i;
  1265.         } else {
  1266.             DW.innerHTML = DV;
  1267.             return DW;
  1268.         }
  1269.     }
  1270.     function C2(i) {
  1271.         if (typeof i == "function") {
  1272.             (function() {
  1273.                 if (X()) {
  1274.                     try {
  1275.                         document.documentElement.doScroll("left");
  1276.                     } catch (DV) {
  1277.                         setTimeout(arguments.callee, 50);
  1278.                         return;
  1279.                     }
  1280.                 }
  1281.                 i();
  1282.                 i = null;
  1283.             }
  1284.             )();
  1285.         }
  1286.     }
  1287.     function X() {
  1288.         return typeof document.all != "undefined" && typeof window.opera == "undefined" && !(navigator.vendor == "KDE");
  1289.     }
  1290.     function w(i) {
  1291.         new Image().src = i;
  1292.     }
  1293.     function b(DV) {
  1294.         var i = M("pr_zip_location", DV);
  1295.         if (i.charAt(i.length - 1) != "/") {
  1296.             i += "/";
  1297.         }
  1298.         i += M("pr_powerreviews_root", DV);
  1299.         return i;
  1300.     }
  1301.     F.common.getDocRoot = b;
  1302.     function C8(i) {
  1303.         return (i + "").replace(/\W/g, "__");
  1304.     }
  1305.     function A9(DV, DX, DW, i) {
  1306.         this.pageId = DV;
  1307.         this.fullReviewCount = DX;
  1308.         this.quickReviewCount = DW;
  1309.         this.averageRating = i;
  1310.         this.getFullReviewCount = function() {
  1311.             return this.fullReviewCount;
  1312.         }
  1313.         ;
  1314.         this.getQuickReviewCount = function() {
  1315.             return this.quickReviewCount;
  1316.         }
  1317.         ;
  1318.         this.getAverageRating = function() {
  1319.             return this.averageRating;
  1320.         }
  1321.         ;
  1322.         this.getPageId = function() {
  1323.             return this.pageId;
  1324.         }
  1325.         ;
  1326.     }
  1327.     function CY(DV, i, DW) {
  1328.         return DW && DW["locales"] && DW["locales"][i] && DW["locales"][i]["p" + DV];
  1329.     }
  1330.     function BM(DW) {
  1331.         var DX = document.getElementsByName(DW);
  1332.         for (var DV = 0; DV < DX.length; DV++) {
  1333.             if (DX[DV].checked) {
  1334.                 return DX[DV].value;
  1335.             }
  1336.         }
  1337.         return null;
  1338.     }
  1339.     function AS(i, DW, DV) {
  1340.         return i.replace(new RegExp(DW,"g"), DV);
  1341.     }
  1342.     function AR(i) {
  1343.         return i && i.replace(/^\s+|\s+$/g, "");
  1344.     }
  1345.     function AE(i) {
  1346.         if (typeof i == "string") {
  1347.             return i.replace(/\n/g, "<br />");
  1348.         } else {
  1349.             return i;
  1350.         }
  1351.     }
  1352.     function Ce(DW, DX, Da, DV) {
  1353.         var DY = b(DV);
  1354.         var DX = DX || DW.substring(DW.indexOf(DY) + DY.length + 1);
  1355.         if (B0[DX]) {
  1356.             Da(B0[DX]);
  1357.         } else {
  1358.             var i = document.createElement("script");
  1359.             var DZ = function() {
  1360.                 if (B0[DX]) {
  1361.                     if (i.parentNode) {
  1362.                         i.parentNode.removeChild(i);
  1363.                         delete i;
  1364.                     }
  1365.                     Da(B0[DX]);
  1366.                 }
  1367.             };
  1368.             if (X()) {
  1369.                 i.onreadystatechange = DZ;
  1370.             } else {
  1371.                 i.onload = DZ;
  1372.             }
  1373.             i.type = "text/javascript";
  1374.             i.charset = "utf-8";
  1375.             i.src = DW;
  1376.             document.getElementsByTagName("head")[0].appendChild(i);
  1377.             Ca++;
  1378.         }
  1379.     }
  1380.     function x(i, DV, DW) {
  1381.         Bj[DV] = DW;
  1382.         Cl(i);
  1383.     }
  1384.     function Bq() {
  1385.         return Bj;
  1386.     }
  1387.     F.common.getCallbacks = Bq;
  1388.     function Cl(DV) {
  1389.         var i = document.createElement("script");
  1390.         i.type = "text/javascript";
  1391.         i.charset = "utf-8";
  1392.         i.src = DV;
  1393.         document.getElementsByTagName("head")[0].appendChild(i);
  1394.     }
  1395.     function h(DW) {
  1396.         var i = DW.key;
  1397.         if (i) {
  1398.             var DV = Bj[i];
  1399.             if (DV) {
  1400.                 DV(DW);
  1401.             }
  1402.         }
  1403.     }
  1404.     F.common.generalCallback = h;
  1405.     function DN(DZ, Da, DV) {
  1406.         if (DZ.className) {
  1407.             var DW = DZ.className.split(" ");
  1408.             if (DV) {
  1409.                 var DY = Da.toUpperCase();
  1410.                 for (var DX = 0; DX < DW.length; DX++) {
  1411.                     if (DW[DX].toUpperCase() == DY) {
  1412.                         DW.splice(DX, 1);
  1413.                         DX--;
  1414.                     }
  1415.                 }
  1416.             }
  1417.             DW[DW.length] = Da;
  1418.             DZ.className = DW.join(" ");
  1419.         } else {
  1420.             DZ.className = Da;
  1421.         }
  1422.     }
  1423.     function DP(DY, DZ) {
  1424.         if (DY.className) {
  1425.             var DV = DY.className.split(" ");
  1426.             var DX = DZ.toUpperCase();
  1427.             for (var DW = 0; DW < DV.length; DW++) {
  1428.                 if (DV[DW].toUpperCase() == DX) {
  1429.                     DV.splice(DW, 1);
  1430.                     DW--;
  1431.                 }
  1432.             }
  1433.             DY.className = DV.join(" ");
  1434.         }
  1435.     }
  1436.     function q(i, DW) {
  1437.         var DV = new RegExp("\\b" + DW + "\\b");
  1438.         return DV.test(i.className);
  1439.     }
  1440.     function C0(Dc, Dd, De) {
  1441.         if (!Dc) {
  1442.             return [];
  1443.         }
  1444.         var Da = (Dd == "*" && Dc.all) ? Dc.all : Dc.getElementsByTagName(Dd);
  1445.         var DZ = new Array();
  1446.         var Df = new Array();
  1447.         if (typeof De == "object") {
  1448.             for (var DY = 0; DY < De.length; DY++) {
  1449.                 Df.push(new RegExp("(^|\\s)" + De[DY].replace(/\-/g, "\\-") + "(\\s|$)"));
  1450.             }
  1451.         } else {
  1452.             Df.push(new RegExp("(^|\\s)" + De.replace(/\-/g, "\\-") + "(\\s|$)"));
  1453.         }
  1454.         var DV;
  1455.         var Db;
  1456.         for (var DX = 0; DX < Da.length; DX++) {
  1457.             DV = Da[DX];
  1458.             Db = true;
  1459.             for (var DW = 0; DW < Df.length; DW++) {
  1460.                 if (!Df[DW].test(DV.className)) {
  1461.                     Db = false;
  1462.                     break;
  1463.                 }
  1464.             }
  1465.             if (Db) {
  1466.                 DZ.push(DV);
  1467.             }
  1468.         }
  1469.         return DZ;
  1470.     }
  1471.     function Aw(DV, i) {
  1472.         if (i(DV) == true) {
  1473.             return DV;
  1474.         } else {
  1475.             if (DV.parentNode) {
  1476.                 return arguments.callee(DV.parentNode, i);
  1477.             } else {
  1478.                 return false;
  1479.             }
  1480.         }
  1481.     }
  1482.     function BB(i, DV) {
  1483.         i.parentNode.insertBefore(DV, i.nextSibling);
  1484.     }
  1485.     function Cd(DV, i) {
  1486.         f[DV] = i;
  1487.         if (i) {
  1488.             i._key = DV;
  1489.         }
  1490.     }
  1491.     function Ah(i) {
  1492.         if (i) {
  1493.             return i["_key"];
  1494.         } else {
  1495.             return "";
  1496.         }
  1497.     }
  1498.     function A7(i) {
  1499.         return f[i] || {};
  1500.     }
  1501.     F.common.getOptions = A7;
  1502.     function CJ(DV, i, DZ, DX) {
  1503.         var DY = s[DV + i];
  1504.         if (!DY) {
  1505.             var DW = b(DX) + "/content/" + p(DV) + "/contents.js";
  1506.             if (M("pr_simplified_zip")) {
  1507.                 DW = b(DX) + "/content/" + i + "/" + p(DV) + "/contents.js";
  1508.             }
  1509.             Ce(DW, null, function(Da) {
  1510.                 DY = CY(DV, i, Da);
  1511.                 s[DV + i] = DY ? DY : "none";
  1512.                 DZ(DY);
  1513.             }, DX);
  1514.         } else {
  1515.             if (DY == "none") {
  1516.                 DZ(null);
  1517.             } else {
  1518.                 DZ(DY);
  1519.             }
  1520.         }
  1521.     }
  1522.     function Cv(DV, i, DY, DX) {
  1523.         var DW = b(DX) + "/content/" + p(DV) + "/" + DV + "-" + i + "-rollup.js";
  1524.         if (M("pr_simplified_zip")) {
  1525.             DW = b(DX) + "/content/" + i + "/" + p(DV) + "/" + i + "-rollup.js";
  1526.         }
  1527.         Ce(DW, null, function(DZ) {
  1528.             if (DZ) {
  1529.                 DY(DZ.rollup);
  1530.             }
  1531.         }, DX);
  1532.     }
  1533.     function Af(DV, i, DY, DX) {
  1534.         if (!t) {
  1535.             var DW = b(DX) + "/content/" + p(DV) + "/" + DV + "-" + i + "-meta.js";
  1536.             if (M("pr_simplified_zip")) {
  1537.                 DW = b(DX) + "/content/" + i + "/" + p(DV) + "/" + i + "-meta.js";
  1538.             }
  1539.             Ce(DW, null, function(DZ) {
  1540.                 t = DZ ? DZ.metadata : null;
  1541.                 DY();
  1542.             }, DX);
  1543.         } else {
  1544.             DY();
  1545.         }
  1546.     }
  1547.     function DO(DV, i, DY, DZ, DX) {
  1548.         if (!L[DV + "-" + i + "-" + DY]) {
  1549.             var DW = b(DX) + "/content/" + p(DV) + "/" + DV + "-" + i + "-" + DY + "-reviews.js";
  1550.             if (M("pr_simplified_zip")) {
  1551.                 DW = b(DX) + "/content/" + i + "/" + p(DV) + "/" + i + "-" + DY + "-reviews.js";
  1552.             }
  1553.             Ce(DW, null, function(Dd) {
  1554.                 var Db = [];
  1555.                 for (var Dc = 0; Dc < Dd.length; Dc++) {
  1556.                     var Da = Dd[Dc].r;
  1557.                     AI[Da.id] = Da;
  1558.                     Db.push(Da);
  1559.                 }
  1560.                 L[DV + "-" + i + "-" + DY] = Db;
  1561.                 DZ();
  1562.             }, DX);
  1563.         } else {
  1564.             DZ();
  1565.         }
  1566.     }
  1567.     function y(DW, DV, Da, Db, DX) {
  1568.         var DZ = Da.length;
  1569.         for (var DY = 0; DY < Da.length; DY++) {
  1570.             DO(DW, DV, Da[DY], function() {
  1571.                 if (--DZ <= 0) {
  1572.                     Db();
  1573.                 }
  1574.             }, DX);
  1575.         }
  1576.     }
  1577.     function U(i) {
  1578.         return Math.round(i * 2) / 2;
  1579.     }
  1580.     function r(DV, i) {}
  1581.     function DA(DY, DV) {
  1582.         var i = null;
  1583.         if (DY) {
  1584.             var DW = M("pr_badge_table", DV);
  1585.             for (var DX = 0; DX < DY.length; DX++) {
  1586.                 i = DW[DY[DX]];
  1587.                 if (i) {
  1588.                     break;
  1589.                 }
  1590.             }
  1591.         }
  1592.         return i;
  1593.     }
  1594.     function Ae(DW, Da, Dc) {
  1595.         var Dd = [];
  1596.         if (DW) {
  1597.             var DZ = b(Dc);
  1598.             var DX = AS(M("pr_expert_badge_definitions_url", Dc), "~~~LOCALE~~~", Da);
  1599.             var DV = DW.locales[Da];
  1600.             var Db = (DW.label == "staff" || DW.label == "staff-expert");
  1601.             if (DV) {
  1602.                 var DY = DW.label.replace(/[^-_a-zA-Z]/g, "_");
  1603.                 var i = "pr-review-author-" + DY + "-wrapper";
  1604.                 Dd.push('<div class="');
  1605.                 Dd.push(i);
  1606.                 Dd.push(" ");
  1607.                 Dd.push(i);
  1608.                 Dd.push("-");
  1609.                 Dd.push(Da);
  1610.                 Dd.push('">');
  1611.                 if (Db) {
  1612.                     Dd.push('<a href="');
  1613.                     Dd.push(DX);
  1614.                     Dd.push('">');
  1615.                 }
  1616.                 Dd.push('<img class="pr-badge pr-');
  1617.                 Dd.push(DY);
  1618.                 Dd.push('" src="');
  1619.                 Dd.push(DZ);
  1620.                 Dd.push("/engine/images/badges/");
  1621.                 Dd.push(DV.filename);
  1622.                 Dd.push('" alt="');
  1623.                 Dd.push(DV.hovertext);
  1624.                 Dd.push('" title="');
  1625.                 Dd.push(DV.hovertext);
  1626.                 Dd.push('" />');
  1627.                 if (Db) {
  1628.                     Dd.push("</a>");
  1629.                 }
  1630.                 Dd.push("</div>");
  1631.             }
  1632.         }
  1633.         Dd.push("<!-- woozle -->");
  1634.         return Dd.join("");
  1635.     }
  1636.     function A6(DX, DV, DW) {
  1637.         var i = [];
  1638.         i.push('<div class="pr-fb-follow-thankyou-wrapper"><p class="pr-fb-follow-thankyou-label">');
  1639.         i.push("<span><b>Thank You.</b></span>You have successfully signed up to receive emails.");
  1640.         i.push("</p></div>");
  1641.         return i.join("");
  1642.     }
  1643.     function CZ(DX, DV, DW) {
  1644.         var i = [];
  1645.         i.push('<div class="pr-fb-follow-error-wrapper"><p class="pr-fb-follow-error-label"><span>');
  1646.         i.push("Sorry");
  1647.         i.push("</span></p><p>");
  1648.         i.push("We are having difficulties submitting your email right now. Please try again later.");
  1649.         i.push("</p></div>");
  1650.         return i.join("");
  1651.     }
  1652.     function Al(DV) {
  1653.         var DW = AN("pr_ui_library_base_url", CH, DV, window, Ar);
  1654.         var i = /^(?:http(?:s)?:\/\/)?(?:[^\.]+\.)?(powerreviews\.com|localhost)(.*)/.test(DW);
  1655.         if (!i) {
  1656.             DW = AN("pr_ui_library_base_url", Ar);
  1657.         }
  1658.         return DW;
  1659.     }
  1660.     function BE(DV) {
  1661.         if (!!DG("pr_war_server_path")) {
  1662.             return DG("pr_war_server_path");
  1663.         }
  1664.         var i = Al(DV);
  1665.         var DW = AN("pr_war_server_path", CH, DV, window, Ar);
  1666.         if (!!DW && DW !== "0") {
  1667.             return i + "/" + DW;
  1668.         } else {
  1669.             return "";
  1670.         }
  1671.     }
  1672.     F.getWARServerPath = BE;
  1673.     if (!F.submission) {
  1674.         F.submission = {
  1675.             getWARServerPath: BE
  1676.         };
  1677.     }
  1678.     function DR(i, DV, DX) {
  1679.         var DW;
  1680.         if (i) {
  1681.             DW = M(i, DX);
  1682.         }
  1683.         if (!DW) {
  1684.             var DY = M("pr_base_services_urls", DX);
  1685.             DW = DY["-"];
  1686.             var DZ = M("pr_site_id", DX);
  1687.             if (DZ && DY[DZ]) {
  1688.                 DW = DY[DZ];
  1689.             }
  1690.             DW += DV;
  1691.         }
  1692.         return DW;
  1693.     }
  1694.     function Av(DV) {
  1695.         var DW = M("pr_base_follow_landing_urls", DV);
  1696.         var i = DW["-"];
  1697.         var DX = M("pr_site_id", DV);
  1698.         if (DX && DW[DX]) {
  1699.             i = DW[DX];
  1700.         }
  1701.         i += "/fbonsite/";
  1702.         return i;
  1703.     }
  1704.     function z(DX, DV) {
  1705.         var i = DR(null, "FacebookDisplayProfileController.dox", DV);
  1706.         var DW = Ak(DX);
  1707.         if (DW.length) {
  1708.             i += "?" + DW;
  1709.         }
  1710.         return i;
  1711.     }
  1712.     function CN(DX, DV) {
  1713.         var i = DR(null, "FacebookReviewStatementController.dox?context=STATEMENT", DV);
  1714.         var DW = Ak(DX);
  1715.         if (DW.length) {
  1716.             i += "&" + DW;
  1717.         }
  1718.         return i;
  1719.     }
  1720.     function Cz(DX, DV) {
  1721.         var i = DR(null, "FacebookGetAdviceController/getAdviceQuestionForm.dox", DV);
  1722.         var DW = Ak(DX);
  1723.         if (DW.length) {
  1724.             i += "?" + DW;
  1725.         }
  1726.         return i;
  1727.     }
  1728.     function o(DX, DV) {
  1729.         var i = Av(DV);
  1730.         i += "askReviewer/displayForm.dox";
  1731.         var DW = Ak(DX);
  1732.         if (DW.length) {
  1733.             i += "?" + DW;
  1734.         }
  1735.         return i;
  1736.     }
  1737.     function Az(DX, DW) {
  1738.         var i = Z("pr_locale", DW);
  1739.         var DZ = M("pr_merchant_group_id", DW);
  1740.         var DY = BI(M("pr_site_id", DW) || "-");
  1741.         var DV = o({
  1742.             "locale": i,
  1743.             "merchantGroupId": DZ,
  1744.             "siteId": DY,
  1745.             "sharedReviewId": DX.sharedReviewId
  1746.         }, DW);
  1747.         Ao(DV, 520, 600, {
  1748.             "location": "no"
  1749.         });
  1750.     }
  1751.     F.common.showAskQuestionPopup = Az;
  1752.     function DD(DY, DX) {
  1753.         var DW = M("pr_page_id", DX);
  1754.         var i = Z("pr_locale", DX);
  1755.         var Db = M("pr_merchant_group_id", DX);
  1756.         var Da = M("pr_site_id", DX) || "-";
  1757.         var DZ = DY.avgRating || 0;
  1758.         var DV = Cz({
  1759.             "mgId": Db,
  1760.             "siteId": Da,
  1761.             "pageId": DW,
  1762.             "avgRating": DZ,
  1763.             "locale": i
  1764.         }, DX);
  1765.         Ao(DV, 450, 600, {
  1766.             "location": "no"
  1767.         });
  1768.     }
  1769.     F.common.showFacebookGetAdvicePopup = DD;
  1770.     function Ak(DV) {
  1771.         var i = [];
  1772.         for (var DW in DV) {
  1773.             i.push(DW + "=" + BI(DV[DW]));
  1774.         }
  1775.         return i.join("&");
  1776.     }
  1777.     function Cx(DY, DW, i) {
  1778.         var DZ = Math.min((75 / DW), (100 / i));
  1779.         var DV = Math.floor(DZ * DW);
  1780.         var DX = Math.floor(DZ * i);
  1781.         return "//res.cloudinary.com/powerreviews/image/upload/f_auto,w_" + DV + ",h_" + DX + ",q_50/" + DY;
  1782.     }
  1783.     F.common.constructThumbnailUri = Cx;
  1784.     function AY(DX, DV, DW, i) {
  1785.         if (DV.indexOf("cloudinary") === -1) {
  1786.             return;
  1787.         }
  1788.         var DY = DV.match(/\/(\w+\/\w+)\./)[1];
  1789.         DX.target.src = Cx(DY, DW, i);
  1790.     }
  1791.     F.common.cloudinaryThumbnailFallback = AY;
  1792.     function B7(DW, DX, i, DV) {
  1793.         window.open("http://images2.powerreviews.com/media_popup.html?type=image&url=" + BI(DW), "sizedWindow", "toolbar=no,location=no,directories=no,status=no,menubar=no,resizable=no,width=" + DX + ",height=" + i + ",top=100,left=100");
  1794.     }
  1795.     F.common.showImagePopup = B7;
  1796.     window.showImagePopup = B7;
  1797.     function Ao(i, Dc, DV, DZ) {
  1798.         var DX = {
  1799.             "toolbar": "no",
  1800.             "directories": "no",
  1801.             "status": "no",
  1802.             "menubar": "no",
  1803.             "scrollbars": "yes",
  1804.             "resizable": "yes",
  1805.             "location": "yes",
  1806.             "top": "200",
  1807.             "left": "200"
  1808.         };
  1809.         var Da = [];
  1810.         for (var DW in DX) {
  1811.             Da.push(DW + "=" + ((DZ && DZ[DW]) || DX[DW]));
  1812.         }
  1813.         var DY = Da.join(",");
  1814.         var Db = window.open(i, "smallWindow", "width=" + DV + ",height=" + Dc + "," + DY);
  1815.         if (window.focus) {
  1816.             Db.focus();
  1817.         }
  1818.     }
  1819.     F.common.showSmallPopup = Ao;
  1820.     window.showSmallPopup = Ao;
  1821.     function AG(DV, i) {
  1822.         window.open("http://images2.powerreviews.com/media_popup.html?type=video&url=" + BI(DV), "sizedWindow", "toolbar=no,location=no,directories=no,status=no,menubar=no,resizable=no,width=435,height=350,top=100,left=100");
  1823.     }
  1824.     F.common.showVideoPopup = AG;
  1825.     window.showVideoPopup = AG;
  1826.     function u(DY, DW, DV, DX) {
  1827.         var i = function() {
  1828.             DP(document.getElementById(DY.target), "pr-open");
  1829.             DN(document.getElementById(DY.target), "pr-closed");
  1830.         };
  1831.         var DZ = function() {
  1832.             DP(document.getElementById(DY.target), "pr-closed");
  1833.             DN(document.getElementById(DY.target), "pr-open");
  1834.         };
  1835.         if (window.event) {
  1836.             DX = window.event;
  1837.             DX.cancelBubble = true;
  1838.             target = window.event.srcElement;
  1839.             currentTarget = event.srcElement.id;
  1840.         } else {
  1841.             if (DX) {
  1842.                 DX.stopPropagation();
  1843.                 target = DX.target;
  1844.                 currentTarget = DX.currentTarget.id;
  1845.             } else {
  1846.                 return;
  1847.             }
  1848.         }
  1849.         if (DW == "show") {
  1850.             if (document.getElementById(DY.target).className != "pr-open") {
  1851.                 this.timedShow = setTimeout(DZ, 400);
  1852.             } else {
  1853.                 if (Aw(target, function(Da) {
  1854.                     if (Da.id == DY.target) {
  1855.                         return true;
  1856.                     }
  1857.                 })) {
  1858.                     if (this.timedHide != null) {
  1859.                         window.clearTimeout(this.timedHide);
  1860.                     }
  1861.                 }
  1862.             }
  1863.         } else {
  1864.             if (DW == "hide") {
  1865.                 if (this.timedHide != null) {
  1866.                     window.clearTimeout(this.timedShow);
  1867.                 }
  1868.                 if (currentTarget == DY.link || currentTarget == DY.target || Aw(target, function(Da) {
  1869.                     if (Da.id == DY.target) {
  1870.                         return true;
  1871.                     }
  1872.                 })) {
  1873.                     this.timedHide = setTimeout(i, 800);
  1874.                 } else {
  1875.                     if (this.timedHide != null) {
  1876.                         window.clearTimeout(this.timedHide);
  1877.                     }
  1878.                 }
  1879.             }
  1880.         }
  1881.     }
  1882.     F.common.togglePopOut = u;
  1883.     function DL(DV) {
  1884.         var i = document.getElementById(DV);
  1885.         DP(i, "pr-hidden");
  1886.     }
  1887.     F.display.showElement = DL;
  1888.     function l(DV) {
  1889.         var i = document.getElementById(DV);
  1890.         DN(i, "pr-hidden");
  1891.     }
  1892.     F.display.hideElement = l;
  1893.     function AV(DY, DZ, DW, i) {
  1894.         var DV = DY.substring(DZ, DW);
  1895.         var DX = DV.lastIndexOf(" ");
  1896.         DV = DV.substring(0, DX);
  1897.         if (i) {
  1898.             DV += "...";
  1899.         }
  1900.         return DV;
  1901.     }
  1902.     function AC(DX, DZ, DW, i) {
  1903.         var DV = DX.substring(DZ, DW);
  1904.         var DY = DV.lastIndexOf(";");
  1905.         if (DY > DW - 8) {
  1906.             DV = DV.substring(0, DY);
  1907.         }
  1908.         if (i) {
  1909.             DV += "...";
  1910.         }
  1911.         return DV;
  1912.     }
  1913.     function C5(i, DW) {
  1914.         var DV = document.getElementById(DW).innerHTML;
  1915.         BG(i, DV);
  1916.     }
  1917.     function Ab(i) {
  1918.         var DV = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
  1919.         return DV.test(i);
  1920.     }
  1921.     function DC(DW, De) {
  1922.         var DV = j.parse(DW.getAttribute("prData"));
  1923.         var Db = document.getElementById(DV.target);
  1924.         var Da = Db.value;
  1925.         var Dd = document.getElementById("pr-fb-follow-errorMsg-" + DV.locale + "-" + DV.pageId);
  1926.         if (q(DW, "disabled")) {
  1927.             return false;
  1928.         } else {
  1929.             if (Ab(Da)) {
  1930.                 if (!q(Dd, "pr-hidden")) {
  1931.                     DN(Dd, "pr-hidden");
  1932.                 }
  1933.                 var DY = document.createElement("img");
  1934.                 DY.src = b(De) + "/engine/images/pr_loading.gif";
  1935.                 DY.style.cssText = "position:absolute;top:25px;right:50px;";
  1936.                 var DX = function(Dg) {
  1937.                     var Df = Dg;
  1938.                     if (Df.result.status.toLowerCase() == "ok") {
  1939.                         var Dh = A6(DV, DV.locale, De);
  1940.                     } else {
  1941.                         var Dh = CZ(DV, DV.locale, De);
  1942.                     }
  1943.                     BG("pr-fb-follow-info-wrapper-" + DV.locale + "-" + DV.pageId, Dh);
  1944.                     DN(DY, "pr-hidden");
  1945.                     DP(DW, "pr-hidden");
  1946.                     DN(DW, "disabled");
  1947.                 };
  1948.                 var DZ = Av(De);
  1949.                 var Dc = "verifyFollowEmail-" + DV.type + "-" + DV.keyValue;
  1950.                 var i = DZ + DV.type + "/" + DV.locale + "/" + DV.merchantGroupId + "/" + DV.siteId + "/" + DV.keyValue + "?email=" + encodeURIComponent(Da) + "&key=" + encodeURIComponent(Dc);
  1951.                 x(i, Dc, DX);
  1952.                 Db.disabled = true;
  1953.                 BB(DW, DY);
  1954.                 DN(DW, "pr-hidden");
  1955.             } else {
  1956.                 DP(Dd, "pr-hidden");
  1957.             }
  1958.         }
  1959.     }
  1960.     F.common.validateAndProcessEmail = DC;
  1961.     function BN(DY, DX, DV) {
  1962.         var DW = document.getElementById(DY);
  1963.         if (DW != null) {
  1964.             var i = DW.value;
  1965.             if (i == DX) {
  1966.                 DW.value = "";
  1967.                 DP(DW, DV);
  1968.             }
  1969.         }
  1970.     }
  1971.     function v(DY, DX, DV) {
  1972.         var DW = document.getElementById(DY);
  1973.         if (DW != null) {
  1974.             var i = AR(DW.value);
  1975.             if (i == "") {
  1976.                 DW.value = DX;
  1977.                 DN(DW, DV);
  1978.             }
  1979.         }
  1980.     }
  1981.     var CE = {
  1982.         _keyStr: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",
  1983.         encode: function(DX) {
  1984.             var DV = "";
  1985.             var De, Dc, Da, Dd, Db, DZ, DY;
  1986.             var DW = 0;
  1987.             DX = CE._utf8_encode(DX);
  1988.             while (DW < DX.length) {
  1989.                 De = DX.charCodeAt(DW++);
  1990.                 Dc = DX.charCodeAt(DW++);
  1991.                 Da = DX.charCodeAt(DW++);
  1992.                 Dd = De >> 2;
  1993.                 Db = ((De & 3) << 4) | (Dc >> 4);
  1994.                 DZ = ((Dc & 15) << 2) | (Da >> 6);
  1995.                 DY = Da & 63;
  1996.                 if (isNaN(Dc)) {
  1997.                     DZ = DY = 64;
  1998.                 } else {
  1999.                     if (isNaN(Da)) {
  2000.                         DY = 64;
  2001.                     }
  2002.                 }
  2003.                 DV = DV + this._keyStr.charAt(Dd) + this._keyStr.charAt(Db) + this._keyStr.charAt(DZ) + this._keyStr.charAt(DY);
  2004.             }
  2005.             return DV;
  2006.         },
  2007.         decode: function(DX) {
  2008.             var DV = "";
  2009.             var De, Dc, Da;
  2010.             var Dd, Db, DZ, DY;
  2011.             var DW = 0;
  2012.             DX = DX.replace(/[^A-Za-z0-9\+\/\=]/g, "");
  2013.             while (DW < DX.length) {
  2014.                 Dd = this._keyStr.indexOf(DX.charAt(DW++));
  2015.                 Db = this._keyStr.indexOf(DX.charAt(DW++));
  2016.                 DZ = this._keyStr.indexOf(DX.charAt(DW++));
  2017.                 DY = this._keyStr.indexOf(DX.charAt(DW++));
  2018.                 De = (Dd << 2) | (Db >> 4);
  2019.                 Dc = ((Db & 15) << 4) | (DZ >> 2);
  2020.                 Da = ((DZ & 3) << 6) | DY;
  2021.                 DV = DV + String.fromCharCode(De);
  2022.                 if (DZ != 64) {
  2023.                     DV = DV + String.fromCharCode(Dc);
  2024.                 }
  2025.                 if (DY != 64) {
  2026.                     DV = DV + String.fromCharCode(Da);
  2027.                 }
  2028.             }
  2029.             DV = CE._utf8_decode(DV);
  2030.             return DV;
  2031.         },
  2032.         _utf8_encode: function(DV) {
  2033.             DV = DV.replace(/\r\n/g, "\n");
  2034.             var i = "";
  2035.             for (var DX = 0; DX < DV.length; DX++) {
  2036.                 var DW = DV.charCodeAt(DX);
  2037.                 if (DW < 128) {
  2038.                     i += String.fromCharCode(DW);
  2039.                 } else {
  2040.                     if ((DW > 127) && (DW < 2048)) {
  2041.                         i += String.fromCharCode((DW >> 6) | 192);
  2042.                         i += String.fromCharCode((DW & 63) | 128);
  2043.                     } else {
  2044.                         i += String.fromCharCode((DW >> 12) | 224);
  2045.                         i += String.fromCharCode(((DW >> 6) & 63) | 128);
  2046.                         i += String.fromCharCode((DW & 63) | 128);
  2047.                     }
  2048.                 }
  2049.             }
  2050.             return i;
  2051.         },
  2052.         _utf8_decode: function(DV) {
  2053.             var DW = "";
  2054.             var DY = 0;
  2055.             var DZ = 0;
  2056.             var DX = 0;
  2057.             while (DY < DV.length) {
  2058.                 DZ = DV.charCodeAt(DY);
  2059.                 if (DZ < 128) {
  2060.                     DW += String.fromCharCode(DZ);
  2061.                     DY++;
  2062.                 } else {
  2063.                     if ((DZ > 191) && (DZ < 224)) {
  2064.                         DX = DV.charCodeAt(DY + 1);
  2065.                         DW += String.fromCharCode(((DZ & 31) << 6) | (DX & 63));
  2066.                         DY += 2;
  2067.                     } else {
  2068.                         DX = DV.charCodeAt(DY + 1);
  2069.                         c3 = DV.charCodeAt(DY + 2);
  2070.                         DW += String.fromCharCode(((DZ & 15) << 12) | ((DX & 63) << 6) | (c3 & 63));
  2071.                         DY += 3;
  2072.                     }
  2073.                 }
  2074.             }
  2075.             return DW;
  2076.         }
  2077.     };
  2078.     function CS(i) {
  2079.         if (i.length < 2) {
  2080.             i = "0" + i;
  2081.         }
  2082.         return i;
  2083.     }
  2084.     function Ct(i, DV) {
  2085.         if (i < 12) {
  2086.             return DV[0];
  2087.         }
  2088.         return DV[1];
  2089.     }
  2090.     function B4(i) {
  2091.         var DV = (i + 12) % 12;
  2092.         if (DV == 0) {
  2093.             return "12";
  2094.         }
  2095.         return DV.toString();
  2096.     }
  2097.     function DH(i) {
  2098.         var DV = new Date(i.getFullYear(),0,1);
  2099.         return Math.ceil((i - DV) / 86400000);
  2100.     }
  2101.     function CV(DV, i) {
  2102.         return !(DV < i || i < DV);
  2103.     }
  2104.     function AL(Dj, Dh, DW) {
  2105.         try {
  2106.             var Dg = {
  2107.                 "en_US": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", ""]
  2108.             };
  2109.             var Dd = Dg[Dh];
  2110.             var Dm = {
  2111.                 "en_US": ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December", ""]
  2112.             };
  2113.             var De = Dm[Dh];
  2114.             var Dk = {
  2115.                 "en_US": ["", "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]
  2116.             };
  2117.             var Db = Dk[Dh];
  2118.             var DX = {
  2119.                 "en_US": ["", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]
  2120.             };
  2121.             var Dn = DX[Dh];
  2122.             var DV = {
  2123.                 "en_US": ["AM", "PM"]
  2124.             };
  2125.             var i = DV[Dh];
  2126.             var Da = Dj.split("T")[0].split("-");
  2127.             var DZ = Dj.split("T")[1].split(":");
  2128.             var Dc = Da[1];
  2129.             if (Dc[0] == "0") {
  2130.                 Dc = Dc[1];
  2131.             }
  2132.             Dc = parseInt(Dc) - 1;
  2133.             var Dl = new Date(Date.UTC(Da[0], Dc, Da[2], DZ[0], DZ[1], DZ[2]));
  2134.             var DY = [["MMMM", De[Dl.getMonth()]], ["MMM", Dd[Dl.getMonth()]], ["MM", CS((Dl.getMonth() + 1).toString())], ["M", (Dl.getMonth() + 1).toString()], ["D", Dl.getDOY().toString()], ["dd", CS(Dl.getDate().toString())], ["d", Dl.getDate().toString()], ["EEEE", Dn[Dl.getDay() + 1]], ["EEE", Db[Dl.getDay() + 1]], ["yyyy", Dl.getFullYear().toString()], ["y", Dl.getFullYear().toString().substring(2, 4)], ["H", Dl.getHours().toString()], ["h", B4(Dl.getHours())], ["a", Ct(Dl.getHours(), i)], ["m", Dl.getMinutes().toString()], ["s", Dl.getSeconds().toString()]];
  2135.             var Df = "{0,date,M/d/yyyy}";
  2136.             Df = Df.replace(/{.*?}/g, function(Do) {
  2137.                 Do = Do.substring(Do.indexOf(",") + 1);
  2138.                 Do = Do.substring(Do.indexOf(",") + 1);
  2139.                 Do = Do.replace("}", "");
  2140.                 var Dq = "";
  2141.                 var Dp = Do;
  2142.                 while (Dp != "") {
  2143.                     var Ds = false;
  2144.                     for (var Dt = 0; Dt < DY.length && !Ds; Dt++) {
  2145.                         var Dr = DY[Dt][0];
  2146.                         var Du = DY[Dt][1];
  2147.                         if (Dp.find(Dr) == 0) {
  2148.                             Dq += Du;
  2149.                             Dp = Dp.substring(Dr.length);
  2150.                             Ds = true;
  2151.                         }
  2152.                     }
  2153.                     if (!Ds) {
  2154.                         Dq += Dp[0];
  2155.                         Dp = Dp.substring(1);
  2156.                     }
  2157.                 }
  2158.                 return Dq;
  2159.             });
  2160.             return Df;
  2161.         } catch (Di) {
  2162.             return "";
  2163.         }
  2164.     }
  2165.     function AO(i) {
  2166.         return BI(CE.encode(i));
  2167.     }
  2168.     function Cf(i, DX) {
  2169.         var DV = document.documentElement.getBoundingClientRect();
  2170.         var DZ = i.getBoundingClientRect();
  2171.         var DY = DZ.top - DV.top;
  2172.         var DW = document.body;
  2173.         if (document.documentElement.scrollTop > 0) {
  2174.             DW = document.documentElement;
  2175.         }
  2176.         return A1(DW, DY, DX);
  2177.     }
  2178.     function A1(DW, DZ, DY) {
  2179.         DZ = Math.round(DZ);
  2180.         DY = Math.round(DY);
  2181.         if (DY < 0) {
  2182.             return Promise.reject("bad duration");
  2183.         }
  2184.         if (DY === 0) {
  2185.             DW.scrollTop = DZ;
  2186.             return Promise.resolve();
  2187.         }
  2188.         var DX = Date.now();
  2189.         var DV = DX + DY;
  2190.         var Da = DW.scrollTop;
  2191.         var Db = DZ - Da;
  2192.         var i = function(Df, De, Dd) {
  2193.             if (Dd <= Df) {
  2194.                 return 0;
  2195.             }
  2196.             if (Dd >= De) {
  2197.                 return 1;
  2198.             }
  2199.             var Dc = (Dd - Df) / (De - Df);
  2200.             return Dc * Dc * (3 - 2 * Dc);
  2201.         };
  2202.         return new Promise(function(De, Dd) {
  2203.             var Dc = DW.scrollTop;
  2204.             var Df = function() {
  2205.                 if (DW.scrollTop != Dc && !Bb()) {
  2206.                     return;
  2207.                 }
  2208.                 var Dh = Date.now();
  2209.                 var Dg = i(DX, DV, Dh);
  2210.                 var Di = Math.round(Da + (Db * Dg));
  2211.                 DW.scrollTop = Di;
  2212.                 if (Dh >= DV) {
  2213.                     De();
  2214.                     return;
  2215.                 }
  2216.                 if (DW.scrollTop === Dc && DW.scrollTop !== Di) {
  2217.                     De();
  2218.                     return;
  2219.                 }
  2220.                 Dc = DW.scrollTop;
  2221.                 setTimeout(Df, 0);
  2222.             };
  2223.             setTimeout(Df, 0);
  2224.         }
  2225.         );
  2226.     }
  2227.     function Bb() {
  2228.         return (("ontouchstart"in window) || (navigator.msMaxTouchPoints > 0));
  2229.     }
  2230.     var j;
  2231.     if (!j) {
  2232.         j = {};
  2233.     }
  2234.     (function() {
  2235.         var DX = /[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g, DZ = /[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g, Da, DV, Dc = {
  2236.             "\b": "\\b",
  2237.             "\t": "\\t",
  2238.             "\n": "\\n",
  2239.             "\f": "\\f",
  2240.             "\r": "\\r",
  2241.             '"': '\\"',
  2242.             "\\": "\\\\"
  2243.         }, Db;
  2244.         function i(Dd) {
  2245.             DZ.lastIndex = 0;
  2246.             return DZ.test(Dd) ? '"' + Dd.replace(DZ, function(De) {
  2247.                 var Df = Dc[De];
  2248.                 return typeof Df === "string" ? Df : "\\u" + ("0000" + De.charCodeAt(0).toString(16)).slice(-4);
  2249.             }) + '"' : '"' + Dd + '"';
  2250.         }
  2251.         function DW() {
  2252.             return n < 10 ? "0" + n : n;
  2253.         }
  2254.         function DY(Dk, Dh) {
  2255.             var Df, De, Dl, Dd, Di = Da, Dg, Dj = Dh[Dk];
  2256.             if (Dj && typeof Dj === "object" && typeof Dj.toJSON === "function") {
  2257.                 Dj = Dj.toJSON(Dk);
  2258.             }
  2259.             if (typeof Db === "function") {
  2260.                 Dj = Db.call(Dh, Dk, Dj);
  2261.             }
  2262.             switch (typeof Dj === "object" && Object.prototype.toString.apply(Dj)) {
  2263.             case "[object Boolean]":
  2264.             case "[object Number]":
  2265.             case "[object String]":
  2266.                 Dj = Dj.valueOf();
  2267.             }
  2268.             switch (typeof Dj) {
  2269.             case "string":
  2270.                 return i(Dj);
  2271.             case "number":
  2272.                 return isFinite(Dj) ? String(Dj) : "null";
  2273.             case "boolean":
  2274.             case "null":
  2275.                 return String(Dj);
  2276.             case "object":
  2277.                 if (!Dj) {
  2278.                     return "null";
  2279.                 }
  2280.                 Da += DV;
  2281.                 Dg = [];
  2282.                 if (Object.prototype.toString.apply(Dj) === "[object Date]") {
  2283.                     return isFinite(Dj.valueOf()) ? Dj.getUTCFullYear() + "-" + DW(Dj.getUTCMonth() + 1) + "-" + DW(Dj.getUTCDate()) + "T" + DW(Dj.getUTCHours()) + ":" + DW(Dj.getUTCMinutes()) + ":" + DW(Dj.getUTCSeconds()) + "Z" : null;
  2284.                 }
  2285.                 if (Object.prototype.toString.apply(Dj) === "[object Array]") {
  2286.                     Dd = Dj.length;
  2287.                     for (Df = 0; Df < Dd; Df += 1) {
  2288.                         Dg[Df] = DY(Df, Dj) || "null";
  2289.                     }
  2290.                     Dl = Dg.length === 0 ? "[]" : Da ? "[\n" + Da + Dg.join(",\n" + Da) + "\n" + Di + "]" : "[" + Dg.join(",") + "]";
  2291.                     Da = Di;
  2292.                     return Dl;
  2293.                 }
  2294.                 if (Db && typeof Db === "object") {
  2295.                     Dd = Db.length;
  2296.                     for (Df = 0; Df < Dd; Df += 1) {
  2297.                         if (typeof Db[Df] === "string") {
  2298.                             De = Db[Df];
  2299.                             Dl = DY(De, Dj);
  2300.                             if (Dl) {
  2301.                                 Dg.push(i(De) + (Da ? ": " : ":") + Dl);
  2302.                             }
  2303.                         }
  2304.                     }
  2305.                 } else {
  2306.                     for (De in Dj) {
  2307.                         if (Object.prototype.hasOwnProperty.call(Dj, De)) {
  2308.                             Dl = DY(De, Dj);
  2309.                             if (Dl) {
  2310.                                 Dg.push(i(De) + (Da ? ": " : ":") + Dl);
  2311.                             }
  2312.                         }
  2313.                     }
  2314.                 }
  2315.                 Dl = Dg.length === 0 ? "{}" : Da ? "{\n" + Da + Dg.join(",\n" + Da) + "\n" + Di + "}" : "{" + Dg.join(",") + "}";
  2316.                 Da = Di;
  2317.                 return Dl;
  2318.             }
  2319.         }
  2320.         if (typeof j.stringify !== "function") {
  2321.             j.stringify = function(Dg, De, Df) {
  2322.                 var Dd;
  2323.                 Da = "";
  2324.                 DV = "";
  2325.                 if (typeof Df === "number") {
  2326.                     for (Dd = 0; Dd < Df; Dd += 1) {
  2327.                         DV += " ";
  2328.                     }
  2329.                 } else {
  2330.                     if (typeof Df === "string") {
  2331.                         DV = Df;
  2332.                     }
  2333.                 }
  2334.                 Db = De;
  2335.                 if (De && typeof De !== "function" && (typeof De !== "object" || typeof De.length !== "number")) {
  2336.                     throw new Error("JSON.stringify");
  2337.                 }
  2338.                 return DY("", {
  2339.                     "": Dg
  2340.                 });
  2341.             }
  2342.             ;
  2343.         }
  2344.         if (typeof j.parse !== "function") {
  2345.             j.parse = function(Dg, Dd) {
  2346.                 var Df;
  2347.                 function De(Dk, Dj) {
  2348.                     var Di, Dh, Dl = Dk[Dj];
  2349.                     if (Dl && typeof Dl === "object") {
  2350.                         for (Di in Dl) {
  2351.                             if (Object.prototype.hasOwnProperty.call(Dl, Di)) {
  2352.                                 Dh = De(Dl, Di);
  2353.                                 if (Dh !== undefined) {
  2354.                                     Dl[Di] = Dh;
  2355.                                 } else {
  2356.                                     delete Dl[Di];
  2357.                                 }
  2358.                             }
  2359.                         }
  2360.                     }
  2361.                     return Dd.call(Dk, Dj, Dl);
  2362.                 }
  2363.                 Dg = String(Dg);
  2364.                 DX.lastIndex = 0;
  2365.                 if (DX.test(Dg)) {
  2366.                     Dg = Dg.replace(DX, function(Dh) {
  2367.                         return "\\u" + ("0000" + Dh.charCodeAt(0).toString(16)).slice(-4);
  2368.                     });
  2369.                 }
  2370.                 if (/^[\],:{}\s]*$/.test(Dg.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, "@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, "]").replace(/(?:^|:|,)(?:\s*\[)+/g, ""))) {
  2371.                     Df = POWERREVIEWS.ext.evaluate("(" + Dg + ")");
  2372.                     return typeof Dd === "function" ? De({
  2373.                         "": Df
  2374.                     }, "") : Df;
  2375.                 }
  2376.                 throw new SyntaxError("JSON.parse");
  2377.             }
  2378.             ;
  2379.         }
  2380.     }());
  2381.     var AZ = {};
  2382.     var Ap = 0;
  2383.     var Ai = 1;
  2384.     var P = 2;
  2385.     var C1 = 3;
  2386.     var AH = 4;
  2387.     var CB = 5;
  2388.     var An = null;
  2389.     var Bt = new Date();
  2390.     var A0 = {};
  2391.     var I = {};
  2392.     var Bx = {};
  2393.     function Q(i) {
  2394.         var DW = M("pr_site_id", i);
  2395.         var DV;
  2396.         if (DW) {
  2397.             DV = M("pr_merchant_table", i)["siteId-" + M("pr_site_id", i)];
  2398.         }
  2399.         if (!DV) {
  2400.             DV = M("pr_merchant_table", i)["m" + M("pr_merchant_id", i)];
  2401.         }
  2402.         return DV;
  2403.     }
  2404.     function W(i, DV) {
  2405.         var DW = M("pr_analytics_script_src", DV);
  2406.         if (DW) {
  2407.             i.write('<script src="' + DW + '" type="text/javascript"><\/script>');
  2408.         }
  2409.     }
  2410.     function CC(DX, DZ) {
  2411.         if (Bc(DX, DZ)) {
  2412.             var DY = M("pr_page_id", DZ);
  2413.             var DW = C8(DY);
  2414.             var DV = Z("pr_locale", DZ);
  2415.             var i = "engine-" + DW + "-" + DV;
  2416.             Cd(i, DZ);
  2417.             var Da = document.getElementById("pr-review-engine-" + DW);
  2418.             if (!Da) {
  2419.                 A4(DX, DW);
  2420.             }
  2421.             var Db = Da ? true : false;
  2422.             BH(DW, DV, Db, DZ);
  2423.             Cp(DW, DV, Db, DZ);
  2424.             if (A(DZ)) {
  2425.                 if (!!DZ.pr_product_description) {
  2426.                     DZ.pr_product_description = DZ.pr_product_description.substr(0, 300);
  2427.                 }
  2428.                 CK(DZ);
  2429.             }
  2430.             W(DX, DZ);
  2431.             if (!Da || M("pr_overwrite_inline_content", DZ)) {
  2432.                 k(DW, DV, i, DZ);
  2433.             } else {
  2434.                 Bf(DY, DW, DZ);
  2435.                 B6(DZ);
  2436.             }
  2437.             BU(DW, DV, DZ);
  2438.         }
  2439.     }
  2440.     F.display.engine = CC;
  2441.     window.engine = CC;
  2442.     function Bf(DV, i, DW) {
  2443.         var DZ = document.getElementById("writeReview") || document.getElementById("write-review-" + i);
  2444.         if (DZ) {
  2445.             var DX = N(DV, DW);
  2446.             if (DX) {
  2447.                 DZ.href = DX;
  2448.                 var DY = document.getElementById("pr-snapshot-footer-" + i);
  2449.                 if (DY) {
  2450.                     DY.style.display = "";
  2451.                 }
  2452.             }
  2453.         } else {
  2454.             setTimeout(function() {
  2455.                 Bf(DV, i, DW);
  2456.             }, 100);
  2457.         }
  2458.     }
  2459.     function k(DW, DV, i, DY) {
  2460.         var DX = M("pr_page_id", DY);
  2461.         Am(DW, DV, i, DY, function() {
  2462.             C7(DW);
  2463.             Bf(DX, DW, DY);
  2464.             B6(DY);
  2465.         });
  2466.     }
  2467.     F.display.displayInitialReviewBoxWrapper = k;
  2468.     function N(i, DV) {
  2469.         var DW = M("pr_page_id_variant", DV);
  2470.         var DX = M("pr_write_review", DV);
  2471.         DX = AS(DX, "~~~PAGE_ID~~~", i);
  2472.         DX = AS(DX, "~~~VARIANT~~~", DW);
  2473.         return DX;
  2474.     }
  2475.     function A4(i, DW) {
  2476.         var DV = "";
  2477.         DV += '<div id="pr-review-engine-' + DW + '" class="pr-review-engine">';
  2478.         DV += '<div id="pr-header-' + DW + '" class="pr-header"></div><div id="pr-contents-' + DW + '" class="pr-contents"></div>';
  2479.         DV += "</div>";
  2480.         i.write(DV);
  2481.     }
  2482.     function C7(DV) {
  2483.         var DW = document.getElementById("pr-review-engine-screen-" + DV);
  2484.         if (DW && DW.parentNode) {
  2485.             DW.parentNode.removeChild(DW);
  2486.         }
  2487.         var i = document.getElementById("pr-review-engine-" + DV);
  2488.         if (i) {
  2489.             DP(i, "pr-review-engine-screened");
  2490.         }
  2491.     }
  2492.     function DK(DX, DY, DV) {
  2493.         var DW = AR(M("pr_analytics_account", DV));
  2494.         if (window.urchinTracker && DW) {
  2495.             var i = "";
  2496.             var DZ = typeof _uacct != "undefined";
  2497.             if (DZ) {
  2498.                 i = _uacct;
  2499.             }
  2500.             _uacct = DW;
  2501.             urchinTracker("/product_with_" + (DX ? DX : 0) + "_reviews");
  2502.             if (DZ) {
  2503.                 _uacct = i;
  2504.             }
  2505.         }
  2506.     }
  2507.     function Cr(DW, DX) {
  2508.         if (!Bx[DW]) {
  2509.             var DZ = {};
  2510.             var DV = M("pr_all_locales", DX);
  2511.             for (var DY = 0; DY < DV.length; DY++) {
  2512.                 (function(Da) {
  2513.                     CJ(DW, DV[Da], function(Db) {
  2514.                         var i = (Db && Db.reviews && Db.reviews.review_count) || 0;
  2515.                         DZ[DV[Da]] = i;
  2516.                     });
  2517.                 }
  2518.                 )(DY);
  2519.             }
  2520.             Bx[DW] = DZ;
  2521.         }
  2522.         return Bx[DW];
  2523.     }
  2524.     function Am(DW, DV, i, DX, DY) {
  2525.         CJ(DW, DV, function(Dc) {
  2526.             var Dg = (Dc && Dc.reviews && Dc.reviews.review_count) || 0;
  2527.             var Db = (Dc && Dc.reviews && Dc.reviews.review_ratings) || [0, 0, 0, 0, 0];
  2528.             var De;
  2529.             var Dd = function() {
  2530.                 if (--De <= 0) {
  2531.                     DY();
  2532.                 }
  2533.             };
  2534.             if (Dg > 0) {
  2535.                 De = 2;
  2536.                 O(DW, DV, Dg, Db, i, DX, Dd);
  2537.                 Bd(1, DW, DV, i, DX, Dd);
  2538.             } else {
  2539.                 De = 1;
  2540.                 O(DW, DV, Dg, Db, i, DX, Dd);
  2541.             }
  2542.             var Dh = document.querySelector(".pr-attribute-ratings");
  2543.             if (Dh) {
  2544.                 var Da = [];
  2545.                 for (var DZ = 0; DZ < Db.length; DZ++) {
  2546.                     var Df = Db[DZ];
  2547.                     if (Df > 0) {
  2548.                         Da.push(DZ + 1);
  2549.                     }
  2550.                 }
  2551.                 C4.trackPageview("rd", {
  2552.                     locale: M("pr_locale", DX),
  2553.                     pageId: M("pr_page_id", DX),
  2554.                     merchantId: M("pr_merchant_id", DX),
  2555.                     siteId: M("pr_site_id", DX),
  2556.                     engineVersion: "2",
  2557.                     af: Da.join(";")
  2558.                 });
  2559.             }
  2560.         }, DX);
  2561.     }
  2562.     function BU(DV, i, DW) {
  2563.         CJ(DV, i, function(DY) {
  2564.             var DX = 0;
  2565.             var DZ = 0;
  2566.             if (DY && DY.reviews) {
  2567.                 DX = DY.reviews.review_count;
  2568.                 DZ = DY.reviews.avg;
  2569.             }
  2570.             DI("main", new A9(DV,DX,0,U(DZ)));
  2571.             window.setTimeout(function() {
  2572.                 var Da, Db;
  2573.                 if (DY && DY.reviews) {
  2574.                     Da = DY.reviews.review_count;
  2575.                     Db = DY.reviews.avg;
  2576.                 }
  2577.                 DK(Da, Db, DW);
  2578.             }, 0);
  2579.         }, DW);
  2580.     }
  2581.     function BJ(DY, DX) {
  2582.         var Da = {}
  2583.           , Db = 0
  2584.           , DZ = DY.length;
  2585.         for (var DW = 0; DW < DZ; DW++) {
  2586.             var DV = DY[DW];
  2587.             if (DV.at) {
  2588.                 ++Db;
  2589.                 if (Da[DV.at]) {
  2590.                     Da[DV.at].push(DV.id);
  2591.                 } else {
  2592.                     Da[DV.at] = [DV.id];
  2593.                 }
  2594.             }
  2595.         }
  2596.         for (var i in Da) {
  2597.             if (Da.hasOwnProperty(i)) {
  2598.                 C4.trackPageview("rd", {
  2599.                     locale: M("pr_locale", DX),
  2600.                     pageId: M("pr_page_id", DX),
  2601.                     merchantId: M("pr_merchant_id", DX),
  2602.                     siteId: M("pr_site_id", DX),
  2603.                     eventType: "syndication",
  2604.                     synMerchantId: i.toString(),
  2605.                     synSharedReviewIds: Da[i],
  2606.                     synReviewsOnPageCount: Db
  2607.                 });
  2608.             }
  2609.         }
  2610.     }
  2611.     function A(i) {
  2612.         return (!!M("pr_product_name", i) && !!M("pr_product_image_url", i) && !!M("pr_product_category_name", i) && !!M("pr_product_description", i));
  2613.     }
  2614.     function CK(DW) {
  2615.         var DX = {
  2616.             bn: M("pr_product_brand_name", DW),
  2617.             pid: M("pr_page_id", DW),
  2618.             pidv: M("pr_page_id_variant", DW),
  2619.             l: M("pr_locale", DW),
  2620.             n: M("pr_product_name", DW),
  2621.             d: M("pr_product_description", DW),
  2622.             pu: M("pr_product_url", DW),
  2623.             iu: M("pr_product_image_url", DW),
  2624.             pri: M("pr_product_price", DW),
  2625.             cn: M("pr_product_category_name", DW),
  2626.             is: M("pr_product_in_stock", DW),
  2627.             mi: M("pr_product_manufacturer_id", DW),
  2628.             upc: M("pr_product_upc", DW),
  2629.             atcu: M("pr_product_add_to_cart_url", DW)
  2630.         };
  2631.         var i = M("pr_site_id", DW);
  2632.         if (!!i) {
  2633.             DX.sid = i;
  2634.         } else {
  2635.             DX.mid = M("pr_merchant_id", DW);
  2636.         }
  2637.         C4.trackPageview("fp", DX);
  2638.         if (!!window.sessionStorage) {
  2639.             var DV = j.parse(window.sessionStorage.getItem("powerreviews")) || {};
  2640.             DV = {
  2641.                 currentProductInformation: {
  2642.                     merchant_id: M("pr_merchant_id", DW),
  2643.                     merchant_group_id: M("pr_merchant_group_id", DW),
  2644.                     site_id: M("pr_site_id", DW),
  2645.                     page_id: M("pr_page_id", DW),
  2646.                     page_id_variant: M("pr_page_id_variant", DW),
  2647.                     pr_product_brand_name: M("pr_product_brand_name", DW),
  2648.                     pr_product_name: M("pr_product_name", DW),
  2649.                     pr_product_description: M("pr_product_description", DW),
  2650.                     pr_product_url: M("pr_product_url", DW),
  2651.                     pr_product_image_url: M("pr_product_image_url", DW),
  2652.                     pr_product_price: M("pr_product_price", DW),
  2653.                     pr_product_category_name: M("pr_product_category_name", DW),
  2654.                     pr_product_in_stock: M("pr_product_in_stock", DW),
  2655.                     pr_product_manufacturer_id: M("pr_product_manufacturer_id", DW),
  2656.                     pr_product_upc: M("pr_product_upc", DW),
  2657.                     pr_product_add_to_cart_url: M("pr_product_add_to_cart_url", DW)
  2658.                 }
  2659.             };
  2660.             window.sessionStorage.setItem("powerreviews", j.stringify(DV));
  2661.         }
  2662.     }
  2663.     function BH(DV, i, DY, DW) {
  2664.         B2.userTrackingDomain = M("pr_tracking_domain", DW);
  2665.         var DZ = document.getElementById("pr-review-engine-" + DV);
  2666.         if (DZ) {
  2667.             C4.trackClickEvents(DZ, "rd", {
  2668.                 locale: M("pr_locale", DW),
  2669.                 pageId: M("pr_page_id", DW),
  2670.                 merchantId: M("pr_merchant_id", DW),
  2671.                 siteId: M("pr_site_id", DW),
  2672.                 engineVersion: "2",
  2673.                 inlineSEO: DY
  2674.             });
  2675.             C4.trackVisibility(DZ, "rd", {
  2676.                 eventType: "reviews-visible",
  2677.                 locale: M("pr_locale", DW),
  2678.                 pageId: M("pr_page_id", DW),
  2679.                 merchantId: M("pr_merchant_id", DW),
  2680.                 siteId: M("pr_site_id", DW),
  2681.                 engineVersion: "2",
  2682.                 inlineSEO: DY
  2683.             });
  2684.         }
  2685.         var DX = document.querySelector(".pr-attribute-ratings");
  2686.         if (DX) {
  2687.             C4.trackVisibility(DX, "rd", {
  2688.                 locale: M("pr_locale", DW),
  2689.                 pageId: M("pr_page_id", DW),
  2690.                 merchantId: M("pr_merchant_id", DW),
  2691.                 siteId: M("pr_site_id", DW),
  2692.                 engineVersion: "2",
  2693.                 inlineSEO: DY,
  2694.                 eventType: "histogram-viewed"
  2695.             });
  2696.         }
  2697.     }
  2698.     function Cp(DV, i, DX, DW) {
  2699.         CJ(DV, i, function(DZ) {
  2700.             var DY, Da;
  2701.             if (DZ && DZ.reviews) {
  2702.                 DY = DZ.reviews.review_count;
  2703.                 Da = DZ.reviews.avg;
  2704.             }
  2705.             var Db = document.getElementById("pr-review-engine-" + DV);
  2706.             if (Db) {
  2707.                 C4.trackPageview("rd", {
  2708.                     locale: M("pr_locale", DW),
  2709.                     pageId: M("pr_page_id", DW),
  2710.                     merchantId: M("pr_merchant_id", DW),
  2711.                     siteId: M("pr_site_id", DW),
  2712.                     engineVersion: "2",
  2713.                     inlineSEO: DX,
  2714.                     reviewCount: DY,
  2715.                     starRating: Da ? Da : null,
  2716.                     visible: C4.isElementVisible(Db),
  2717.                     ct: M("pr_creation_date")
  2718.                 });
  2719.             }
  2720.         }, DW);
  2721.     }
  2722.     function B6(DW) {
  2723.         var DZ = M("pr_site_id", DW);
  2724.         var DV = [];
  2725.         if (DZ || !false) {
  2726.             DV = DV.concat(C0(document, "p", "pr-fb-needs-merchant"));
  2727.             DV = DV.concat(C0(document, "div", "pr-fb-needs-merchant"));
  2728.         }
  2729.         if (DZ) {
  2730.             DZ = C8(DZ);
  2731.             DV = DV.concat(C0(document, "p", "pr-needs-siteid-" + DZ));
  2732.             DV = DV.concat(C0(document, "div", "pr-needs-siteid-" + DZ));
  2733.         }
  2734.         for (var DX = 0; DX < DV.length; DX++) {
  2735.             var DY = DV[DX];
  2736.             DY.style.display = "";
  2737.         }
  2738.     }
  2739.     function Bz(i) {}
  2740.     F.display.collapseReviewPointsPanel = Bz;
  2741.     function CX(Db, DV, DZ) {
  2742.         document.getElementById("pr-filters").style.display = "none";
  2743.         document.getElementById("pr-review-filtered-count").style.display = "none";
  2744.         document.getElementById("pr-review-count").style.display = "block";
  2745.         var DX = document.querySelector(".pr-attribute-ratings").querySelector(".pr-ratings-histogram-content");
  2746.         for (var DY = 0; DY < DX.children.length; DY++) {
  2747.             var Da = DX.children[DY];
  2748.             Da.className = Da.className.replace(" pr-selected", "");
  2749.         }
  2750.         if (K) {
  2751.             t = K;
  2752.         }
  2753.         var DW = M("pr_page_id", DZ);
  2754.         DW = C8(DW);
  2755.         var i = M("pr_locale", DZ);
  2756.         Af(DW, i, function() {
  2757.             As(An, DW);
  2758.             d(1, DW, i, "sort", DV, DZ);
  2759.             C4.trackPageview("rd", {
  2760.                 locale: M("pr_locale", DZ),
  2761.                 pageId: M("pr_page_id", DZ),
  2762.                 merchantId: M("pr_merchant_id", DZ),
  2763.                 siteId: M("pr_site_id", DZ),
  2764.                 engineVersion: "2",
  2765.                 eventType: "filter-removed-all"
  2766.             });
  2767.         }, DZ);
  2768.     }
  2769.     POWERREVIEWS.display.clearFilters = CX;
  2770.     function m(Db, DZ, Da, Dh, Dd) {
  2771.         if (!Da || !Dd) {
  2772.             return;
  2773.         }
  2774.         var i = new Date();
  2775.         if (i.getTime() - Bt.getTime() > 1000) {
  2776.             for (var DX = 0; DX < Db.parentNode.children.length; DX++) {
  2777.                 var DV = Db.parentNode.children[DX];
  2778.                 DV.className = DV.className.replace(" pr-selected", "");
  2779.             }
  2780.             Db.className += " pr-selected";
  2781.             var Dg = this;
  2782.             var Df = document.createElement("DIV");
  2783.             Df.className = "pr-filter";
  2784.             Df.onclick = function() {
  2785.                 POWERREVIEWS.display.clearFilters(Dg, Da, POWERREVIEWS.common.getOptions(Da));
  2786.             }
  2787.             ;
  2788.             var DY = document.createElement("DIV");
  2789.             DY.className = "pr-filter-remove-icon";
  2790.             var De = document.createElement("DIV");
  2791.             De.className = "pr-filter-label";
  2792.             De.innerHTML = CU(M("pr_locale"))[DZ - 1];
  2793.             Df.appendChild(DY);
  2794.             Df.appendChild(De);
  2795.             document.getElementById("pr-filters-active").innerHTML = "";
  2796.             document.getElementById("pr-filters-active").appendChild(Df);
  2797.             document.getElementById("pr-filters").style.display = "block";
  2798.             Bt = i;
  2799.             var DW = M("pr_page_id", Dh);
  2800.             DW = C8(DW);
  2801.             var Dc = M("pr_locale", Dh);
  2802.             Af(DW, Dc, function() {
  2803.                 C4.trackPageview("rd", {
  2804.                     locale: M("pr_locale", Dh),
  2805.                     pageId: M("pr_page_id", Dh),
  2806.                     merchantId: M("pr_merchant_id", Dh),
  2807.                     siteId: M("pr_site_id", Dh),
  2808.                     engineVersion: "2",
  2809.                     eventType: "filter-applied-" + DZ + "star"
  2810.                 });
  2811.                 Cq({
  2812.                     rating: DZ
  2813.                 }, DW);
  2814.                 d(1, DW, Dc, "sort", Da, Dh);
  2815.                 document.getElementById("pr-review-filtered-count").innerHTML = "Filtered to show {0} of {1} reviews".replace("{0}", t.length).replace("{1}", K.length);
  2816.                 document.getElementById("pr-review-filtered-count").style.display = "block";
  2817.                 document.getElementById("pr-review-count").style.display = "none";
  2818.                 var Di = document.getElementById("pr-review-sort");
  2819.                 if (!window.Promise) {
  2820.                     Di.scrollIntoView();
  2821.                 } else {
  2822.                     Cf(Di, 500);
  2823.                 }
  2824.             }, Dh);
  2825.         }
  2826.     }
  2827.     F.display.filterReviewsByRating = m;
  2828.     function Cq(DW) {
  2829.         if (!K) {
  2830.             K = t;
  2831.         }
  2832.         var DV = [];
  2833.         for (var i = 0; i < K.length; i++) {
  2834.             var DX = K[i];
  2835.             if (DW.rating === DX.rating) {
  2836.                 DV.push(DX);
  2837.             }
  2838.         }
  2839.         t = DV;
  2840.     }
  2841.     function CP(DZ, DW, DV, i, DX) {
  2842.         var DY = new Date();
  2843.         if (DY.getTime() - Bt.getTime() > 1000) {
  2844.             Bt = DY;
  2845.             Af(DW, DV, function() {
  2846.                 As(DZ.selectedIndex, DW);
  2847.                 d(1, DW, DV, "sort", i, DX);
  2848.             }, DX);
  2849.         }
  2850.     }
  2851.     F.display.startSort = CP;
  2852.     function As(DW, i) {
  2853.         t.sort(AZ[DW]);
  2854.         An = DW;
  2855.         var DV = document.getElementById("pr-header-" + i);
  2856.         if (DV) {
  2857.             DV.focus();
  2858.         }
  2859.     }
  2860.     function Cb(DV, i) {
  2861.         if (DV.oid && i.oid) {
  2862.             return i.oid - DV.oid;
  2863.         }
  2864.         return i.rid - DV.rid;
  2865.     }
  2866.     AZ[Ap] = function(DV, i) {
  2867.         if (DV.date == i.date) {
  2868.             return Cb(DV, i);
  2869.         }
  2870.         return i.date - DV.date;
  2871.     }
  2872.     ;
  2873.     AZ[Ai] = function(DV, i) {
  2874.         if (i.date == DV.date) {
  2875.             return Cb(i, DV);
  2876.         }
  2877.         return DV.date - i.date;
  2878.     }
  2879.     ;
  2880.     AZ[P] = function(DV, i) {
  2881.         if (i.rating == DV.rating) {
  2882.             return Cb(DV, i);
  2883.         }
  2884.         return i.rating - DV.rating;
  2885.     }
  2886.     ;
  2887.     AZ[C1] = function(DV, i) {
  2888.         if (i.rating == DV.rating) {
  2889.             return Cb(i, DV);
  2890.         }
  2891.         return DV.rating - i.rating;
  2892.     }
  2893.     ;
  2894.     AZ[AH] = function(DV, i) {
  2895.         if (i.helpfulScore == DV.helpfulScore) {
  2896.             return Cb(DV, i);
  2897.         }
  2898.         return i.helpfulScore - DV.helpfulScore;
  2899.     }
  2900.     ;
  2901.     AZ[CB] = function(DV, i) {
  2902.         if (i.helpfulScore == DV.helpfulScore) {
  2903.             return Cb(i, DV);
  2904.         }
  2905.         return DV.helpfulScore - i.helpfulScore;
  2906.     }
  2907.     ;
  2908.     function Bd(DY, DW, DV, i, DX, DZ) {
  2909.         CJ(DW, DV, function(Da) {
  2910.             var Db = [DY];
  2911.             y(DW, DV, Db, function() {
  2912.                 var Dc = 0;
  2913.                 if (Da.reviews) {
  2914.                     try {
  2915.                         Dc = t.length;
  2916.                     } catch (Dd) {
  2917.                         Dc = Da.reviews.review_count;
  2918.                     }
  2919.                     BJ(L[DW + "-" + DV + "-" + DY], DX);
  2920.                 }
  2921.                 BG("pr-contents-" + DW, Be(L[DW + "-" + DV + "-" + DY], DW, DV, Da.name, Da.vNames, Da.brand, Dc, M("pr_reviews_per_page", DX), 1, "#pr-header-" + DW, "#pr-header-" + DW, false, i, DX), DZ);
  2922.             }, DX);
  2923.         }, DX);
  2924.     }
  2925.     function S(DY, DW, DV, i, DX) {
  2926.         d(DY, DW, DV, "page", i, DX);
  2927.     }
  2928.     function d(DY, DW, DV, DZ, i, DX) {
  2929.         Af(DW, DV, function() {
  2930.             if (An == null) {
  2931.                 As(Ap, DW);
  2932.             }
  2933.             CJ(DW, DV, function(Da) {
  2934.                 var Df = M("pr_reviews_per_page", DX);
  2935.                 var Di = (DY - 1) * Df;
  2936.                 var Dd = Di + Df - 1;
  2937.                 var De;
  2938.                 try {
  2939.                     De = t.length - 1;
  2940.                 } catch (Dg) {
  2941.                     De = Da.reviews.review_count - 1;
  2942.                 }
  2943.                 if (Dd > De) {
  2944.                     Dd = De;
  2945.                 }
  2946.                 var Db = [];
  2947.                 var Dj = {};
  2948.                 for (var Dc = Di; Dc <= Dd; Dc++) {
  2949.                     var Dh = t[Dc].batch;
  2950.                     if (!Dj[Dh]) {
  2951.                         Db.push(Dh);
  2952.                         Dj[Dh] = true;
  2953.                     }
  2954.                 }
  2955.                 y(DW, DV, Db, function() {
  2956.                     var Dl = [];
  2957.                     for (var Dk = Di; Dk <= Dd; Dk++) {
  2958.                         Dl.push(AI[t[Dk].rid]);
  2959.                     }
  2960.                     BJ(Dl, DX);
  2961.                     setTimeout(function() {
  2962.                         BG("pr-contents-" + C8(DW), Be(Dl, DW, DV, Da.name, Da.vNames, Da.brand, t.length, Df, DY, "#pr-header-" + DW, "#pr-header-" + DW, false, i, DX), function() {
  2963.                             B6();
  2964.                         });
  2965.                     }, 0);
  2966.                 }, DX);
  2967.             }, DX);
  2968.         }, DX);
  2969.         r({
  2970.             "type": DZ
  2971.         }, DX);
  2972.     }
  2973.     F.display.getReviewsFromMeta = S;
  2974.     function O(DV, Da, DW, i, DY, Dc, Db) {
  2975.         var DX = "pr-header-" + DV;
  2976.         var DZ = Cr(DV, Dc);
  2977.         if (DW > 0) {
  2978.             Cv(DV, Da, function(Dd) {
  2979.                 if (Dd) {
  2980.                     BG(DX, Cu(DW, i, DZ, Dd, DV, Da, DY, Dc), Db);
  2981.                 }
  2982.             }, Dc);
  2983.         } else {
  2984.             BG(DX, Cu(DW, i, DZ, null, DV, Da, DY, Dc), Db);
  2985.         }
  2986.     }
  2987.     function AU(DV, DX, i, DW) {
  2988.         var DY = "Thank you for your feedback.  Please note that only your first vote will be counted.";
  2989.         if (!A0[DV] || A0[DV] == "undefined") {
  2990.             w(M("pr_js_controller_url", DW) + "?command=helpfulVote&reviewId=" + DV + "&voteType=" + DX);
  2991.             A0[DV] = 1;
  2992.         } else {
  2993.             DY = "You may only submit one vote per review.";
  2994.         }
  2995.         BG("review_feedback" + DV, DY);
  2996.     }
  2997.     F.display.submitHelpfulVote = AU;
  2998.     function e(DW, DV, i, DX) {
  2999.         if (!I[DW] || I[DW] == "undefined") {
  3000.             var DY = document.getElementById("error_div" + DW);
  3001.             DY.innerHTML = BS(DW, DV, i, DX);
  3002.             document.getElementById("error_div" + DW).style.display = "block";
  3003.         } else {
  3004.             BG("review_feedback" + DW, "You have already notified us of an error for this review.");
  3005.         }
  3006.     }
  3007.     F.display.launchErrorDiv = e;
  3008.     function Aq(i) {
  3009.         document.getElementById("error_div" + i).style.display = "none";
  3010.     }
  3011.     function Bo(DV, i, DX) {
  3012.         var DZ = BM("error_radio" + DV);
  3013.         var Db = document.getElementById("error_comments" + DV).value;
  3014.         Db = Db.substring(0, 256);
  3015.         var DW = AR(document.getElementById("error_contact_email" + DV).value);
  3016.         var Da = document.location.href;
  3017.         if (Da && typeof Da != "undefined") {
  3018.             var DY = Da.split("/", 4)[2];
  3019.             Db += "\n[" + DY + "]";
  3020.         }
  3021.         if (!/.+@.+/.test(DW)) {
  3022.             alert("Email Address is required when flagging a review");
  3023.         } else {
  3024.             if (!DZ) {
  3025.                 alert("Please select the reason you are flagging this review");
  3026.             } else {
  3027.                 w(M("pr_js_controller_url", DX) + "?command=helpfulVote&reviewId=" + DV + "&merchantId=" + M("pr_merchant_id", DX) + "&voteType=" + DZ + "&errorComments=" + BI(Db) + "&errorContactEmail=" + BI(DW));
  3028.                 BG("review_feedback" + DV, "Thank you for notifying us of this error.");
  3029.                 A0[DV] = 1;
  3030.                 I[DV] = 1;
  3031.                 Aq(DV);
  3032.             }
  3033.         }
  3034.     }
  3035.     F.display.submitError = Bo;
  3036.     function Ad(i) {
  3037.         Aq(i);
  3038.     }
  3039.     F.display.cancelError = Ad;
  3040.     function Ax(DX, DW) {
  3041.         if (typeof DX == "function" && R(DW)) {
  3042.             var DV = M("pr_page_id", DW);
  3043.             var i = C8(DV);
  3044.             CJ(i, M("pr_locale", DW), function(DY) {
  3045.                 if (DY && DY.reviews) {
  3046.                     DX(new A9(DV,DY.reviews.review_count,0,U(DY.reviews.avg)));
  3047.                 } else {
  3048.                     DX(new A9(DV,0,0,0));
  3049.                 }
  3050.             }, DW);
  3051.         }
  3052.     }
  3053.     F.display.prData = Ax;
  3054.     window.prData = Ax;
  3055.     function CF(i) {
  3056.         BO.push(i);
  3057.     }
  3058.     F.display.registerCallback = CF;
  3059.     window.registerCallback = CF;
  3060.     function AA() {
  3061.         return {
  3062.             "offsetY": document.body.scrollTop || document.documentElement.scrollTop,
  3063.             "viewportWidth": document.getElementsByTagName("body")[0].clientWidth
  3064.         };
  3065.     }
  3066.     function BF(i, DZ, DV, Da, DY) {
  3067.         CD(i);
  3068.         var DX = document.getElementById("pr-modal-" + i);
  3069.         if (DV) {
  3070.             if (DV.ctx && Da) {
  3071.                 switch (DV.ctx) {
  3072.                 case "top":
  3073.                     Da.parentNode.insertBefore(DX, Da);
  3074.                     DX.style.top = "-" + DV.h + "px";
  3075.                     break;
  3076.                 case "bottom":
  3077.                     BB(Da, DX);
  3078.                     break;
  3079.                 case "custom":
  3080.                     Da.parentNode.insertBefore(DX, Da);
  3081.                     if (DV.t && DV.l) {
  3082.                         DX.style.top = DV.t + "px";
  3083.                         DX.style.left = DV.l + "px";
  3084.                     }
  3085.                     break;
  3086.                 }
  3087.             } else {
  3088.                 var DW = AA();
  3089.                 DX.style.left = ((DW.viewportWidth - DV.w) / 2) + "px";
  3090.                 DX.style.top = (DW.offsetY + 100) + "px";
  3091.             }
  3092.             DX.style.width = DV.w + "px";
  3093.             DX.style.height = DV.h + "px";
  3094.         }
  3095.         BG("pr-modal-container-" + i, DZ, function() {
  3096.             DP(DX, "pr-hidden");
  3097.             var Db = document.getElementById("pr-modal-container-" + i);
  3098.             if (DV) {
  3099.                 Db.style.width = (DV.w - 20) + "px";
  3100.                 Db.style.height = (DV.h - 20) + "px";
  3101.             }
  3102.             if (DY) {
  3103.                 DY();
  3104.             }
  3105.         });
  3106.     }
  3107.     function BL(i) {
  3108.         DN(document.getElementById("pr-modal-" + i), "pr-hidden");
  3109.     }
  3110.     F.display.hideModal = BL;
  3111.     function CD(DV) {
  3112.         if (POWERREVIEWS.widget && POWERREVIEWS.widget.instances) {
  3113.             for (var DX = 0; DX < POWERREVIEWS.widget.instances.length; DX++) {
  3114.                 if (POWERREVIEWS.widget.instances[DX]) {
  3115.                     if (POWERREVIEWS.widget.instances[DX].config.widget_type == "profile") {
  3116.                         POWERREVIEWS.widget.instances[DX].closeProfileModal(100);
  3117.                     }
  3118.                 }
  3119.             }
  3120.         }
  3121.         var DY = document.getElementById("pr-modal-" + DV);
  3122.         if (!DY) {
  3123.             DY = document.createElement("div");
  3124.             DY.id = "pr-modal-" + DV;
  3125.             DY.className = "pr-base-modal pr-hidden";
  3126.             DY.innerHTML = CR(DV);
  3127.         }
  3128.         document.getElementsByTagName("body")[0].appendChild(DY);
  3129.         var DW = document.getElementById("pr-modal-container-" + DV);
  3130.         DY.style.height = "auto";
  3131.         DY.style.width = "auto";
  3132.         DY.style.top = 0;
  3133.         DY.style.bottom = 0;
  3134.         DY.style.left = 0;
  3135.         DY.style.right = 0;
  3136.         DW.style.height = "auto";
  3137.         DW.style.width = "auto";
  3138.         DN(DY, "pr-hidden");
  3139.     }
  3140.     function CQ(DW, Da) {
  3141.         CD(DW);
  3142.         var DX = document.getElementById(Da).innerHTML;
  3143.         var DV = document.getElementById("pr-modal-" + DW);
  3144.         var i = C0(document, "div", "pr-review-faceoff-review-wrapper")[0];
  3145.         DV.style.width = (i.scrollWidth - 20) + "px";
  3146.         DV.style.height = (i.offsetHeight + 47) + "px";
  3147.         DV.style.left = (i.offsetLeft + 10) + "px";
  3148.         DV.style.top = (i.offsetTop - 40) + "px";
  3149.         var DY = {
  3150.             w: i.scrollWidth - 20,
  3151.             h: i.offsetHeight + 47,
  3152.             ctx: "custom",
  3153.             t: i.offsetTop - 40,
  3154.             l: i.offsetLeft + 10
  3155.         };
  3156.         var DZ = C0(document, "div", "pr-review-faceoff")[0];
  3157.         BF(DW, DX, DY, DZ);
  3158.     }
  3159.     F.display.displayFaceoffModal = CQ;
  3160.     function Bi(DW, DV, DY, DZ, Da, DX) {
  3161.         DZ = {
  3162.             "w": 545,
  3163.             "h": 275
  3164.         };
  3165.         var i = DY["r"] || false;
  3166.         Bh(DW, DV, i, DZ, Da, DX);
  3167.     }
  3168.     F.display.showFollowProductModalWithHash = Bi;
  3169.     function E(DV, i, DX, DY, DW) {
  3170.         Bh(DV, i, true, DX, DY, DW);
  3171.     }
  3172.     F.display.showFollowProductModal = E;
  3173.     function Bh(DX, DY, Dd, DV, Db, Dc) {
  3174.         var DW = M("pr_page_id", Dc);
  3175.         var Da = "";
  3176.         var DZ = "";
  3177.         var i = function() {
  3178.             var De = AD(DW, DX, Da, DZ, DY, Dc);
  3179.             BF(DX, De, DV, Db, function() {
  3180.                 initFollowControlElements(DX, DY);
  3181.             });
  3182.         };
  3183.         if (Dd) {
  3184.             Cv(DX, DY, function(De) {
  3185.                 if (De) {
  3186.                     Da = De.r;
  3187.                     DZ = De.i;
  3188.                 }
  3189.                 i();
  3190.             }, Dc);
  3191.         } else {
  3192.             i();
  3193.         }
  3194.     }
  3195.     function AQ(DV, i, DX, DY, DW) {
  3196.         DX = {
  3197.             "w": 545,
  3198.             "h": 275
  3199.         };
  3200.         Cv(DV, i, function(Da) {
  3201.             categoryInfo = C3(Da, i, DW);
  3202.             var DZ = By(categoryInfo, i, DW, DV);
  3203.             BF(DV, DZ, DX, DY, function() {
  3204.                 initFollowControlElements(DV, i);
  3205.             });
  3206.         }, DW);
  3207.     }
  3208.     F.display.showFollowProductCategoryModal = AQ;
  3209.     function Ba(Da, DZ) {
  3210.         var DY = document.getElementById(DZ.target);
  3211.         var DX = j.parse(DY.getAttribute("prdata"));
  3212.         DX.keyValue = DZ.keyValue;
  3213.         DY.setAttribute("prdata", j.stringify(DX));
  3214.         var DW = C0(document.getElementById("pr-fb-likebtn-wrapper-" + DZ.locale + "-" + DZ.pageId), "iframe", "pr-fb-likebtn");
  3215.         for (var DV = 0; DV < DW.length; DV++) {
  3216.             DP(DW[DV], "pr-hidden");
  3217.             DN(DW[DV], "pr-hidden");
  3218.         }
  3219.         if (!!document.getElementById(Da)) {
  3220.             DP(document.getElementById(Da), "pr-hidden");
  3221.         }
  3222.     }
  3223.     F.display.toggleFbLikeButton = Ba;
  3224.     function DI(DX, DW) {
  3225.         for (var DV = 0; DV < BO.length; DV++) {
  3226.             BO[DV](DX, DW);
  3227.         }
  3228.     }
  3229.     function Bw(DX) {
  3230.         var DV = {
  3231.             canonicalGroupSet: {},
  3232.             histogramDisplayGroupList: [],
  3233.             subratingsGroupList: [],
  3234.             otherGroupList: []
  3235.         };
  3236.         if (DX) {
  3237.             if (DX.g) {
  3238.                 for (var DW = 0; DW < DX.g.length; DW++) {
  3239.                     var DY = DX.g[DW];
  3240.                     if (DY.k == "pros" || DY.k == "cons" || DY.k == "bestuses") {
  3241.                         DV.canonicalGroupSet[DY.k] = DY;
  3242.                     } else {
  3243.                         if (DY.a) {
  3244.                             DV.histogramDisplayGroupList.push(DY);
  3245.                         } else {
  3246.                             DV.otherGroupList.push(DY);
  3247.                         }
  3248.                     }
  3249.                 }
  3250.             }
  3251.             DV.subratingGroupList = DX.ar || [];
  3252.         }
  3253.         return DV;
  3254.     }
  3255.     function C3(DV, Dh, Dj) {
  3256.         var Dk = [];
  3257.         if (DV && DV.c && DV.c.n && DV.c.c) {
  3258.             var Db = DV.c.n;
  3259.             var Dd = DV.c.c;
  3260.             var Dc = ":";
  3261.             var DZ = new RegExp(Dc + "$");
  3262.             var Df = Db.replace(DZ, "").split(Dc);
  3263.             var i = Dd.replace(DZ, "").split(Dc);
  3264.             if (Df.length == i.length) {
  3265.                 var Da = Df.length;
  3266.                 var Di = Math.min(Da, 3);
  3267.                 var DX = Da - Di;
  3268.                 for (var De = DX; De < Da; De++) {
  3269.                     var Dg = Df[De];
  3270.                     var DY = i.slice(0, De + 1).join(Dc) + Dc;
  3271.                     var DW = AP(DY, Dh, Dj);
  3272.                     Dk.push({
  3273.                         "label": Dg,
  3274.                         "url": DW,
  3275.                         "code": DY
  3276.                     });
  3277.                 }
  3278.             }
  3279.         }
  3280.         return Dk;
  3281.     }
  3282.     function CW(DX, i, DW) {
  3283.         var DV = C3(DX, i, DW);
  3284.         return DV.length > 0;
  3285.     }
  3286.     function At(DW, i, DV) {
  3287.         var DX = Av(DV);
  3288.         var DY = BI(M("pr_site_id", DV) || "-");
  3289.         return DX + "product/" + i + "/" + M("pr_merchant_group_id", DV) + "/" + DY + "/" + BI(DW);
  3290.     }
  3291.     function AP(DY, i, DV) {
  3292.         var DW = Av(DV);
  3293.         var DX = BI(M("pr_site_id", DV) || "-");
  3294.         return DW + "productCategory/" + i + "/" + M("pr_merchant_group_id", DV) + "/" + DX + "/" + AO(DY);
  3295.     }
  3296.     function Cu(i, Dc, DV, Dr, Dh, Dp, Du, DX) {
  3297.         var De = [];
  3298.         var Do = b(DX);
  3299.         var Dq = {
  3300.             describeyourself: "Reviewer Profile"
  3301.         };
  3302.         var Dm = Bw(Dr);
  3303.         var Dd = Dm.canonicalGroupSet;
  3304.         var Dk = Dm.histogramDisplayGroupList;
  3305.         var DZ = Dm.subratingGroupList;
  3306.         var Da = Dm.otherGroupList;
  3307.         var Dg = 0;
  3308.         for (CL = 0; CL < Dc.length; CL++) {
  3309.             Dg = (Dc[CL] + Dg);
  3310.         }
  3311.         var DY = M("pr_locale_transitions", DX);
  3312.         var Dj = "All";
  3313.         var Dt = (i == 1) ? "based on {0} review" : "based on {0} reviews";
  3314.         var Dw = "count";
  3315.         De.push('<div class="pr-snapshot">');
  3316.         if (i > 0) {
  3317.             De.push('<div class="pr-review-social-bar pr-fb-needs-merchant" style="display:none;"><div class="pr-clear"></div></div>');
  3318.         }
  3319.         De.push('<a name="ReviewHeader"></a><div class="pr-snapshot-head"><div class="pr-snapshot-head-wrapper pr-float-left"><p class="pr-snapshot-title">');
  3320.         De.push("REVIEW SNAPSHOT&reg;");
  3321.         De.push("</p>");
  3322.         if (Q(DX).cobranded) {
  3323.             De.push('<a href="#" class="pr-snapshot-cobrand" data-pr-event="snapshot-cobrand-link-pre" onclick="POWERREVIEWS.common.showSmallPopup(\'');
  3324.             De.push("http://www.powerreviews.com/legal/index_en_US.html");
  3325.             De.push("', 410, 420); return false;\">");
  3326.             De.push("by PowerReviews");
  3327.             De.push("</a>");
  3328.         }
  3329.         De.push("</div>");
  3330.         var Di = DY[Dp];
  3331.         if (Di && DV && DV[Di] && BC && BC[Di] && BC[Di][Dp]) {
  3332.             var Ds = DV[Di];
  3333.             var Dn = BC[Di][Dp];
  3334.             De.push('<div class="pr-snapshot-change-locale-wrapper"><a href="javascript:;" class="pr-snapshot-change-locale" onclick="POWERREVIEWS.display.displayInitialReviewBoxWrapper(\'');
  3335.             De.push(Dh);
  3336.             De.push("', '");
  3337.             De.push(Di);
  3338.             De.push("', '");
  3339.             De.push(Du);
  3340.             De.push("', POWERREVIEWS.common.getOptions('");
  3341.             De.push(Du);
  3342.             De.push("'));\">");
  3343.             if (Ds == 1) {
  3344.                 De.push(("Show {0} {1} review" || "").replace("{0}", Ds).replace("{1}", Dn));
  3345.             } else {
  3346.                 De.push(("Show {0} {1} reviews" || "").replace("{0}", Ds).replace("{1}", Dn));
  3347.             }
  3348.             De.push("</a></div>");
  3349.         }
  3350.         De.push('<div class="pr-clear"></div></div><div class="pr-snapshot-body">');
  3351.         if (i > 0) {
  3352.             De.push('<div class="pr-snapshot-body-wrapper"><div class="pr-snapshot-rating-wrapper hreview-aggregate">');
  3353.             if (Dr.r) {
  3354.                 De.push('<div class="pr-snapshot-product-name item">');
  3355.                 if (Dr.br) {
  3356.                     De.push('<span class="pr-brand">');
  3357.                     De.push(Dr.br);
  3358.                     De.push("</span>");
  3359.                 }
  3360.                 De.push('<span class="fn">');
  3361.                 De.push(Dr.r);
  3362.                 De.push("</span></div>");
  3363.             }
  3364.             De.push('<div class="pr-snapshot-rating rating"><div class="pr-stars ');
  3365.             De.push(BP[Dr.a].large);
  3366.             De.push('" style="background-position: 0px ');
  3367.             De.push(Dr.a * -46);
  3368.             De.push('px;">&nbsp;</div><span class="pr-rating pr-rounded average">');
  3369.             De.push((Dr.d * 10) % 10 == 0 ? Dr.d + ".0" : Dr.d);
  3370.             De.push('</span><p class="pr-snapshot-average-based-on-text">(');
  3371.             De.push((Dt || "").replace("{0}", '<span  class="' + Dw + '">' + i + "</span>"));
  3372.             De.push(")</p>");
  3373.             if (Dg > 0) {
  3374.                 De.push("<div id=\"pr-snapshot-histogram\"><a tabindex=\"0\" data-pr-event=\"snapshot-histogram-link\" href=\"#\" id=\"pr-snapshot-histogram-lnk\" onclick=\"return false\" onmouseover=\"POWERREVIEWS.common.togglePopOut({'target':'pr-snapshot-histogram-container'},'show', this, event)\" onmouseout=\"POWERREVIEWS.common.togglePopOut({'link':'pr-snapshot-histogram-lnk','target':'pr-snapshot-histogram-container'},'hide', this, event)\" onfocus=\"POWERREVIEWS.common.togglePopOut({'target':'pr-snapshot-histogram-container'},'show', this, event)\" onblur=\"POWERREVIEWS.common.togglePopOut({'link':'pr-snapshot-histogram-lnk','target':'pr-snapshot-histogram-container'},'hide', this, event)\"><img id=\"pr-snapshot-histogram-lnk-img\" src=\"");
  3375.                 De.push(Do);
  3376.                 De.push("/engine/images/icon_popout.gif\" onclick=\"return false\" onmouseover=\"POWERREVIEWS.common.togglePopOut({'target':'pr-snapshot-histogram-container'},'show', this, event)\" onmouseout=\"POWERREVIEWS.common.togglePopOut({'link':'pr-snapshot-histogram-lnk-img','target':'pr-snapshot-histogram-container'},'hide', this, event)\"/></a><div id=\"pr-snapshot-histogram-wrapper\"><div id=\"pr-snapshot-histogram-container\" class=\"pr-closed\" onmouseover=\"POWERREVIEWS.common.togglePopOut({'target':'pr-snapshot-histogram-container'},'show', this, event)\" onmouseout=\"POWERREVIEWS.common.togglePopOut({'link':'pr-snapshot-histogram-lnk','target':'pr-snapshot-histogram-container'},'hide', this, event)\"><p id=\"pr-snapshot-histogram-header\"><span>");
  3377.                 De.push("Ratings Distribution");
  3378.                 De.push("</span></p>");
  3379.                 De.push(AJ(Dc, Dp, Du, DX, false));
  3380.                 De.push("</div></div></div>");
  3381.             }
  3382.             De.push('</div><div class="pr-clear"></div>');
  3383.             if (Dr.b || Dr.b == 0) {
  3384.                 De.push('<div class="pr-snapshot-consensus"><p class="pr-snapshot-consensus-value pr-rounded">');
  3385.                 De.push(Math.round(100 * Dr.b));
  3386.                 De.push('%</p> <p class="pr-snapshot-consensus-text">');
  3387.                 De.push("of respondents would recommend this to a friend.");
  3388.                 De.push("</p></div>");
  3389.             }
  3390.             De.push("</div>");
  3391.             if (Dd.pros || Dd.cons || Dd.bestuses || Dk.length || DZ.length || Da.length) {
  3392.                 De.push('<div class="pr-review-points"><div class="pr-review-points-attr-wrapper"><div class="pr-attribute-group pr-rounded pr-attribute-ratings" style="display:none"><div class="pr-attribute-key" onclick="POWERREVIEWS.display.collapseReviewPointsPanel(this)"><div class="pr-attribute-label pr-attribute-label-rating"><p class="pr-attribute-label-text">');
  3393.                 De.push("Ratings Distribution");
  3394.                 De.push('</p><div class="pr-attribute-collapse"></div><div class="pr-clear"></div></div></div><div class="pr-attribute-value" style="padding:15px;">');
  3395.                 De.push(AJ(Dc, Dp, Du, DX, true));
  3396.                 De.push('</div></div><div class="pr-attribute-group pr-rounded pr-attribute-pros');
  3397.                 De.push(Dd.pros ? "" : " pr-empty");
  3398.                 De.push('"><div class="pr-attribute-key" onclick="POWERREVIEWS.display.collapseReviewPointsPanel(this)"><div class="pr-attribute-label pr-attribute-label-pros"><p class="pr-attribute-label-text">');
  3399.                 De.push("Pros");
  3400.                 De.push('</p><div class="pr-attribute-collapse"></div><div class="pr-clear"></div></div></div><div class="pr-attribute-value">');
  3401.                 if (!!Dd.pros && Dd.pros.v.length > 0) {
  3402.                     De.push('<ul class="pr-attribute-value-list pr-snapshot-attribute-value-list">');
  3403.                     var Db = Dd.pros;
  3404.                     if (Db) {
  3405.                         for (var Df = 0; Df < Db.v.length; Df++) {
  3406.                             var Dl = Db.v[Df];
  3407.                             De.push("<li>");
  3408.                             De.push(Dl.n);
  3409.                             De.push("&nbsp;(");
  3410.                             De.push(Dl.c);
  3411.                             De.push(")</li>");
  3412.                         }
  3413.                     }
  3414.                     De.push("</ul>");
  3415.                 } else {
  3416.                     De.push("<div class='pr-attribute-value-list-empty'>");
  3417.                     De.push("No");
  3418.                     De.push(" ");
  3419.                     De.push("Pros");
  3420.                     De.push("</div>");
  3421.                 }
  3422.                 De.push('</div></div><div class="pr-attribute-group pr-rounded pr-attribute-cons');
  3423.                 De.push(Dd.cons ? "" : " pr-empty");
  3424.                 De.push('"><div class="pr-attribute-key" onclick="POWERREVIEWS.display.collapseReviewPointsPanel(this)"><div class="pr-attribute-label pr-attribute-label-cons"><p class="pr-attribute-label-text">');
  3425.                 De.push("Cons");
  3426.                 De.push('</p><div class="pr-attribute-collapse"></div><div class="pr-clear"></div></div></div><div class="pr-attribute-value">');
  3427.                 if (!!Dd.cons && Dd.cons.v.length > 0) {
  3428.                     De.push('<ul class="pr-attribute-value-list pr-snapshot-attribute-value-list">');
  3429.                     var Db = Dd.cons;
  3430.                     if (Db) {
  3431.                         for (var Df = 0; Df < Db.v.length; Df++) {
  3432.                             var Dl = Db.v[Df];
  3433.                             De.push("<li>");
  3434.                             De.push(Dl.n);
  3435.                             De.push("&nbsp;(");
  3436.                             De.push(Dl.c);
  3437.                             De.push(")</li>");
  3438.                         }
  3439.                     }
  3440.                     De.push("</ul>");
  3441.                 } else {
  3442.                     De.push("<div class='pr-attribute-value-list-empty'>");
  3443.                     De.push("No");
  3444.                     De.push(" ");
  3445.                     De.push("Cons");
  3446.                     De.push("</div>");
  3447.                 }
  3448.                 De.push('</div></div><div class="pr-attribute-group pr-rounded pr-attribute-bestuses');
  3449.                 De.push(Dd.bestuses ? "" : " pr-empty");
  3450.                 De.push(' pr-last"><div class="pr-attribute-key" onclick="POWERREVIEWS.display.collapseReviewPointsPanel(this)"><div class="pr-attribute-label pr-attribute-label-bestuses"><p class="pr-attribute-label-text">');
  3451.                 De.push("Best Uses");
  3452.                 De.push('</p><div class="pr-attribute-collapse"></div><div class="pr-clear"></div></div></div><div class="pr-attribute-value">');
  3453.                 if (!!Dd.bestuses && Dd.bestuses.v.length > 0) {
  3454.                     De.push('<ul class="pr-attribute-value-list pr-snapshot-attribute-value-list">');
  3455.                     var Db = Dd.bestuses;
  3456.                     if (Db) {
  3457.                         for (var Df = 0; Df < Db.v.length; Df++) {
  3458.                             var Dl = Db.v[Df];
  3459.                             De.push("<li>");
  3460.                             De.push(Dl.n);
  3461.                             De.push("&nbsp;(");
  3462.                             De.push(Dl.c);
  3463.                             De.push(")</li>");
  3464.                         }
  3465.                     }
  3466.                     De.push("</ul>");
  3467.                 } else {
  3468.                     De.push("<div class='pr-attribute-value-list-empty'>");
  3469.                     De.push("No");
  3470.                     De.push(" ");
  3471.                     De.push("Best Uses");
  3472.                     De.push("</div>");
  3473.                 }
  3474.                 De.push('</div></div><div class="pr-clear"></div></div></div>');
  3475.                 if (Dk.length) {
  3476.                     De.push(AT(Dk, Dp, DX));
  3477.                 }
  3478.                 if (DZ.length) {
  3479.                     De.push(Co(DZ, Dp, DX));
  3480.                 }
  3481.                 De.push('<div class="pr-other-attributes"><ul class="pr-other-attributes-list">');
  3482.                 for (var Dv = 0; Dv < Da.length; Dv++) {
  3483.                     var Db = Da[Dv];
  3484.                     var DW = [];
  3485.                     for (var Df = 0; Df < Db.v.length; Df++) {
  3486.                         var Dl = Db.v[Df];
  3487.                         DW.push(Dl.n + "&nbsp;(" + Dl.c + ")");
  3488.                     }
  3489.                     De.push('<li class="pr-other-attributes-group pr-other-attribute-');
  3490.                     De.push(Db.k);
  3491.                     De.push('"><ul><li class="pr-other-attribute-label">');
  3492.                     De.push(Dq[Db.k] || Db.n);
  3493.                     De.push(':</li><li class="pr-other-attribute-value">');
  3494.                     De.push(DW.join(", "));
  3495.                     De.push("</li></ul></li>");
  3496.                 }
  3497.                 De.push('<li class="pr-clear"></li></ul></div>');
  3498.             }
  3499.             De.push('<div id="pr-snapshot-footer-');
  3500.             De.push(Dh);
  3501.             De.push('" class="pr-snapshot-footer" style="display:none"><a href="#" id="write-review-');
  3502.             De.push(Dh);
  3503.             De.push('" class="pr-write-review-link" data-pr-event="snapshot-write-review"><div class="pr-snapshot-write-review"><span>');
  3504.             De.push("Write a Review");
  3505.             De.push("</span></div></a>");
  3506.             if (a && a["review"]) {
  3507.                 De.push('<div class="pr-snapshot-write-review-social-loyalty">');
  3508.                 De.push("Share your opinion, earn points");
  3509.                 De.push("</div>");
  3510.             }
  3511.             De.push('<div class="pr-clear"></div></div>');
  3512.         } else {
  3513.             De.push('<div class="pr-snapshot-body-wrapper"><div id="pr-snapshot-footer-');
  3514.             De.push(Dh);
  3515.             De.push('" class="pr-snapshot-footer" style="display:none">                    <p class="pr-snapshot-no-ratings">');
  3516.             De.push("Not yet rated. Be the first to");
  3517.             De.push(' <a href="#" id="write-review-');
  3518.             De.push(Dh);
  3519.             De.push('" data-pr-event="snapshot-write-review" class="pr-write-review-link">');
  3520.             De.push("Write a Review");
  3521.             De.push("</a>");
  3522.             if (a && a["first_review"]) {
  3523.                 De.push("&nbsp;");
  3524.                 De.push("(earn bonus points)");
  3525.             }
  3526.             De.push('</p><div class="pr-clear"></div></div>');
  3527.         }
  3528.         De.push("</div></div>");
  3529.         if (Dr && Dr.fo && false) {
  3530.             De.push('<div id="pr-review-faceoff-');
  3531.             De.push(Dh);
  3532.             De.push('"  class="pr-review-faceoff"><div class="pr-review-faceoff-review-wrapper"><div id="pr-review-faceoff-positive-');
  3533.             De.push(Dh);
  3534.             De.push('" class="pr-review-faceoff-review pr-review-faceoff-review-positive"><div class="pr-review-faceoff-container"><p class="pr-review-faceoff-label">');
  3535.             De.push("Most Liked Positive Review");
  3536.             De.push('</p><div class="pr-review-faceoff-review-content"><div class="pr-stars ');
  3537.             De.push(BP[Dr.fo.f2.r.r].large);
  3538.             De.push('" style="background-position: 0px ');
  3539.             De.push(Dr.fo.f2.r.r * -46);
  3540.             De.push('px;">&nbsp;</div><p class="pr-review-faceoff-title">');
  3541.             De.push(Dr.fo.f2.r.h);
  3542.             De.push('</p><p class="pr-review-faceoff-review">');
  3543.             if (Dr.fo.f2.cf) {
  3544.                 if (Dr.fo.f2.r.l == "jp_JP") {
  3545.                     De.push(AC(Dr.fo.f2.r.p, 0, Dr.fo.f2.cf, true));
  3546.                 } else {
  3547.                     De.push(AV(Dr.fo.f2.r.p, 0, Dr.fo.f2.cf, true));
  3548.                 }
  3549.                 De.push('<a data-pr-event="faceoff-positive-link" class="pr-review-faceoff-readcomplete" href="#" onclick="POWERREVIEWS.display.displayFaceoffModal(\'');
  3550.                 De.push(Dh);
  3551.                 De.push("','pr-review-faceoff-positive-");
  3552.                 De.push(Dh);
  3553.                 De.push("'); return false\">");
  3554.                 De.push("Read complete review");
  3555.                 De.push("</a>");
  3556.             } else {
  3557.                 De.push(Dr.fo.f2.r.p);
  3558.             }
  3559.             De.push('</p><p class="pr-review-faceoff-review-full">');
  3560.             De.push(Dr.fo.f2.r.p);
  3561.             De.push('</p></div></div></div><div class="pr-review-faceoff-img"><p class="pr-review-faceoff-img-txt">');
  3562.             De.push("VS");
  3563.             De.push('</p></div><div id="pr-review-faceoff-negative-');
  3564.             De.push(Dh);
  3565.             De.push('" class="pr-review-faceoff-review pr-review-faceoff-review-negative"><div class="pr-review-faceoff-container"><p class="pr-review-faceoff-label">');
  3566.             De.push("Most Liked Negative Review");
  3567.             De.push('</p><div class="pr-review-faceoff-review-content"><div class="pr-stars ');
  3568.             De.push(BP[Dr.fo.f1.r.r].large);
  3569.             De.push('" style="background-position: 0px ');
  3570.             De.push(Dr.fo.f1.r.r * -46);
  3571.             De.push('px;">&nbsp;</div><p class="pr-review-faceoff-title">');
  3572.             De.push(Dr.fo.f1.r.h);
  3573.             De.push('</p><p class="pr-review-faceoff-review">');
  3574.             if (Dr.fo.f1.cf) {
  3575.                 if (Dr.fo.f1.r.l == "jp_JP") {
  3576.                     De.push(AC(Dr.fo.f1.r.p, 0, Dr.fo.f1.cf, true));
  3577.                 } else {
  3578.                     De.push(AV(Dr.fo.f1.r.p, 0, Dr.fo.f1.cf, true));
  3579.                 }
  3580.                 De.push('<a data-pr-event="faceoff-negative-link" class="pr-review-faceoff-readcomplete" href="#" onclick="POWERREVIEWS.display.displayFaceoffModal(\'');
  3581.                 De.push(Dh);
  3582.                 De.push("','pr-review-faceoff-negative-");
  3583.                 De.push(Dh);
  3584.                 De.push("'); return false\">");
  3585.                 De.push("Read complete review");
  3586.                 De.push("</a>");
  3587.             } else {
  3588.                 De.push(Dr.fo.f1.r.p);
  3589.             }
  3590.             De.push('</p><p class="pr-review-faceoff-review-full">');
  3591.             De.push(Dr.fo.f1.r.p);
  3592.             De.push('</p></div></div></div><div class="pr-clear"></div></div></div>');
  3593.         }
  3594.         De.push("</div>");
  3595.         if (i > 0) {
  3596.             De.push('<div id="pr-review-sort" class="pr-review-sort"><div class="pr-review-sort-wrapper"><p id="pr-review-filtered-count" class="pr-review-count" style="display:none"></p>');
  3597.             if (i == 1) {
  3598.                 De.push('<p id="pr-review-count" class="pr-review-count">');
  3599.                 De.push("Reviewed by 1 customer");
  3600.                 De.push("</p>");
  3601.             } else {
  3602.                 if (i > 1) {
  3603.                     De.push('<p id="pr-review-count" class="pr-review-count">');
  3604.                     De.push(("Reviewed by {0} customers" || "").replace("{0}", i));
  3605.                     De.push('</p><div class="pr-review-sort-box"><label for="pr-sort-reviews" class="pr-review-sort-by">');
  3606.                     De.push("Sort by");
  3607.                     De.push('</label><select id="pr-sort-reviews" onchange="POWERREVIEWS.display.startSort(this, \'');
  3608.                     De.push(Dh);
  3609.                     De.push("', '");
  3610.                     De.push(Dp);
  3611.                     De.push("', '");
  3612.                     De.push(Du);
  3613.                     De.push("', POWERREVIEWS.common.getOptions('");
  3614.                     De.push(Du);
  3615.                     De.push('\'));"><option value="date_new" selected="true">');
  3616.                     De.push("Newest");
  3617.                     De.push('</option><option value="date_old">');
  3618.                     De.push("Oldest");
  3619.                     De.push('</option><option value="rating_high">');
  3620.                     De.push("Highest rating");
  3621.                     De.push('</option><option value="rating_low">');
  3622.                     De.push("Lowest rating");
  3623.                     De.push('</option><option value="helpful_high">');
  3624.                     De.push("Most helpful");
  3625.                     De.push('</option><option value="helpful_low">');
  3626.                     De.push("Least helpful");
  3627.                     De.push("</option></select></div>");
  3628.                 }
  3629.             }
  3630.             De.push('<div class="pr-clear"></div></div></div>');
  3631.         }
  3632.         De.push('<!-- ilkj --><div id="pr-filters" class="pr-filters" style="display:none"><div class="pr-filters-wrapper"><div id="pr-filters-active" class="pr-filters-active"></div><div class="pr-filter-clear"><div class="pr-filter-label"><a href="#" onclick="POWERREVIEWS.display.clearFilters(null,  \'');
  3633.         De.push(Du);
  3634.         De.push("', POWERREVIEWS.common.getOptions('");
  3635.         De.push(Du);
  3636.         De.push('\')); return false;">Clear all filters</a></div></div><div class="pr-clear"></div></div></div>');
  3637.         return De.join("");
  3638.     }
  3639.     F.display.processRollupTemplate = Cu;
  3640.     function Be(Ds, EJ, Do, Dv, D9, Dr, Du, DY, Db, Dx, DV, EC, Dy, Dt) {
  3641.         var Dj = [];
  3642.         var Dm = (Db - 1) * DY;
  3643.         var DZ = Dm + DY - 1;
  3644.         if (DZ > Du - 1) {
  3645.             DZ = Du - 1;
  3646.         }
  3647.         var EK = M("pr_back_to_top_link", Dt);
  3648.         var EB = b(Dt);
  3649.         var EI = AS(M("pr_badge_definitions_url", Dt), "~~~LOCALE~~~", Do);
  3650.         var Dl = ["Got it? Rate it.", "Not good", "Needs that special something", "Average, ordinary", "That's good stuff", "Perfect. It doesn't get any better"];
  3651.         var Dw = {
  3652.             "Yes": "Yes, I would recommend this to a friend",
  3653.             "No": "No, I would not recommend this to a friend"
  3654.         };
  3655.         var D5 = "All";
  3656.         Dj.push('<div class="pr-contents-wrapper">');
  3657.         if (!EC) {
  3658.             Dj.push('<div class="pr-pagination-top"><div class="pr-page-count-wrapper"><p class="pr-page-count">');
  3659.             if (Dm == DZ) {
  3660.                 Dj.push("Displaying review");
  3661.                 Dj.push(" <strong>");
  3662.                 Dj.push((Dm + 1));
  3663.                 Dj.push("</strong>");
  3664.             } else {
  3665.                 Dj.push("Displaying reviews");
  3666.                 Dj.push(" <strong>");
  3667.                 Dj.push((Dm + 1) + "-" + (DZ + 1));
  3668.                 Dj.push("</strong>");
  3669.             }
  3670.             Dj.push('</p><p class="pr-nav-back-to-top"><a href="');
  3671.             Dj.push(EK);
  3672.             Dj.push('" name="pr-header-back-to-top-link" data-pr-event="header-back-to-top-link">');
  3673.             Dj.push("Back to top");
  3674.             Dj.push("</a></p></div>");
  3675.             if (Du > DY) {
  3676.                 Dj.push('<div class="pr-page-nav-wrapper"><p class="pr-page-nav"><span class="pr-page-prev">');
  3677.                 if (Dm > 0) {
  3678.                     Dj.push('<a data-pr-event="header-page-prev-link" onclick="POWERREVIEWS.display.getReviewsFromMeta(');
  3679.                     Dj.push(Db - 1);
  3680.                     Dj.push(", '");
  3681.                     Dj.push(EJ);
  3682.                     Dj.push("', '");
  3683.                     Dj.push(Do);
  3684.                     Dj.push("', '");
  3685.                     Dj.push(Dy);
  3686.                     Dj.push("', POWERREVIEWS.common.getOptions('");
  3687.                     Dj.push(Dy);
  3688.                     Dj.push('\')); return false;" href="');
  3689.                     Dj.push(Dx.replace("~~~REVIEW_PAGE~~~", Db - 1));
  3690.                     Dj.push('">&laquo; ');
  3691.                     Dj.push("Previous");
  3692.                     Dj.push("</a>");
  3693.                 } else {
  3694.                     Dj.push("Previous");
  3695.                 }
  3696.                 Dj.push('</span><span class="pr-divider"> | </span><span class="pr-page-next">');
  3697.                 if (DZ < Du - 1) {
  3698.                     Dj.push('<a data-pr-event="header-page-next-link" onclick="POWERREVIEWS.display.getReviewsFromMeta(');
  3699.                     Dj.push(Db + 1);
  3700.                     Dj.push(", '");
  3701.                     Dj.push(EJ);
  3702.                     Dj.push("', '");
  3703.                     Dj.push(Do);
  3704.                     Dj.push("', '");
  3705.                     Dj.push(Dy);
  3706.                     Dj.push("', POWERREVIEWS.common.getOptions('");
  3707.                     Dj.push(Dy);
  3708.                     Dj.push('\')); return false;" href="');
  3709.                     Dj.push(DV.replace("~~~REVIEW_PAGE~~~", Db + 1));
  3710.                     Dj.push('">');
  3711.                     Dj.push("Next");
  3712.                     Dj.push(" &raquo;</a>");
  3713.                 } else {
  3714.                     Dj.push("Next");
  3715.                 }
  3716.                 Dj.push("</span></p></div>");
  3717.             }
  3718.             Dj.push('<div class="pr-clear"></div></div>');
  3719.         }
  3720.         for (var Dz = 0; Dz < Ds.length; Dz++) {
  3721.             var Dc = Ds[Dz];
  3722.             var ED = {};
  3723.             var D2 = false;
  3724.             if (Dc.g) {
  3725.                 for (var EG = 0; EG < Dc.g.length; EG++) {
  3726.                     var Dh = Dc.g[EG].k;
  3727.                     ED[Dh] = true;
  3728.                     D2 = D2 || (Dh != "pros" && Dh != "cons" && Dh != "bestuses" && Dh != "describeyourself");
  3729.                 }
  3730.             }
  3731.             Dj.push('<div class="pr-review-wrap" data-review-id="');
  3732.             Dj.push(Dc.id);
  3733.             Dj.push('"><div class="pr-review-rating-wrapper"><div class="pr-review-author-date pr-rounded">');
  3734.             Dj.push((AL(Dc.db, Do, Dt) || Dc.d));
  3735.             Dj.push("</div>");
  3736.             if (Dc.t > 0) {
  3737.                 Dj.push('<div class="pr-review-most-helpful"><p>(<span>');
  3738.                 Dj.push(("{0} of {1}" || "").replace("{0}", Dc.v).replace("{1}", Dc.t));
  3739.                 Dj.push("</span> ");
  3740.                 Dj.push("customers found this review helpful");
  3741.                 Dj.push(")</p></div>");
  3742.             }
  3743.             Dj.push('<div class="pr-review-rating"><div class="pr-stars pr-stars-small ');
  3744.             Dj.push(BP[Dc.r].small);
  3745.             Dj.push('" style="background-position: 0px ');
  3746.             Dj.push(Dc.r * -36);
  3747.             Dj.push('px;" title="');
  3748.             Dj.push(Dl[Dc.r]);
  3749.             Dj.push('">&nbsp;</div><span class="pr-rating pr-rounded">');
  3750.             Dj.push(Dc.r);
  3751.             Dj.push('.0</span><p class="pr-review-rating-headline">');
  3752.             Dj.push(Dc.h);
  3753.             Dj.push("</p></div></div>");
  3754.             if (!EC) {
  3755.                 Dj.push('                  <div class="pr-review-author"><div class="pr-review-author-info-wrapper">');
  3756.                 if (Dc.fu && (false)) {
  3757.                     if (Dc.pi) {
  3758.                         Dj.push("<p>");
  3759.                         var Dq = M("pr_see_all_reviews_url", Dt).replace("~~~MERCHANT_USER_ID~~~", Dc.mu).replace("~~~NICKNAME~~~", Dc.n);
  3760.                         if (Dq) {
  3761.                             Dj.push('<a class="pr-review-author-profile-link" href="');
  3762.                             Dj.push(Dq);
  3763.                             Dj.push('" data-pr-event="review-author-image-link"><img alt="Profile Image" src="https://graph.facebook.com/');
  3764.                             Dj.push(Dc.fu);
  3765.                             Dj.push('/picture" /></a>');
  3766.                         } else {
  3767.                             if (false) {
  3768.                                 Dj.push('<a class="prReviewAuthorProfileLnk" data-pr-event="review-author-image-link" href="#" onclick="POWERREVIEWS.display.showIntegratedProfile(');
  3769.                                 Dj.push(Dc.pi);
  3770.                                 Dj.push(", '");
  3771.                                 Dj.push(Do);
  3772.                                 Dj.push("', POWERREVIEWS.common.getOptions('");
  3773.                                 Dj.push(Dy);
  3774.                                 Dj.push('\')); return false;"><img alt="Profile Image" src="https://graph.facebook.com/');
  3775.                                 Dj.push(Dc.fu);
  3776.                                 Dj.push('/picture" /></a>');
  3777.                             } else {
  3778.                                 Dj.push('<a class="pr-review-author-profile-link" href="#" onclick="POWERREVIEWS.display.showProfileWithHash(\'');
  3779.                                 Dj.push(Dc.pi);
  3780.                                 Dj.push("', '");
  3781.                                 Dj.push(EJ);
  3782.                                 Dj.push("', {'badges':[");
  3783.                                 Dj.push((Dc.cb || []).toString());
  3784.                                 Dj.push("]}, '");
  3785.                                 Dj.push(Do);
  3786.                                 Dj.push("', POWERREVIEWS.common.getOptions('");
  3787.                                 Dj.push(Dy);
  3788.                                 Dj.push('\')); return false;" data-pr-event="review-author-image-link"><img alt="Profile Image" src="https://graph.facebook.com/');
  3789.                                 Dj.push(Dc.fu);
  3790.                                 Dj.push('/picture" /></a>');
  3791.                             }
  3792.                         }
  3793.                         Dj.push("</p>");
  3794.                     } else {
  3795.                         var Dg = z({
  3796.                             "locale": Do,
  3797.                             "sharedReviewId": Dc.id
  3798.                         }, Dt);
  3799.                         Dj.push('<a href="#" onclick="POWERREVIEWS.common.showSmallPopup(\'');
  3800.                         Dj.push(Dg);
  3801.                         Dj.push("', 425, 600, {'location':'no'}); return false;\"><img alt=\"Profile Image\" src=\"https://graph.facebook.com/");
  3802.                         Dj.push(Dc.fu);
  3803.                         Dj.push('/picture" /></a>');
  3804.                     }
  3805.                 }
  3806.                 Dj.push('<p class="pr-review-author-name">');
  3807.                 Dj.push("By");
  3808.                 Dj.push("&nbsp;");
  3809.                 if (false && Dc.pi) {
  3810.                     Dj.push('<a class="prReviewAuthorProfileLnk" data-pr-event="review-author-profile-link" href="#" onclick="POWERREVIEWS.display.showIntegratedProfile(');
  3811.                     Dj.push(Dc.pi);
  3812.                     Dj.push(", '");
  3813.                     Dj.push(Do);
  3814.                     Dj.push("', POWERREVIEWS.common.getOptions('");
  3815.                     Dj.push(Dy);
  3816.                     Dj.push("')); return false;\"><span>");
  3817.                     Dj.push(Dc.n);
  3818.                     Dj.push("</span></a>");
  3819.                 } else {
  3820.                     Dj.push("<span>");
  3821.                     Dj.push(Dc.n);
  3822.                     Dj.push("</span>");
  3823.                 }
  3824.                 Dj.push('</p><p class="pr-review-author-location">');
  3825.                 Dj.push("from");
  3826.                 Dj.push(" <span>");
  3827.                 Dj.push(Dc.w);
  3828.                 Dj.push("</span></p>");
  3829.                 if (Dc.g) {
  3830.                     for (var DW = 0; DW < Dc.g.length; DW++) {
  3831.                         var Dk = Dc.g[DW];
  3832.                         if (Dk.k == "describeyourself") {
  3833.                             Dj.push('<div class="pr-review-author-affinity-wrapper"><p class="pr-review-author-affinities">');
  3834.                             Dj.push("About Me" || Dk.n);
  3835.                             Dj.push(" <span>");
  3836.                             Dj.push(Dk.v.join(", "));
  3837.                             Dj.push("</span></p></div>");
  3838.                         }
  3839.                     }
  3840.                 }
  3841.                 if (Dc.pi && !Dc.dp) {
  3842.                     var Dq = M("pr_see_all_reviews_url", Dt).replace("~~~MERCHANT_USER_ID~~~", Dc.mu).replace("~~~NICKNAME~~~", Dc.n);
  3843.                     if (Dq) {
  3844.                         Dj.push('<p><a class="pr-review-author-profile-link" href="');
  3845.                         Dj.push(Dq);
  3846.                         Dj.push('" data-pr-event="review-author-profile-link">');
  3847.                         Dj.push("See all my reviews");
  3848.                         Dj.push("</a></p>");
  3849.                     } else {
  3850.                         if (!false) {
  3851.                             Dj.push('<p><a class="pr-review-author-profile-link" href="#" onclick="POWERREVIEWS.display.showProfileWithHash(\'');
  3852.                             Dj.push(Dc.pi);
  3853.                             Dj.push("', '");
  3854.                             Dj.push(EJ);
  3855.                             Dj.push("', {'badges':[");
  3856.                             Dj.push((Dc.cb || []).toString());
  3857.                             Dj.push("]}, '");
  3858.                             Dj.push(Do);
  3859.                             Dj.push("', POWERREVIEWS.common.getOptions('");
  3860.                             Dj.push(Dy);
  3861.                             Dj.push('\')); return false;" data-pr-event="review-author-profile-link">');
  3862.                             Dj.push("See all my reviews");
  3863.                             Dj.push("</a></p>");
  3864.                         }
  3865.                     }
  3866.                     Dj.push("                            ");
  3867.                 }
  3868.                 Dj.push("</div>");
  3869.                 var D3 = DA(Dc.cb);
  3870.                 var EE = (Dc.o && Dc.o == "e");
  3871.                 var De = Dc.m;
  3872.                 var D4 = (Dc.c && Dc.c == "v");
  3873.                 if (EE || D3 || De || D4) {
  3874.                     Dj.push('<div class="pr-review-author-badge-wrapper">');
  3875.                     if (EE) {
  3876.                         Dj.push('<div class="pr-review-author-verified-buyer-wrapper pr-review-author-verified-buyer-');
  3877.                         Dj.push(Do);
  3878.                         Dj.push('"><a href="');
  3879.                         Dj.push(EI);
  3880.                         Dj.push('"><img class="pr-badge pr-verified-buyer" src="');
  3881.                         Dj.push(EB);
  3882.                         Dj.push("/engine/images/badge_vp_");
  3883.                         Dj.push(Do);
  3884.                         Dj.push(".gif");
  3885.                         Dj.push('" alt="');
  3886.                         Dj.push("Verified Buyer");
  3887.                         Dj.push('" title="');
  3888.                         Dj.push("Verified Buyer");
  3889.                         Dj.push('" /></a></div>');
  3890.                     }
  3891.                     if (D3) {
  3892.                         Dj.push(Ae(D3, Do, Dt));
  3893.                     } else {
  3894.                         if (De) {
  3895.                             Dj.push('<div class="pr-review-author-member-badge-wrapper pr-review-author-member-badge-wrapper-');
  3896.                             Dj.push(Do);
  3897.                             Dj.push('"><img class="pr-badge pr-site-member" src="');
  3898.                             Dj.push(EB);
  3899.                             Dj.push('/engine/images/pixel.gif" alt="');
  3900.                             Dj.push("Site Member");
  3901.                             Dj.push('" title="');
  3902.                             Dj.push("Site Member");
  3903.                             Dj.push('" /></div>');
  3904.                         }
  3905.                     }
  3906.                     if (D4 && !false && !EE && !D3 && !De) {
  3907.                         Dj.push('<div class="pr-review-author-verified pr-review-author-verified-');
  3908.                         Dj.push(Do);
  3909.                         Dj.push('"><a href="');
  3910.                         Dj.push(EI);
  3911.                         Dj.push('"><img class="pr-badge pr-verified" src="');
  3912.                         Dj.push(EB);
  3913.                         Dj.push("/engine/images/badge_vr_");
  3914.                         Dj.push(Do);
  3915.                         Dj.push(".gif");
  3916.                         Dj.push('" alt="');
  3917.                         Dj.push("Verified Reviewer");
  3918.                         Dj.push('" title="');
  3919.                         Dj.push("Verified Reviewer");
  3920.                         Dj.push('" /></a></div>');
  3921.                     }
  3922.                     Dj.push("</div>");
  3923.                 }
  3924.                 Dj.push("</div>");
  3925.             } else {
  3926.                 if (EC && Dc.pr) {
  3927.                     Dj.push('<div class="pr-profile-review-product-info">');
  3928.                     if (Dc.pr.m && window && window.location && window.location.protocol == "http:") {
  3929.                         if (Dc.pr.u) {
  3930.                             Dj.push('<a href="');
  3931.                             Dj.push(Dc.pr.u);
  3932.                             Dj.push('"><img alt="Review" src="');
  3933.                             Dj.push(AM(Dc.pr.m));
  3934.                             Dj.push('" /></a>');
  3935.                         } else {
  3936.                             Dj.push('<img alt="Review" src="');
  3937.                             Dj.push(AM(Dc.pr.m));
  3938.                             Dj.push('" />');
  3939.                         }
  3940.                     }
  3941.                     if (Dc.pr.n) {
  3942.                         if (Dc.pr.u) {
  3943.                             Dj.push('<a href="');
  3944.                             Dj.push(Dc.pr.u);
  3945.                             Dj.push('">');
  3946.                             Dj.push(Dc.pr.n);
  3947.                             Dj.push("</a>");
  3948.                         } else {
  3949.                             Dj.push(Dc.pr.n);
  3950.                         }
  3951.                     }
  3952.                     Dj.push("</div>");
  3953.                 }
  3954.             }
  3955.             Dj.push('<div class="pr-review-main-wrapper">');
  3956.             if (Dc.g && (ED.pros || ED.cons || ED.bestuses)) {
  3957.                 Dj.push('<div class="pr-review-points"><div class="pr-review-points-attr-wrapper"><div class="pr-attribute-group pr-rounded pr-attribute-pros');
  3958.                 Dj.push(ED.pros ? "" : " pr-empty");
  3959.                 Dj.push('"><div class="pr-attribute-key"><p class="pr-attribute-label-pros">');
  3960.                 Dj.push("Pros");
  3961.                 Dj.push('</p></div><div class="pr-attribute-value"><ul class="pr-attribute-value-list">');
  3962.                 for (var DW = 0; DW < Dc.g.length; DW++) {
  3963.                     var Dk = Dc.g[DW];
  3964.                     if (Dk.k == "pros") {
  3965.                         for (var D8 = 0; D8 < Dk.v.length; D8++) {
  3966.                             Dj.push("<li>");
  3967.                             Dj.push(Dk.v[D8]);
  3968.                             Dj.push("</li>");
  3969.                         }
  3970.                         break;
  3971.                     }
  3972.                 }
  3973.                 Dj.push('</ul></div></div><div class="pr-attribute-group pr-rounded pr-attribute-cons');
  3974.                 Dj.push(ED.cons ? "" : " pr-empty");
  3975.                 Dj.push('"><div class="pr-attribute-key"><p class="pr-attribute-label-cons">');
  3976.                 Dj.push("Cons");
  3977.                 Dj.push('</p></div><div class="pr-attribute-value"><ul class="pr-attribute-value-list">');
  3978.                 for (var DW = 0; DW < Dc.g.length; DW++) {
  3979.                     var Dk = Dc.g[DW];
  3980.                     if (Dk.k == "cons") {
  3981.                         for (var D8 = 0; D8 < Dk.v.length; D8++) {
  3982.                             Dj.push("<li>");
  3983.                             Dj.push(Dk.v[D8]);
  3984.                             Dj.push("</li>");
  3985.                         }
  3986.                         break;
  3987.                     }
  3988.                 }
  3989.                 Dj.push('</ul></div></div><div class="pr-attribute-group pr-rounded pr-attribute-bestuses');
  3990.                 Dj.push(ED.bestuses ? "" : " pr-empty");
  3991.                 Dj.push(' pr-last"><div class="pr-attribute-key"><p class="pr-attribute-label-bestuses">');
  3992.                 Dj.push("Best Uses");
  3993.                 Dj.push('</p></div><div class="pr-attribute-value"><ul class="pr-attribute-value-list">');
  3994.                 for (var DW = 0; DW < Dc.g.length; DW++) {
  3995.                     var Dk = Dc.g[DW];
  3996.                     if (Dk.k == "bestuses") {
  3997.                         for (var D8 = 0; D8 < Dk.v.length; D8++) {
  3998.                             Dj.push("<li>");
  3999.                             Dj.push(Dk.v[D8]);
  4000.                             Dj.push("</li>");
  4001.                         }
  4002.                         break;
  4003.                     }
  4004.                 }
  4005.                 Dj.push('</ul></div></div><div class="pr-clear"></div></div></div>');
  4006.             }
  4007.             if (Dc.dc && Dc.dc === "sweepstakes") {
  4008.                 Dj.push('<div class="pr-disclosure-message"><p class="pr-disclosure-text">');
  4009.                 Dj.push("Submitted as part of a sweepstakes entry");
  4010.                 Dj.push("</p></div>");
  4011.             } else {
  4012.                 if (Dc.dc && Dc.dc === "sampling") {
  4013.                     Dj.push('<div class="pr-disclosure-message"><p class="pr-disclosure-text">');
  4014.                     Dj.push("Reviewer received a free sample of this product");
  4015.                     Dj.push("</p></div>");
  4016.                 }
  4017.             }
  4018.             Dj.push('<div class="pr-review-text">');
  4019.             if (Dc.pv && D9 && D9[Dc.pv]) {
  4020.                 Dj.push('<p class="pr-comments-header">');
  4021.                 Dj.push(("Comments about <em>{0}</em>:" || "").replace("{0}", D9[Dc.pv]));
  4022.                 Dj.push("</p>");
  4023.             } else {
  4024.                 if (Dv) {
  4025.                     var EA = "";
  4026.                     if (Dr) {
  4027.                         EA += '<span class="pr-brand-name">' + Dr + " </span>";
  4028.                     }
  4029.                     EA += '<span class="pr-product-name">' + Dv + "</span>";
  4030.                     Dj.push('<p class="pr-comments-header">');
  4031.                     Dj.push(("Comments about <em>{0}</em>:" || "").replace("{0}", EA));
  4032.                     Dj.push("</p>");
  4033.                 } else {
  4034.                     if (EC && Dc.pr && Dc.pr.n) {
  4035.                         var EA = "";
  4036.                         if (Dc.pr.br) {
  4037.                             EA += '<span class="pr-brand-name">' + Dc.pr.br + " </span>";
  4038.                         }
  4039.                         EA += '<span class="pr-product-name">' + Dc.pr.n + "</span>";
  4040.                         Dj.push('<p class="pr-comments-header">');
  4041.                         Dj.push(("Comments about <em>{0}</em>:" || "").replace("{0}", EA));
  4042.                         Dj.push("</p>");
  4043.                     }
  4044.                 }
  4045.             }
  4046.             Dj.push('<p class="pr-comments">');
  4047.             Dj.push(AE(Dc.p));
  4048.             Dj.push("</p></div>");
  4049.             if (Dc.z) {
  4050.                 Dj.push('<div class="pr-review-text"><p class="pr-comments-header">');
  4051.                 Dj.push("Service and delivery comments:");
  4052.                 Dj.push('</p><p class="pr-comments">');
  4053.                 Dj.push(AE(Dc.z));
  4054.                 Dj.push("</p></div>");
  4055.             }
  4056.             if (D2 || Dc.rp || Dc.sp || Dc.tb || Dc.ar) {
  4057.                 Dj.push('<div class="pr-other-attributes">');
  4058.                 if (Dc.g) {
  4059.                     Dj.push('<div class="pr-other-attribute-tag-group"><ul class="pr-other-attributes-list">');
  4060.                     for (var DW = 0; DW < Dc.g.length; DW++) {
  4061.                         var Dk = Dc.g[DW];
  4062.                         if (Dk.k != "pros" && Dk.k != "cons" && Dk.k != "bestuses" && Dk.k != "describeyourself") {
  4063.                             Dj.push('<li class="pr-other-attribute-label">');
  4064.                             Dj.push(Dk.n);
  4065.                             Dj.push(':</li><li class="pr-other-attribute-value">');
  4066.                             Dj.push(Dk.v.join(", "));
  4067.                             Dj.push("</li>");
  4068.                         }
  4069.                     }
  4070.                     Dj.push("</ul></div>");
  4071.                 }
  4072.                 if (Dc.tb) {
  4073.                     Dj.push('<div class="pr-other-attribute-text-group"><ul class="pr-other-attributes-list">');
  4074.                     for (var DW = 0; DW < Dc.tb.length; DW++) {
  4075.                         var Dk = Dc.tb[DW];
  4076.                         Dj.push('<li class="pr-other-attribute-label pr-merchant-question-label">');
  4077.                         Dj.push(Dk.n);
  4078.                         Dj.push(':</li><li class="pr-other-attribute-value pr-merchant-question-value">');
  4079.                         Dj.push(Dk.v);
  4080.                         Dj.push("</li>");
  4081.                     }
  4082.                     Dj.push("</ul></div>");
  4083.                 }
  4084.                 if (Dc.ar) {
  4085.                     Dj.push('<div class="pr-other-attribute-additional-ratings"><ul class="pr-other-attributes-list">');
  4086.                     for (var DW = 0; DW < Dc.ar.length; DW++) {
  4087.                         var Dk = Dc.ar[DW];
  4088.                         Dj.push('<li class="pr-other-attribute-label">');
  4089.                         Dj.push(Dk.n);
  4090.                         Dj.push(':</li><li class="pr-other-attribute-value"><div class="pr-stars pr-stars-small pr-stars-small-subrating ');
  4091.                         Dj.push(BP[Dk.v].small);
  4092.                         Dj.push('" style="background-position: 0px ');
  4093.                         Dj.push(Dk.v * -36);
  4094.                         Dj.push('px;" title="');
  4095.                         Dj.push(Dl[Dk.v]);
  4096.                         Dj.push('">&nbsp;</div></li>');
  4097.                     }
  4098.                     Dj.push("</ul></div>");
  4099.                 }
  4100.                 if (Dc.rp) {
  4101.                     Dj.push('<div class="pr-other-attribute-recommended-products"><ul class="pr-other-attributes-list">');
  4102.                     var Dn = [];
  4103.                     for (var EF = 0; EF < Dc.rp.length; EF++) {
  4104.                         var D0 = Dc.rp[EF];
  4105.                         Dn.push(D0.u ? '<a href="' + D0.u + '">' + D0.n + "</a>" : D0.n);
  4106.                     }
  4107.                     Dj.push('<li class="pr-other-attribute-label">');
  4108.                     Dj.push("Recommended");
  4109.                     Dj.push(':</li><li class="pr-other-attribute-value">');
  4110.                     Dj.push(Dn.join(", "));
  4111.                     Dj.push("</li></ul></div>");
  4112.                 }
  4113.                 if (Dc.sp) {
  4114.                     Dj.push('<div class="pr-other-attribute-similar-products"><ul class="pr-other-attributes-list">');
  4115.                     var Dp = [];
  4116.                     for (var EH = 0; EH < Dc.sp.length; EH++) {
  4117.                         var Dd = Dc.sp[EH];
  4118.                         Dp.push(Dd.u ? '<a href="' + Dd.u + '">' + Dd.n + "</a>" : Dd.n);
  4119.                     }
  4120.                     Dj.push('<li class="pr-other-attribute-label">');
  4121.                     Dj.push("Similar");
  4122.                     Dj.push(':</li><li class="pr-other-attribute-value">');
  4123.                     Dj.push(Dp.join(", "));
  4124.                     Dj.push("</li></ul></div>");
  4125.                 }
  4126.                 Dj.push('<div class="pr-clear"></div></div>');
  4127.             }
  4128.             Dj.push('<div class="pr-review-footer">');
  4129.             if (Dc.b) {
  4130.                 var DX;
  4131.                 if (Dc.b.v) {
  4132.                     DX = Dc.b.v;
  4133.                 } else {
  4134.                     DX = Dw[Dc.b.k];
  4135.                 }
  4136.                 Dj.push('<div class="pr-review-bottom-line-wrapper"><p><span class="pr-review-bottom-line">');
  4137.                 Dj.push("Bottom Line");
  4138.                 Dj.push("</span> <span></span>");
  4139.                 Dj.push(DX);
  4140.                 Dj.push("</p></div>");
  4141.             }
  4142.             if (Dc.i) {
  4143.                 Dj.push('<div class="pr-customer-media">');
  4144.                 for (var D7 = 0; D7 < Dc.i.r.length; D7++) {
  4145.                     var Di = Dc.i.r[D7];
  4146.                     if (Di.v && Cs(Di.v)) {
  4147.                         continue;
  4148.                     }
  4149.                     Dj.push('<div class="pr-customer-media-wrapper"><p class="pr-customer-media-user">');
  4150.                     if (Dc.i.t == "i") {
  4151.                         Dj.push("Images shared by");
  4152.                         Dj.push(" <span>");
  4153.                         Dj.push(Dc.n);
  4154.                         Dj.push("</span>");
  4155.                     } else {
  4156.                         if (Dc.i.t == "v") {
  4157.                             Dj.push("Video shared by");
  4158.                             Dj.push(" <span>");
  4159.                             Dj.push(Dc.n);
  4160.                             Dj.push("</span>");
  4161.                         } else {
  4162.                             Dj.push("Images shared by");
  4163.                             Dj.push(" <span>");
  4164.                             Dj.push(Dc.n);
  4165.                             Dj.push("</span>");
  4166.                         }
  4167.                     }
  4168.                     Dj.push('</p><div class="pr-pic pr-rounded"><p class="pr-caption">');
  4169.                     Dj.push(Di.c);
  4170.                     Dj.push('</p><div class="pr-pic-content"><div class="wrap1"><div class="wrap2">');
  4171.                     if (!Di.v) {
  4172.                         if (Di.s) {
  4173.                             Dj.push('<a href="#" onclick="POWERREVIEWS.common.showImagePopup(\'');
  4174.                             Dj.push(Di.s.u);
  4175.                             Dj.push("', ");
  4176.                             Dj.push(Di.s.w);
  4177.                             Dj.push(", ");
  4178.                             Dj.push(Di.s.h);
  4179.                             Dj.push(", POWERREVIEWS.common.getOptions('");
  4180.                             Dj.push(Dy);
  4181.                             Dj.push('\')); return false;"><img src="');
  4182.                             Dj.push(EB);
  4183.                             Dj.push("/content");
  4184.                             Dj.push(Di.h.u);
  4185.                             Dj.push('" alt="');
  4186.                             Dj.push("Image Thumbnail");
  4187.                             Dj.push('" width="');
  4188.                             Dj.push(Di.h.w);
  4189.                             Dj.push('" height="');
  4190.                             Dj.push(Di.h.h);
  4191.                             Dj.push('" onerror="POWERREVIEWS.common.cloudinaryThumbnailFallback(event, \'');
  4192.                             Dj.push(Di.s.u);
  4193.                             Dj.push("', ");
  4194.                             Dj.push(Di.s.w);
  4195.                             Dj.push(", ");
  4196.                             Dj.push(Di.s.h);
  4197.                             Dj.push('); return false;" /></a>');
  4198.                         } else {
  4199.                             Dj.push('<img src="');
  4200.                             Dj.push(EB);
  4201.                             Dj.push("/content");
  4202.                             Dj.push(Di.h.u);
  4203.                             Dj.push('" alt="');
  4204.                             Dj.push("Image Thumbnail");
  4205.                             Dj.push('" width="');
  4206.                             Dj.push(Di.h.w);
  4207.                             Dj.push('" height="');
  4208.                             Dj.push(Di.h.h);
  4209.                             Dj.push('" />');
  4210.                         }
  4211.                     } else {
  4212.                         Dj.push('<a href="#" onclick="POWERREVIEWS.common.showVideoPopup(\'');
  4213.                         Dj.push(Di.v);
  4214.                         Dj.push("', POWERREVIEWS.common.getOptions('");
  4215.                         Dj.push(Dy);
  4216.                         Dj.push('\')); return false;"><img src="');
  4217.                         Dj.push(Di.h.u);
  4218.                         Dj.push('" alt="');
  4219.                         Dj.push("Video Thumbnail");
  4220.                         Dj.push('" width="75" height="50" onerror="this.src=\'//res.cloudinary.com/powerreviews/image/upload/t_media_lib_thumb/video_unavailable.jpg\'"/></a>');
  4221.                     }
  4222.                     Dj.push("</div></div></div>");
  4223.                     if (Di.g) {
  4224.                         Dj.push('<p class="pr-pic-tags"><span class="pr-tag-label">');
  4225.                         Dj.push("Tags:");
  4226.                         Dj.push("</span> ");
  4227.                         Dj.push(Di.g.join(", "));
  4228.                         Dj.push("</p>");
  4229.                     }
  4230.                     Dj.push("</div></div>");
  4231.                 }
  4232.                 Dj.push('<div class="pr-clear"></div></div>');
  4233.             }
  4234.             if (Dc.y) {
  4235.                 Dj.push('<div class="pr-merchant-comments">');
  4236.                 for (var D1 = 0; D1 < Dc.y.length; D1++) {
  4237.                     Dj.push('<p class="pr-merchant-comments-text"><span>');
  4238.                     Dj.push(("Merchant response: " || "").replace("{0}", Q(Dt).name));
  4239.                     Dj.push("</span>");
  4240.                     Dj.push(AE(Dc.y[D1]));
  4241.                     Dj.push("</p>");
  4242.                 }
  4243.                 Dj.push("</div>");
  4244.             }
  4245.             if (Dc.at) {
  4246.                 var Da = M("pr_attribution_table", Dt);
  4247.                 var D6 = Da[Dc.at];
  4248.                 if (D6) {
  4249.                     if (D6.originating_merchant_url && D6.image_uri) {
  4250.                         if (D6.attribution_text) {
  4251.                             Dj.push('<div class="pr-review-attribution">');
  4252.                             if (D6.attribution_text) {
  4253.                                 Dj.push('<div class="pr-review-attribution-text"><p>');
  4254.                                 Dj.push(D6.attribution_text);
  4255.                                 Dj.push("</p></div>");
  4256.                             }
  4257.                             Dj.push('<div class="pr-review-attribution-img"><p class="pr-review-attribute-imgLabel">');
  4258.                             Dj.push("REVIEWED AT");
  4259.                             Dj.push('</p><img alt="Attribution" src="');
  4260.                             Dj.push(EB);
  4261.                             Dj.push("/engine/images/");
  4262.                             Dj.push(D6.image_uri);
  4263.                             Dj.push('"/></div><div class="pr-clear"></div></div>');
  4264.                         } else {
  4265.                             Dj.push('<div class="pr-review-attribution-img"><p class="pr-review-attribute-imgLabel">');
  4266.                             Dj.push("REVIEWED AT");
  4267.                             Dj.push('</p><img alt="Attribution" src="');
  4268.                             Dj.push(EB);
  4269.                             Dj.push("/engine/images/");
  4270.                             Dj.push(D6.image_uri);
  4271.                             Dj.push('"/></div><div class="pr-clear"></div>');
  4272.                         }
  4273.                     }
  4274.                 }
  4275.             }
  4276.             if (Dc.t > 0) {
  4277.                 Dj.push('<div class="pr-review-most-helpful-bottom"><p>(<span>');
  4278.                 Dj.push(("{0} of {1}" || "").replace("{0}", Dc.v).replace("{1}", Dc.t));
  4279.                 Dj.push("</span> ");
  4280.                 Dj.push("customers found this review helpful");
  4281.                 Dj.push(")</p></div>");
  4282.             }
  4283.             if (!EC) {
  4284.                 Dj.push('<div class="pr-review-tools"><p class="pr-review-helpful-text">');
  4285.                 Dj.push("Was this review helpful?");
  4286.                 Dj.push('&nbsp;<a data-pr-event="review-helpful-yes-link" class="pr-review-helpful-text-link" href="#" onclick="POWERREVIEWS.display.submitHelpfulVote(\'');
  4287.                 Dj.push(Dc.id);
  4288.                 Dj.push("', 'helpful', '");
  4289.                 Dj.push(Do);
  4290.                 Dj.push("', POWERREVIEWS.common.getOptions('");
  4291.                 Dj.push(Dy);
  4292.                 Dj.push("')); return false;\">");
  4293.                 Dj.push("Yes");
  4294.                 Dj.push('</a>&nbsp;/&nbsp;<a data-pr-event="review-helpful-no-link" class="pr-review-helpful-text-link" href="#" onclick="POWERREVIEWS.display.submitHelpfulVote(\'');
  4295.                 Dj.push(Dc.id);
  4296.                 Dj.push("', 'unhelpful', '");
  4297.                 Dj.push(Do);
  4298.                 Dj.push("', POWERREVIEWS.common.getOptions('");
  4299.                 Dj.push(Dy);
  4300.                 Dj.push("')); return false;\">");
  4301.                 Dj.push("No");
  4302.                 Dj.push('</a></p><p class="pr-review-report-issue"><span class="pr-review-report-issue-hyphen">&nbsp;-&nbsp;</span>');
  4303.                 Dj.push("You may also");
  4304.                 Dj.push(' <a href="#" data-pr-event="review-report-issue-link" class="pr-review-helpful-text-link" onclick="POWERREVIEWS.display.launchErrorDiv(\'');
  4305.                 Dj.push(Dc.id);
  4306.                 Dj.push("', '");
  4307.                 Dj.push(Do);
  4308.                 Dj.push("', '");
  4309.                 Dj.push(Dy);
  4310.                 Dj.push("', POWERREVIEWS.common.getOptions('");
  4311.                 Dj.push(Dy);
  4312.                 Dj.push("')); return false;\">");
  4313.                 Dj.push("flag this review");
  4314.                 Dj.push('</a></p><div class="pr-error" id="error_div');
  4315.                 Dj.push(Dc.id);
  4316.                 Dj.push('" style=""></div><p class="pr-review-helpful-response" id="review_feedback');
  4317.                 Dj.push(Dc.id);
  4318.                 Dj.push('"></p></div>');
  4319.             }
  4320.             Dj.push('</div></div><div class="pr-clear"></div>');
  4321.             if (false) {
  4322.                 var Df = CN({
  4323.                     "locale": Do,
  4324.                     "sharedReviewId": Dc.id
  4325.                 }, Dt);
  4326.                 Dj.push('<p class="pr-fb-reviewComment"><span><a data-pr-event="review-fb-review-comment-link" href="#" onclick="POWERREVIEWS.common.showSmallPopup(\'');
  4327.                 Dj.push(Df);
  4328.                 Dj.push("', 450, 600, {'location':'no'}); return false;\">");
  4329.                 Dj.push("Comment on this review");
  4330.                 Dj.push('</a></span><img alt="Help Icon" class="pr-profile-fb-help-icon" src="');
  4331.                 Dj.push(EB);
  4332.                 Dj.push('/engine/images/icon_orange_help.gif" title="');
  4333.                 Dj.push("Click here to write a comment and share this review with your friends on Facebook. Your comment and this review will show up in your Facebook News Feed.");
  4334.                 Dj.push('" />');
  4335.                 if (a && a["facebook_comment"]) {
  4336.                     Dj.push('<span class="pr-fb-reviewComment-social-loyalty">');
  4337.                     Dj.push("(earn points)");
  4338.                     Dj.push("</span>");
  4339.                 }
  4340.                 Dj.push('</p><div class="pr-clear"></div>');
  4341.             }
  4342.             Dj.push("</div>");
  4343.         }
  4344.         if (!EC) {
  4345.             Dj.push('<div class="pr-pagination-bottom"><div class="pr-page-count-wrapper"><p class="pr-page-count">');
  4346.             if (Dm == DZ) {
  4347.                 Dj.push("Displaying review");
  4348.                 Dj.push(" <strong>");
  4349.                 Dj.push((Dm + 1));
  4350.                 Dj.push("</strong>");
  4351.             } else {
  4352.                 Dj.push("Displaying reviews");
  4353.                 Dj.push(" <strong>");
  4354.                 Dj.push((Dm + 1) + "-" + (DZ + 1));
  4355.                 Dj.push("</strong>");
  4356.             }
  4357.             Dj.push('</p><p class="pr-nav-back-to-top"><a href="');
  4358.             Dj.push(EK);
  4359.             Dj.push('" data-pr-event="footer-back-to-top-link">');
  4360.             Dj.push("Back to top");
  4361.             Dj.push("</a></p></div>");
  4362.             if (Du > DY) {
  4363.                 Dj.push('<div class="pr-page-nav-wrapper"><p class="pr-page-nav"><span class="pr-page-prev">');
  4364.                 if (Dm > 0) {
  4365.                     Dj.push('<a data-pr-event="footer-page-prev-link" onclick="POWERREVIEWS.display.getReviewsFromMeta(');
  4366.                     Dj.push(Db - 1);
  4367.                     Dj.push(", '");
  4368.                     Dj.push(EJ);
  4369.                     Dj.push("', '");
  4370.                     Dj.push(Do);
  4371.                     Dj.push("', '");
  4372.                     Dj.push(Dy);
  4373.                     Dj.push("', POWERREVIEWS.common.getOptions('");
  4374.                     Dj.push(Dy);
  4375.                     Dj.push("')); location.hash='#'; location.hash='#pr-header-back-to-top-link'; return (false);\" href=\"");
  4376.                     Dj.push(Dx.replace("~~~REVIEW_PAGE~~~", Db - 1));
  4377.                     Dj.push('">&laquo; ');
  4378.                     Dj.push("Previous");
  4379.                     Dj.push("</a>");
  4380.                 } else {
  4381.                     Dj.push("Previous");
  4382.                 }
  4383.                 Dj.push('</span><span class="pr-divider"> | </span><span class="pr-page-next">');
  4384.                 if (DZ < Du - 1) {
  4385.                     Dj.push('<a data-pr-event="footer-page-next-link" onclick="POWERREVIEWS.display.getReviewsFromMeta(');
  4386.                     Dj.push(Db + 1);
  4387.                     Dj.push(", '");
  4388.                     Dj.push(EJ);
  4389.                     Dj.push("', '");
  4390.                     Dj.push(Do);
  4391.                     Dj.push("', '");
  4392.                     Dj.push(Dy);
  4393.                     Dj.push("', POWERREVIEWS.common.getOptions('");
  4394.                     Dj.push(Dy);
  4395.                     Dj.push("')); location.hash='#'; location.hash='#pr-header-back-to-top-link'; return (false);\" href=\"");
  4396.                     Dj.push(DV.replace("~~~REVIEW_PAGE~~~", Db + 1));
  4397.                     Dj.push('">');
  4398.                     Dj.push("Next");
  4399.                     Dj.push(" &raquo;</a>");
  4400.                 } else {
  4401.                     Dj.push("Next");
  4402.                 }
  4403.                 Dj.push("</span></p></div>");
  4404.             }
  4405.             Dj.push('<div class="pr-clear"></div></div>');
  4406.         }
  4407.         Dj.push("</div>");
  4408.         return Dj.join("");
  4409.     }
  4410.     F.display.processReviewsTemplate = Be;
  4411.     function BS(DX, DW, DV, DY) {
  4412.         var i = [];
  4413.         i.push('<div class="pr-report-issue-header">');
  4414.         i.push("Please let us know what kind of issue this is:");
  4415.         i.push('<span class="pr-required">*</span></div><div><input type="radio" name="error_radio');
  4416.         i.push(DX);
  4417.         i.push('" id="profanity_');
  4418.         i.push(DX);
  4419.         i.push('" value="profane"><label for="profanity_');
  4420.         i.push(DX);
  4421.         i.push('">');
  4422.         i.push("Profanity");
  4423.         i.push('</label></div><div><input type="radio" name="error_radio');
  4424.         i.push(DX);
  4425.         i.push('" id="wrong_product_');
  4426.         i.push(DX);
  4427.         i.push('" value="wrong_product"><label for="wrong_product_');
  4428.         i.push(DX);
  4429.         i.push('">');
  4430.         i.push("Wrong product");
  4431.         i.push('</label></div><div><input type="radio" name="error_radio');
  4432.         i.push(DX);
  4433.         i.push('" id="spam_');
  4434.         i.push(DX);
  4435.         i.push('" value="spam"><label for="spam_');
  4436.         i.push(DX);
  4437.         i.push('">');
  4438.         i.push("Spam");
  4439.         i.push('</label></div><div><input type="radio" name="error_radio');
  4440.         i.push(DX);
  4441.         i.push('" id="duplicate_');
  4442.         i.push(DX);
  4443.         i.push('" value="duplicate"><label for="duplicate_');
  4444.         i.push(DX);
  4445.         i.push('">');
  4446.         i.push("Duplicate");
  4447.         i.push('</label></div><div><input type="radio" name="error_radio');
  4448.         i.push(DX);
  4449.         i.push('" id="copyright_violation_');
  4450.         i.push(DX);
  4451.         i.push('" value="copyright"><label for="copyright_violation_');
  4452.         i.push(DX);
  4453.         i.push('">');
  4454.         i.push("Copyright violation");
  4455.         i.push('</label></div><div><input type="radio" name="error_radio');
  4456.         i.push(DX);
  4457.         i.push('" id="not_review_');
  4458.         i.push(DX);
  4459.         i.push('" value="not_review"><label for="not_review_');
  4460.         i.push(DX);
  4461.         i.push('">');
  4462.         i.push("Not a product review");
  4463.         i.push('</label></div><div><input type="radio" name="error_radio');
  4464.         i.push(DX);
  4465.         i.push('" id="customer_image_');
  4466.         i.push(DX);
  4467.         i.push('" value="customer_image"><label for="customer_image_');
  4468.         i.push(DX);
  4469.         i.push('">');
  4470.         i.push("Customer image");
  4471.         i.push('</label></div><div><input type="radio" name="error_radio');
  4472.         i.push(DX);
  4473.         i.push('" id="problem_with_image_');
  4474.         i.push(DX);
  4475.         i.push('" value="customer_image"><label for="problem_with_image_');
  4476.         i.push(DX);
  4477.         i.push('">');
  4478.         i.push("Problem with image");
  4479.         i.push('</label></div><div><input type="radio" name="error_radio');
  4480.         i.push(DX);
  4481.         i.push('" id="other_');
  4482.         i.push(DX);
  4483.         i.push('" value="other"><label for="other_');
  4484.         i.push(DX);
  4485.         i.push('">');
  4486.         i.push("Other");
  4487.         i.push('</label></div><div><label for="error_contact_email');
  4488.         i.push(DX);
  4489.         i.push('">');
  4490.         i.push("Email Address:");
  4491.         i.push('<span class="pr-required">*</span></label><input class="pr-error-email" type="text" id="error_contact_email');
  4492.         i.push(DX);
  4493.         i.push('" cols="20" maxlength="80"></div><div class="pr-issue-subtext">');
  4494.         i.push('</div><div><label for="error_comments');
  4495.         i.push(DX);
  4496.         i.push('">');
  4497.         i.push("Comments:");
  4498.         i.push('</label><textarea class="pr-error-comments" id="error_comments');
  4499.         i.push(DX);
  4500.         i.push('" cols="30" rows="3"></textarea></div><button class="pr-submit-button" onclick="POWERREVIEWS.display.submitError(\'');
  4501.         i.push(DX);
  4502.         i.push("', '");
  4503.         i.push(DW);
  4504.         i.push("', POWERREVIEWS.common.getOptions('");
  4505.         i.push(DV);
  4506.         i.push("')); return false;\"><span>");
  4507.         i.push("Submit");
  4508.         i.push('</span></button><button class="pr-cancel-button" onclick="POWERREVIEWS.display.cancelError(\'');
  4509.         i.push(DX);
  4510.         i.push("'); return false;\"><span>");
  4511.         i.push("Cancel");
  4512.         i.push("</span></button>");
  4513.         return i.join("");
  4514.     }
  4515.     F.display.processErrorDivTemplate = BS;
  4516.     function AT(DY, Dc, Dj) {
  4517.         var Dk = [];
  4518.         Dk.push('<div class="pr-other-attributes-histogram"><ul class="pr-other-attributes-list">');
  4519.         for (var DW = 0; DW < DY.length; DW++) {
  4520.             var Df = DY[DW];
  4521.             var Di = {};
  4522.             var Dg = 0;
  4523.             var DV = 0;
  4524.             var Da = 0;
  4525.             for (var i = 0; i < Df.v.length; i++) {
  4526.                 var De = Df.v[i];
  4527.                 Di[De.n.toLowerCase()] = De.c;
  4528.             }
  4529.             for (var DX = 0; DX < Df.a.length; DX++) {
  4530.                 var Db = Df.a[DX];
  4531.                 var Dd = Db.toLowerCase();
  4532.                 Di[Dd] = Di[Dd] || 0;
  4533.                 Dg += Di[Dd];
  4534.                 if (Di[Dd] > DV) {
  4535.                     DV = Di[Dd];
  4536.                     Da = DX;
  4537.                 }
  4538.             }
  4539.             Dk.push('<li class="pr-other-attributes-group pr-other-attribute-');
  4540.             Dk.push(Df.k);
  4541.             Dk.push('"><ul><li class="pr-other-attribute-label">');
  4542.             Dk.push(Df.n);
  4543.             Dk.push(':</li><li class="pr-other-attribute-value"><table>');
  4544.             for (var DX = 0; DX < Df.a.length; DX++) {
  4545.                 var Db = Df.a[DX];
  4546.                 var Dd = Db.toLowerCase();
  4547.                 var Dh = Di[Dd] / Dg * 100;
  4548.                 var DZ = (Da == DX);
  4549.                 Dk.push('<tr class="pr-other-attribute-value-histogram-element ');
  4550.                 Dk.push(DZ ? "pr-other-attribute-value-histogram-element-max" : "");
  4551.                 Dk.push('"><td class="pr-other-attribute-value-histogram-label"><p>');
  4552.                 Dk.push(Db);
  4553.                 Dk.push('</p></td><td class="pr-other-attribute-value-histogram-bar"><div class="pr-other-attribute-value-histogram-wrapper">');
  4554.                 if (Di[Dd] != 0) {
  4555.                     Dk.push('<div class="pr-other-attribute-value-histogram-barValue" style="width:');
  4556.                     Dk.push(Dh);
  4557.                     Dk.push('%">&nbsp;</div>');
  4558.                 } else {
  4559.                     Dk.push("&nbsp;");
  4560.                 }
  4561.                 Dk.push('</div></td><td class="pr-other-attribute-value-histogram-stats">');
  4562.                 if (DZ) {
  4563.                     Dk.push('<p><span class="pr-other-attribute-value-histogram-stats-pct">');
  4564.                     Dk.push(Math.round(Dh));
  4565.                     Dk.push('%&nbsp;</span><span class="pr-other-attribute-value-histogram-stats-count">');
  4566.                     if (Di[Dd] == 1) {
  4567.                         Dk.push('<p class="pr-snippet-review-count">');
  4568.                         Dk.push("(1 review)");
  4569.                         Dk.push("</p>");
  4570.                     } else {
  4571.                         Dk.push('<p class="pr-snippet-review-count">');
  4572.                         Dk.push("({0} reviews)".replace("{0}", Di[Dd]));
  4573.                         Dk.push("</p>");
  4574.                     }
  4575.                     Dk.push("</span></p>");
  4576.                 }
  4577.                 Dk.push("</td></tr>");
  4578.             }
  4579.             Dk.push("</table></li></ul></li>");
  4580.         }
  4581.         Dk.push('<li class="pr-clear"></li></ul></div>');
  4582.         return Dk.join("");
  4583.     }
  4584.     function Co(DY, DV, DX) {
  4585.         var i = [];
  4586.         i.push('<div class="pr-other-attributes-subratings"><ul class="pr-other-attributes-list">');
  4587.         for (var DW = 0; DW < DY.length; DW++) {
  4588.             var DZ = DY[DW];
  4589.             i.push('<li class="pr-other-attributes-group pr-other-attribute-');
  4590.             i.push(DZ.k);
  4591.             i.push('"><ul><li class="pr-other-attribute-label">');
  4592.             i.push(DZ.n);
  4593.             i.push(':</li><li class="pr-other-attribute-value"><div class="pr-stars pr-stars-small pr-stars-small-subrating ');
  4594.             i.push(BP[DZ.a].small);
  4595.             i.push('" style="background-position: 0px ');
  4596.             i.push(DZ.a * -36);
  4597.             i.push('px;">&nbsp;</div></li></ul></li>');
  4598.         }
  4599.         i.push("</ul></div>");
  4600.         return i.join("");
  4601.     }
  4602.     function AJ(Da, Dc, Db, Dd, DY) {
  4603.         var De = [];
  4604.         var DV = ["1 Stars", "2 Stars", "3 Stars", "4 Stars", "5 Stars"];
  4605.         var DW = 0;
  4606.         for (var DZ = 0; DZ < 5; DZ++) {
  4607.             DW += Da[DZ];
  4608.         }
  4609.         var DX = (Da[DZ] === 0) ? "pr-zero-ratings" : "";
  4610.         De.push('<div class="pr-ratings-histogram-wrapper"><ul class="pr-ratings-histogram-content">');
  4611.         for (DZ = 4; DZ >= 0; DZ--) {
  4612.             De.push('<li class="pr-histogram-');
  4613.             De.push([DZ + 1]);
  4614.             De.push("Stars ");
  4615.             De.push(DX);
  4616.             De.push('" ');
  4617.             if (Da[DZ] > 0) {
  4618.                 De.push(' onclick="POWERREVIEWS.display.filterReviewsByRating(this, ');
  4619.                 De.push([DZ + 1]);
  4620.                 De.push(", '");
  4621.                 De.push(Db);
  4622.                 De.push("', POWERREVIEWS.common.getOptions('");
  4623.                 De.push(Db);
  4624.                 De.push("'), ");
  4625.                 De.push(DY);
  4626.                 De.push(');return false" ');
  4627.             }
  4628.             De.push('><p class="pr-histogram-label"><span>');
  4629.             De.push(DV[DZ]);
  4630.             De.push('</span></p><div class="pr-ratings-histogram-bar">');
  4631.             if (Da[DZ] != 0) {
  4632.                 De.push('<div class="pr-ratings-histogram-barValue" style="width:');
  4633.                 De.push(Da[DZ] / DW * (100));
  4634.                 De.push('%">&nbsp;</div>');
  4635.             } else {
  4636.                 De.push("&nbsp;");
  4637.             }
  4638.             De.push('</div><p class="pr-histogram-count">');
  4639.             if (Da[DZ] != 0) {
  4640.                 De.push("<span>(");
  4641.                 De.push(Da[DZ]);
  4642.                 De.push(")</span>");
  4643.             } else {
  4644.                 De.push("<span>(0)</span>");
  4645.             }
  4646.             De.push("</p></li>");
  4647.         }
  4648.         De.push("</ul></div>");
  4649.         return De.join("");
  4650.     }
  4651.     function AD(DX, DY, Da, Db, DZ, Dd) {
  4652.         var De = [];
  4653.         var DV = At(DX, DZ, Dd);
  4654.         var Dc = window.location.protocol;
  4655.         var i = "All";
  4656.         var DW = AM(Db);
  4657.         De.push('<div id="pr-fb-follow-wrapper-');
  4658.         De.push(DZ);
  4659.         De.push("-");
  4660.         De.push(DY);
  4661.         De.push('" class="pr-fb-follow-contentwrapper pr-fb-follow-category"><div class="pr-fb-follow-body"><p class="pr-fb-follow-modal-header">');
  4662.         De.push("Follow this Product");
  4663.         De.push('</p><div class="pr-fb-follow-content pr-fb-follow-body-left"><div class="pr-fb-follow-content-wrapper"><div class="pr-fb-follow-info">');
  4664.         if (DW && Dc == "http:") {
  4665.             De.push('<img src="');
  4666.             De.push(DW);
  4667.             De.push('" /><br />');
  4668.         }
  4669.         De.push('<p class="pr-emphasis">');
  4670.         De.push(Da);
  4671.         De.push('</p></div></div></div><div class="pr-fb-follow-info pr-fb-follow-body-right"><div id="pr-fb-follow-info-wrapper-');
  4672.         De.push(DZ);
  4673.         De.push("-");
  4674.         De.push(DY);
  4675.         De.push('" class="pr-fb-follow-info-wrapper"><p class="pr-reset">');
  4676.         if (i == "Facebook" || i == "All") {
  4677.             De.push("<b>Click the Like button</b> to follow on Facebook OR enter your email. Get the latest reviews for this product on your Facebook News Feed or by email. You can unsubscribe anytime.");
  4678.         }
  4679.         if (i == "Email") {
  4680.             De.push("Enter your email to get the latest reviews for this product. You can unsubscribe anytime.");
  4681.         }
  4682.         De.push('</p></div></div><div class="pr-clear"></div></div><div class="pr-fb-follow-footer">');
  4683.         if (i == "Facebook" || i == "All") {
  4684.             De.push('<div class="pr-fb-follow-cta-like pr-fb-follow-body-left"><div class="pr-fb-follow-cta-like-wrapper"><p class="pr-fb-follow-on-facebook pr-fb-link-med">');
  4685.             De.push("Follow on <span>Facebook</span>");
  4686.             De.push('</p><div class="pr-fb-likebtn-wrapper" id="pr-fb-likebtn-wrapper-');
  4687.             De.push(DZ);
  4688.             De.push("-");
  4689.             De.push(DY);
  4690.             De.push('"><iframe class="pr-fb-likebtn" src="');
  4691.             De.push(Dc);
  4692.             De.push("//www.facebook.com/plugins/like.php?href=");
  4693.             De.push(DV);
  4694.             De.push('&layout=button_count&show_faces=false" scrolling="no" frameborder="0" allowTransparency="true"></iframe></div></div></div>');
  4695.         }
  4696.         if (i == "Email" || i == "All") {
  4697.             De.push('<div class="pr-fb-follow-cta-email pr-fb-follow-body-right"><div class="pr-fb-follow-cta-email-wrapper"><span class="pr-error-msg pr-hidden" id="pr-fb-follow-errorMsg-');
  4698.             De.push(DZ);
  4699.             De.push("-");
  4700.             De.push(DY);
  4701.             De.push('">');
  4702.             De.push("Please enter a valid email address.");
  4703.             De.push('</span><input type="text" id="pr-fb-follow-email-');
  4704.             De.push(DZ);
  4705.             De.push("-");
  4706.             De.push(DY);
  4707.             De.push('" class="pr-fb-follow-email-input" /><a href="#" onclick="POWERREVIEWS.common.validateAndProcessEmail(this, POWERREVIEWS.common.getOptions(\'');
  4708.             De.push(Ah(Dd));
  4709.             De.push('\'));return false" class="pr-fb-follow-submit-btn pr-fb-follow-submit-link" prData=\'{"type":"productEmailFollower","keyValue":"');
  4710.             De.push(DY);
  4711.             De.push('","merchantGroupId":"');
  4712.             De.push(11984);
  4713.             De.push('","pageId":"');
  4714.             De.push(DY);
  4715.             De.push('","locale":"');
  4716.             De.push(DZ);
  4717.             De.push('","siteId":"');
  4718.             De.push(BI(M("pr_site_id", Dd) || "-"));
  4719.             De.push('","target":"pr-fb-follow-email-');
  4720.             De.push(DZ);
  4721.             De.push("-");
  4722.             De.push(DY);
  4723.             De.push("\"}' >");
  4724.             De.push("SUBMIT");
  4725.             De.push("</a></div></div>");
  4726.         }
  4727.         De.push('<div class="pr-clear"></div></div></div>');
  4728.         return De.join("");
  4729.     }
  4730.     function By(DX, Da, Dd, DZ) {
  4731.         var De = [];
  4732.         var Dc = window.location.protocol;
  4733.         var DV = -1;
  4734.         var i = "All";
  4735.         De.push('<div id="pr-fb-follow-wrapper-');
  4736.         De.push(Da);
  4737.         De.push("-");
  4738.         De.push(DZ);
  4739.         De.push('" class="pr-fb-follow-contentwrapper pr-fb-follow-category"><div class="pr-fb-follow-body"><p class="pr-fb-follow-modal-header">');
  4740.         De.push("Follow This Category");
  4741.         De.push('</p><div class="pr-fb-follow-content pr-fb-follow-body-left"><div class="pr-fb-follow-content-wrapper">');
  4742.         if (DX.length > 0) {
  4743.             De.push('<ul class="pr-fb-follow-product-category">');
  4744.             var DW = 0;
  4745.             for (var DY = 0; DY < DX.length; DY++) {
  4746.                 if (DX[DY].label.length > 0) {
  4747.                     De.push('<li class="category-');
  4748.                     De.push(DW);
  4749.                     De.push('"><input type="radio" name="category" value="');
  4750.                     De.push(DX[DY].url);
  4751.                     De.push('" onclick=\'POWERREVIEWS.display.toggleFbLikeButton("pr-fb-like-');
  4752.                     De.push(DY);
  4753.                     De.push('",{"target":"pr-fb-follow-email-submit-');
  4754.                     De.push(Da);
  4755.                     De.push("-");
  4756.                     De.push(DZ);
  4757.                     De.push('","keyValue":"');
  4758.                     De.push(AO(DX[DY].code));
  4759.                     De.push('","locale":"');
  4760.                     De.push(Da);
  4761.                     De.push('","pageId":"');
  4762.                     De.push(DZ);
  4763.                     De.push("\"})' ");
  4764.                     De.push((DW == 0 ? "checked" : ""));
  4765.                     De.push("/><p>");
  4766.                     De.push(DX[DY].label);
  4767.                     De.push('</p><div class="pr-clear"></div></li>');
  4768.                     if (DV == -1) {
  4769.                         DV = DY;
  4770.                     }
  4771.                     DW++;
  4772.                 }
  4773.             }
  4774.             if (DV == -1) {
  4775.                 DV = DX.length - 1;
  4776.             }
  4777.             De.push("</ul>");
  4778.         }
  4779.         De.push('</div></div><div class="pr-fb-follow-info pr-fb-follow-body-right"><div id="pr-fb-follow-info-wrapper-');
  4780.         De.push(Da);
  4781.         De.push("-");
  4782.         De.push(DZ);
  4783.         De.push('" class="pr-fb-follow-info-wrapper"><p class="pr-reset">');
  4784.         if (i == "Facebook" || i == "All") {
  4785.             De.push("<b>Choose a product category and click the Like</b> button OR enter your email. Get reviews for new and popular products on your Facebook News Feed or by email. You can unsubscribe anytime.");
  4786.         }
  4787.         if (i == "Email") {
  4788.             De.push("Enter your email to get reviews for new and popular products. You can unsubscribe anytime.");
  4789.         }
  4790.         De.push('</p></div></div><div class="pr-clear"></div></div><div class="pr-fb-follow-footer">');
  4791.         if (i == "Facebook" || i == "All") {
  4792.             De.push('<div class="pr-fb-follow-cta-like pr-fb-follow-body-left"><div class="pr-fb-follow-cta-like-wrapper"><p class="pr-fb-follow-on-facebook pr-fb-link-med">');
  4793.             De.push("Follow on <span>Facebook</span>");
  4794.             De.push('</p><div class="pr-fb-likebtn-wrapper" id="pr-fb-likebtn-wrapper-');
  4795.             De.push(Da);
  4796.             De.push("-");
  4797.             De.push(DZ);
  4798.             De.push('">');
  4799.             if (DX.length > 0) {
  4800.                 var Db = "pr-hidden";
  4801.                 for (var DY = 0; DY < DX.length; DY++) {
  4802.                     Db = "pr-hidden";
  4803.                     if (DY == DV) {
  4804.                         Db = "";
  4805.                     }
  4806.                     De.push('<iframe id="pr-fb-like-');
  4807.                     De.push(DY);
  4808.                     De.push('" class="pr-fb-likebtn ');
  4809.                     De.push(Db);
  4810.                     De.push('" src="');
  4811.                     De.push(Dc);
  4812.                     De.push("//www.facebook.com/plugins/like.php?href=");
  4813.                     De.push(DX[DY].url);
  4814.                     De.push('&layout=button_count&show_faces=false" scrolling="no" frameborder="0" allowTransparency="true"></iframe>');
  4815.                 }
  4816.             }
  4817.             De.push("</div></div></div>");
  4818.         }
  4819.         if (i == "Email" || i == "All") {
  4820.             De.push('<div class="pr-fb-follow-cta-email pr-fb-follow-body-right"><div class="pr-fb-follow-cta-email-wrapper"><span class="pr-error-msg pr-hidden" id="pr-fb-follow-errorMsg-');
  4821.             De.push(Da);
  4822.             De.push("-");
  4823.             De.push(DZ);
  4824.             De.push('">');
  4825.             De.push("Please enter a valid email address.");
  4826.             De.push('</span><input type="text" id="pr-fb-follow-email-');
  4827.             De.push(Da);
  4828.             De.push("-");
  4829.             De.push(DZ);
  4830.             De.push('" class="pr-fb-follow-email-input" /><a id="pr-fb-follow-email-submit-');
  4831.             De.push(Da);
  4832.             De.push("-");
  4833.             De.push(DZ);
  4834.             De.push('" href="#" onclick="POWERREVIEWS.common.validateAndProcessEmail(this, POWERREVIEWS.common.getOptions(\'');
  4835.             De.push(Ah(Dd));
  4836.             De.push('\'));return false" class="pr-fb-follow-submit-btn pr-fb-follow-submit-link" prData=\'{"type":"productCategoryEmailFollower","keyValue":"');
  4837.             De.push(AO(DX[DV].code));
  4838.             De.push('","merchantGroupId":"');
  4839.             De.push(11984);
  4840.             De.push('","pageId":"');
  4841.             De.push(DZ);
  4842.             De.push('","locale":"');
  4843.             De.push(Da);
  4844.             De.push('","siteId":"');
  4845.             De.push(BI(M("pr_site_id", Dd) || "-"));
  4846.             De.push('","target":"pr-fb-follow-email-');
  4847.             De.push(Da);
  4848.             De.push("-");
  4849.             De.push(DZ);
  4850.             De.push("\"}' >");
  4851.             De.push("SUBMIT");
  4852.             De.push("</a></div></div>");
  4853.         }
  4854.         De.push('<div class="pr-clear"></div></div><div class="pr-clear"></div></div>');
  4855.         return De.join("");
  4856.     }
  4857.     function CR(DV) {
  4858.         var i = [];
  4859.         i.push('<div class="pr-modal-shadow"></div><div id="pr-modal-container-');
  4860.         i.push(DV);
  4861.         i.push('" class="pr-modal-container"></div><a class="pr-close" href="#" onclick="POWERREVIEWS.display.hideModal(\'');
  4862.         i.push(DV);
  4863.         i.push("'); return false;\"><span>close</span></a>");
  4864.         return i.join("");
  4865.     }
  4866.     var Ck = 0;
  4867.     var Au = false;
  4868.     function Cw(DW, DY) {
  4869.         if (Bc(DW, DY)) {
  4870.             BW(DW, DY);
  4871.             var DX = C8(M("pr_page_id", DY));
  4872.             var DV = Z("pr_locale", DY);
  4873.             var Da = "pr-snippet-" + DX;
  4874.             var i = false;
  4875.             Ck++;
  4876.             if (document.getElementById(Da)) {
  4877.                 Bv(DX, DV, Da, i, DY);
  4878.             } else {
  4879.                 var DZ = "pr-snippet-" + DX + "-" + Ck;
  4880.                 DW.write('<div id="' + DZ + '" class="pr-snippet"></div>');
  4881.                 Bv(DX, DV, DZ, i, DY);
  4882.             }
  4883.             if (!Au) {
  4884.                 setTimeout(function() {
  4885.                     DE(DY);
  4886.                 }, 3000);
  4887.                 Au = true;
  4888.             }
  4889.         }
  4890.     }
  4891.     F.display.snippet = Cw;
  4892.     window.snippet = Cw;
  4893.     gFlagSnippetInitFinished = false;
  4894.     function BW(i, DV) {
  4895.         if (gFlagSnippetInitFinished) {
  4896.             return;
  4897.         }
  4898.         gFlagSnippetInitFinished = true;
  4899.     }
  4900.     function DE(i) {
  4901.         r({
  4902.             "type": "snippet",
  4903.             "count": Ck
  4904.         }, i);
  4905.     }
  4906.     function Cg(i, DV) {}
  4907.     function Bs(DV) {
  4908.         var i = "http://assets.pinterest.com/js/pinit.js";
  4909.         function DW() {
  4910.             var DX = document.createElement("script");
  4911.             DX.setAttribute("type", "text/javascript");
  4912.             DX.setAttribute("src", i);
  4913.             document.getElementsByTagName("body")[0].appendChild(DX);
  4914.         }
  4915.         if (document.getElementById(DV)) {
  4916.             DW();
  4917.         } else {
  4918.             setTimeout(function() {
  4919.                 Bs(DV);
  4920.             }, 500);
  4921.         }
  4922.     }
  4923.     function CA(i) {
  4924.         return i + "-google-plus-one";
  4925.     }
  4926.     function Br(i) {
  4927.         return i + "-pinterest-pin-it";
  4928.     }
  4929.     function Bv(DW, DV, DY, i, DX) {
  4930.         CJ(DW, DV, function(Da) {
  4931.             var Dh = M("pr_snippet_min_reviews", DX);
  4932.             var Dd = 0;
  4933.             var De = 0;
  4934.             var Dj = "";
  4935.             var Dg = "";
  4936.             var Di = DY;
  4937.             var Dc = null;
  4938.             var DZ = null;
  4939.             var Db = function() {
  4940.                 if (Dh <= Dd) {
  4941.                     BG(DY, H(DW, Dd, De, Dc, DZ, Dj, Dg, i, Di, DV, DX), function() {
  4942.                         Cg(CA(Di, DX));
  4943.                         B8(DW, DV, false, DX);
  4944.                     });
  4945.                 }
  4946.             };
  4947.             if (Da) {
  4948.                 Dj = Da.image_url || Da.image_uri;
  4949.                 Dg = Da.name;
  4950.                 if (Da.reviews) {
  4951.                     Dd = Da.reviews.review_count;
  4952.                     De = Da.reviews.avg;
  4953.                 }
  4954.             }
  4955.             var Df = F.common.get("pr_snippet_style") || "LEGACY";
  4956.             if (Df !== "LEGACY" && Dd > 0) {
  4957.                 Cv(DW, DV, function(Dk) {
  4958.                     Dc = Dk.b || null;
  4959.                     DZ = Da.reviews.review_ratings;
  4960.                     Db();
  4961.                 }, DX);
  4962.             } else {
  4963.                 Db();
  4964.             }
  4965.         }, DX);
  4966.     }
  4967.     function H(Di, i, Dh, Dt, Dd, Ds, Db, Dq, DX, Dl, DY) {
  4968.         var Dn = F.common.get("pr_snippet_style") || "LEGACY";
  4969.         if (Dn !== "LEGACY") {
  4970.             var Di = M("pr_page_id", DY);
  4971.             var DW = C8(Di);
  4972.             var Dl = Z("pr_locale", DY);
  4973.             var Do = "engine-" + DW + "-" + Dl;
  4974.             var DV = function() {
  4975.                 if (F.display.renderSnippet) {
  4976.                     F.display.renderSnippet(DX, {
  4977.                         count: i,
  4978.                         rating: Dh,
  4979.                         bottomLine: Dt,
  4980.                         reviewRatings: Dd,
  4981.                         key: Do
  4982.                     });
  4983.                 }
  4984.             };
  4985.             if (!POWERREVIEWS.config.is_ui_library_initialized) {
  4986.                 F.common.getCallbacks()[DX + "-UI-LIBRARY-ONLOAD"] = DV;
  4987.             } else {
  4988.                 DV();
  4989.             }
  4990.             return;
  4991.         } else {
  4992.             var Dg = [];
  4993.             var DZ = N(M("pr_page_id", DY), DY);
  4994.             var Dm = M("pr_read_review", DY);
  4995.             var Dj = U(Dh);
  4996.             var Dw = Math.round(Dh);
  4997.             var Da = "";
  4998.             var Dv = "";
  4999.             var Dr = M("pr_snippet_star_click", DY);
  5000.             if (Dr) {
  5001.                 Da = " cursor:pointer;";
  5002.                 Dv = ' onclick="' + Dr + '"';
  5003.             }
  5004.             var Du = ["Got it? Rate it.", "Not good", "Needs that special something", "Average, ordinary", "That's good stuff", "Perfect. It doesn't get any better"];
  5005.             var Dk = M("pr_facebook_like_button_url", DY);
  5006.             if (Dk == null) {
  5007.                 Dk = document.URL;
  5008.             }
  5009.             Dk = BI(Dk);
  5010.             if (Dk == "") {
  5011.                 Dq = false;
  5012.             }
  5013.             var Df = window.location.protocol;
  5014.             var Dc = false && !M("pr_suppress_google_plus_one", DY);
  5015.             var De = false && Ds && Db;
  5016.             var Dp = AM(Ds);
  5017.             Dg.push('<div class="pr-snippet-wrapper"><div class="pr-snippet-stars"><div title="');
  5018.             Dg.push(Du[Dw]);
  5019.             Dg.push('" style="background-position: 0px ');
  5020.             Dg.push(Dj * -36);
  5021.             Dg.push("px;");
  5022.             Dg.push(Da);
  5023.             Dg.push('" class="pr-stars pr-stars-small ');
  5024.             Dg.push(BP[Dj].small);
  5025.             Dg.push('"');
  5026.             Dg.push(Dv);
  5027.             Dg.push('>&nbsp;</div><span class="pr-snippet-rating-decimal pr-rounded">');
  5028.             Dg.push((Dh * 10) % 10 == 0 ? Dh + ".0" : Dh);
  5029.             Dg.push("</span></div>");
  5030.             if (i == 0) {
  5031.                 Dg.push('<p class="pr-snippet-review-count">');
  5032.                 Dg.push("(No reviews)");
  5033.                 Dg.push("</p>");
  5034.             } else {
  5035.                 if (i == 1) {
  5036.                     Dg.push('<p class="pr-snippet-review-count">');
  5037.                     Dg.push("(1 review)");
  5038.                     Dg.push("</p>");
  5039.                 } else {
  5040.                     Dg.push('<p class="pr-snippet-review-count">');
  5041.                     Dg.push("({0} reviews)".replace("{0}", i));
  5042.                     Dg.push("</p>");
  5043.                 }
  5044.             }
  5045.             Dg.push('<div class="pr-snippet-read-write">');
  5046.             if (i > 0) {
  5047.                 if (Dm) {
  5048.                     if (i == 1) {
  5049.                         Dg.push('<div class="pr-snippet-read-reviews"><a href="');
  5050.                         Dg.push(Dm);
  5051.                         Dg.push('" data-pr-event="snippet-read-reviews" class="pr-snippet-link" id="pr-snippet-read-link-');
  5052.                         Dg.push(Di);
  5053.                         Dg.push('">');
  5054.                         Dg.push("Read <span>1</span> Review");
  5055.                         Dg.push("</a></div>");
  5056.                     } else {
  5057.                         Dg.push('<div class="pr-snippet-read-reviews"><a href="');
  5058.                         Dg.push(Dm);
  5059.                         Dg.push('" data-pr-event="snippet-read-reviews" class="pr-snippet-link" id="pr-snippet-read-link-');
  5060.                         Dg.push(Di);
  5061.                         Dg.push('">');
  5062.                         Dg.push("Read <span>{0}</span> Reviews".replace("{0}", i));
  5063.                         Dg.push("</a></div>");
  5064.                     }
  5065.                 }
  5066.                 if (DZ) {
  5067.                     Dg.push('<div class="pr-snippet-write-review"><a href="');
  5068.                     Dg.push(DZ);
  5069.                     Dg.push('" data-pr-event="snippet-write-review" class="pr-snippet-link">');
  5070.                     Dg.push("Write a Review");
  5071.                     Dg.push("</a></div>");
  5072.                 }
  5073.             } else {
  5074.                 if (DZ) {
  5075.                     Dg.push('<div class="pr-snippet-write-first-review"><p>');
  5076.                     Dg.push("Be the first to");
  5077.                     Dg.push('</p> <a href="');
  5078.                     Dg.push(DZ);
  5079.                     Dg.push('" data-pr-event="snippet-write-review" class="pr-snippet-link">');
  5080.                     Dg.push("Write a Review");
  5081.                     Dg.push("</a></div>");
  5082.                 }
  5083.             }
  5084.             Dg.push('<div class="pr-clear"></div></div><div class="pr-clear"></div><div class="pr-snippet-social-bar">');
  5085.             if (Dc) {
  5086.                 Dg.push('<div class="pr-google-plus-one"><div id="');
  5087.                 Dg.push(CA(DX));
  5088.                 Dg.push('"></div></div>');
  5089.             }
  5090.             if (Dq) {
  5091.                 Dg.push('<div class="pr-facebook-like-snippet"><iframe src="');
  5092.                 Dg.push(Df);
  5093.                 Dg.push("//www.facebook.com/plugins/like.php?href=");
  5094.                 Dg.push(Dk);
  5095.                 Dg.push('&layout=button_count&show_faces=false" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:100px; height:21px;" allowTransparency="true"></iframe></div>');
  5096.             }
  5097.             if (De) {
  5098.                 Dg.push('<div class="pr-pinterest-pin-it" data-pr-event="snippet-pinterest-pinit-button" id="');
  5099.                 Dg.push(Br(DX));
  5100.                 Dg.push('"><a href="http://pinterest.com/pin/create/button/?url=');
  5101.                 Dg.push(BI(document.URL));
  5102.                 Dg.push("&media=");
  5103.                 Dg.push(Dp);
  5104.                 Dg.push("&description=");
  5105.                 Dg.push(BI(Db));
  5106.                 Dg.push('" class="pin-it-button" count-layout="horizontal"><img border="0" src="//assets.pinterest.com/images/PinExt.png" title="Pin It" /></a></div>');
  5107.             }
  5108.             Dg.push('<div class="pr-clear"></div></div></div>');
  5109.             return Dg.join("");
  5110.         }
  5111.     }
  5112.     function B8(DV, i, DX, DW) {
  5113.         B2.userTrackingDomain = M("pr_tracking_domain", DW);
  5114.         var DY = document.getElementById("pr-snippet-" + DV + "-" + Ck);
  5115.         if (DY) {
  5116.             C4.trackClickEvents(DY, "rd", {
  5117.                 locale: M("pr_locale", DW),
  5118.                 pageId: M("pr_page_id", DW),
  5119.                 merchantId: M("pr_merchant_id", DW),
  5120.                 siteId: M("pr_site_id", DW),
  5121.                 engineVersion: "2",
  5122.                 inlineSEO: DX
  5123.             });
  5124.             C4.trackVisibility(DY, "rd", {
  5125.                 eventType: "snippet-visible",
  5126.                 locale: M("pr_locale", DW),
  5127.                 pageId: M("pr_page_id", DW),
  5128.                 merchantId: M("pr_merchant_id", DW),
  5129.                 siteId: M("pr_site_id", DW),
  5130.                 engineVersion: "2",
  5131.                 inlineSEO: DX
  5132.             });
  5133.         }
  5134.     }
  5135.     var Cy = 0;
  5136.     function BT(DV, DX) {
  5137.         if (Bc(DV, DX)) {
  5138.             var DW = C8(M("pr_page_id", DX));
  5139.             var i = Z("pr_locale", DX);
  5140.             var DZ = "pr-summary-snippet-" + DW;
  5141.             if (document.getElementById(DZ)) {
  5142.                 Cc(DW, i, DZ, DX);
  5143.             } else {
  5144.                 var DY = "pr-summary-snippet-" + DW + "-" + (Cy++);
  5145.                 DV.write('<div id="' + DY + '" class="pr-summary-snippet"></div>');
  5146.                 Cc(DW, i, DY, DX);
  5147.             }
  5148.         }
  5149.     }
  5150.     F.display.summarySnippet = BT;
  5151.     function Cc(DV, i, DX, DW) {
  5152.         CJ(DV, i, function(Db) {
  5153.             var DY = M("pr_snippet_min_reviews", DW);
  5154.             var Da = 0;
  5155.             if (Db && Db.reviews) {
  5156.                 Da = Db.reviews.review_count;
  5157.                 if (DY <= Da) {
  5158.                     var DZ = b(DW) + "/content/" + p(DV) + "/" + DV + "-" + i + "-rollup.js";
  5159.                     if (M("pr_simplified_zip")) {
  5160.                         DZ = b(DW) + "/content/" + i + "/" + p(DV) + "/" + i + "-rollup.js";
  5161.                     }
  5162.                     Ce(DZ, null, function(Dc) {
  5163.                         if (Dc.rollup) {
  5164.                             BG(DX, A8(Dc.rollup, DV, i, DW));
  5165.                         }
  5166.                     }, DW);
  5167.                 }
  5168.             }
  5169.         }, DW);
  5170.     }
  5171.     function A8(Db, DW, DV, DZ) {
  5172.         var i = [];
  5173.         var DY = Bw(Db);
  5174.         var DX = DY.histogramDisplayGroupList;
  5175.         var Da = DY.subratingGroupList;
  5176.         i.push('<div class="pr-summary-snippet-body">');
  5177.         if (DX.length) {
  5178.             i.push(AT(DX, DV, DZ));
  5179.         }
  5180.         if (Da.length) {
  5181.             i.push(Co(Da, DV, DZ));
  5182.         }
  5183.         i.push('</div><div class="pr-clear"></div>');
  5184.         return i.join("");
  5185.     }
  5186.     function CG(DW, DY) {
  5187.         if (Bc(DW, DY)) {
  5188.             var DX = C8(M("pr_page_id", DY));
  5189.             var DV = Z("pr_locale", DY);
  5190.             var DZ = Ay(DX);
  5191.             var i = AW(DX, DV);
  5192.             Cd(i, DY);
  5193.             if (!document.getElementById(DZ)) {
  5194.                 DW.write('<div id="' + DZ + '"></div>');
  5195.                 DJ(DZ, DX, DV, 1, DY, function() {
  5196.                     Bn("p", "prPaTotalsLabel");
  5197.                     Aa(DX, DY);
  5198.                     Y(DX, DY);
  5199.                     DF(DX, DV, false, DY);
  5200.                     BV(DX, DV, false, DY);
  5201.                 });
  5202.             } else {
  5203.                 Bn("p", "prPaTotalsLabel");
  5204.                 Aa(DX, DY);
  5205.                 Y(DX, DY);
  5206.                 DF(DX, DV, true, DY);
  5207.                 BV(DX, DV, true, DY);
  5208.             }
  5209.         }
  5210.     }
  5211.     F.display.productAnswers = CG;
  5212.     window.productAnswers = CG;
  5213.     function C(DY, DW) {
  5214.         var DV = C8(M("pr_page_id", DW));
  5215.         var i = Z("pr_locale", DW);
  5216.         var DX = Ay(DV);
  5217.         setTimeout(function() {
  5218.             DJ(DX, DV, i, DY, DW, function() {
  5219.                 Bn("p", "prPaTotalsLabel");
  5220.                 Aa(DV, DW);
  5221.                 Y(DV, DW);
  5222.                 DF(DV, i, true, DW);
  5223.             });
  5224.         }, 0);
  5225.     }
  5226.     F.display.productAnswersPage = C;
  5227.     function DJ(DV, DW, i, DY, DX, DZ) {
  5228.         CJ(DW, i, function(Dh) {
  5229.             var Da = 0
  5230.               , Db = 0;
  5231.             var Dg = ""
  5232.               , De = {};
  5233.             if (Dh) {
  5234.                 Dg = Dh.name;
  5235.                 De = Dh.vNames;
  5236.                 if (Dh.questions) {
  5237.                     Da = Dh.questions.question_count;
  5238.                     Db = Dh.questions.answer_count;
  5239.                 }
  5240.             }
  5241.             var Dd = M("pr_questions_per_page", DX);
  5242.             var Df = function(Di) {
  5243.                 BG(DV, BZ(DW, i, Da, Db, DY, "", "", Dd, Di, Dg, De, AW(DW, i), DX), function() {
  5244.                     DZ(Di);
  5245.                 });
  5246.             };
  5247.             if (Da > 0) {
  5248.                 var Dc = b(DX) + "/content/" + p(DW) + "/" + DW + "-" + i + "-" + DY + "-questions.js";
  5249.                 if (M("pr_simplified_zip")) {
  5250.                     Dc = b(DX) + "/content/" + i + "/" + p(DW) + "/" + i + "-" + DY + "-questions.js";
  5251.                 }
  5252.                 Ce(Dc, null, function(Di) {
  5253.                     Df(Di);
  5254.                 }, DX);
  5255.             } else {
  5256.                 Df([]);
  5257.             }
  5258.         }, DX);
  5259.     }
  5260.     function DB(DV, DX) {
  5261.         var DW = M("pr_page_id", DX);
  5262.         var i = M("pr_locale", DX);
  5263.         var DY = function(Da) {
  5264.             if (!document.getElementById("pr-wyb-display")) {
  5265.                 DV.write('<div id="pr-wyb-display"></div>');
  5266.             }
  5267.             if (!document.getElementById("pwr-ui")) {
  5268.                 var DZ = F.cloneObject(DX);
  5269.                 DZ.pr_war_server_path = "3.0";
  5270.                 (function(De, Df, Db, Dd, Dc) {
  5271.                     De.PowerReviews = {};
  5272.                     Dd = Df.createElement(Db);
  5273.                     Dc = Df.getElementsByTagName("head")[0];
  5274.                     Dd.src = F.getWARServerPath(DZ) + "/ui.js";
  5275.                     Dd.onload = function() {
  5276.                         window.POWERREVIEWS.display.renderWYBDisplay(Da);
  5277.                     }
  5278.                     ;
  5279.                     Dd.id = "pwr-ui";
  5280.                     Dc.appendChild(Dd, Dc);
  5281.                 }(window, document, "script"));
  5282.             } else {
  5283.                 POWERREVIEWS.display.renderWYBDisplay(Da);
  5284.             }
  5285.         };
  5286.         CJ(DW, i, function(De) {
  5287.             var DZ = 0
  5288.               , Da = 0;
  5289.             var Dd = ""
  5290.               , Dc = {};
  5291.             if (De) {
  5292.                 Dd = De.name;
  5293.                 Dc = De.vNames;
  5294.                 if (De.questions) {
  5295.                     DZ = De.questions.question_count;
  5296.                     Da = De.questions.answer_count;
  5297.                 }
  5298.             }
  5299.             var Db = M("pr_questions_per_page", DX);
  5300.             var Dg = 0;
  5301.             function Df(Di, Dj) {
  5302.                 var Dh = b(DX) + "/content/" + p(DW) + "/" + DW + "-" + i + "-" + Di + "-questions.js";
  5303.                 if (M("pr_simplified_zip")) {
  5304.                     Dh = b(DX) + "/content/" + i + "/" + p(DW) + "/" + i + "-" + Di + "-questions.js";
  5305.                 }
  5306.                 Ce(Dh, null, function(Dm) {
  5307.                     Dg += Dm.length;
  5308.                     var Dl = null;
  5309.                     for (questionIdx = 0; questionIdx < Dm.length; questionIdx++) {
  5310.                         var Dk = Dm[questionIdx];
  5311.                         if (Dk.q.eid === "whydidyoubuy") {
  5312.                             Dl = Dk.q;
  5313.                             break;
  5314.                         }
  5315.                     }
  5316.                     if (!!Dl) {
  5317.                         Dj(Dl);
  5318.                     } else {
  5319.                         if (Dg < DZ) {
  5320.                             Df((Di + 1), Dj);
  5321.                         } else {
  5322.                             Dj({
  5323.                                 as: []
  5324.                             });
  5325.                         }
  5326.                     }
  5327.                 }, DX);
  5328.             }
  5329.             if (DZ > 0) {
  5330.                 Df(1, DY);
  5331.             } else {
  5332.                 DY({
  5333.                     as: []
  5334.                 });
  5335.             }
  5336.         }, DX);
  5337.     }
  5338.     F.display.whydYouBuy = DB;
  5339.     function AW(DV, i) {
  5340.         var DW = C8(DV);
  5341.         return "engine-answers-" + DW + "-" + i;
  5342.     }
  5343.     function Ay(i) {
  5344.         var DV = C8(i);
  5345.         return "prPaContainer" + DV;
  5346.     }
  5347.     function Aa(DV, DW) {
  5348.         var DY = C0(document, "a", "prPaAskQuestionLnk");
  5349.         if (DY.length > 0) {
  5350.             var Da = AX(DV, DW);
  5351.             for (var DX = 0; DX < DY.length; DX++) {
  5352.                 var DZ = DY[DX];
  5353.                 if (Da) {
  5354.                     DZ.href = Da;
  5355.                     DZ.style.display = "";
  5356.                 }
  5357.             }
  5358.         } else {
  5359.             setTimeout(function() {
  5360.                 Aa(DV, DW);
  5361.             }, 100);
  5362.         }
  5363.     }
  5364.     function Y(DX, DY) {
  5365.         var DW = C0(document, "p", "prPaAnswerLnk");
  5366.         if (DW.length > 0) {
  5367.             for (var DZ = 0; DZ < DW.length; DZ++) {
  5368.                 var Db = DW[DZ];
  5369.                 var Da = Db.childNodes[Db.childNodes.length - 1];
  5370.                 var DV = A3(DX, Da.id.substring(13), DY);
  5371.                 if (DV) {
  5372.                     Da.href = DV;
  5373.                 }
  5374.                 Db.style.display = "";
  5375.             }
  5376.         } else {
  5377.             setTimeout(function() {
  5378.                 Y(DX, DY);
  5379.             }, 100);
  5380.         }
  5381.     }
  5382.     function DF(DV, i, DX, DW) {
  5383.         B2.userTrackingDomain = M("pr_tracking_domain", DW);
  5384.         var DY = document.getElementById(Ay(DV));
  5385.         if (DY) {
  5386.             C4.trackClickEvents(DY, "ab", {
  5387.                 locale: M("pr_locale", DW),
  5388.                 pageId: M("pr_page_id", DW),
  5389.                 merchantId: M("pr_merchant_id", DW),
  5390.                 siteId: M("pr_site_id", DW),
  5391.                 inlineSEO: DX
  5392.             });
  5393.             C4.trackVisibility(DY, "ab", {
  5394.                 eventType: "product-answers-visible",
  5395.                 locale: M("pr_locale", DW),
  5396.                 pageId: M("pr_page_id", DW),
  5397.                 merchantId: M("pr_merchant_id", DW),
  5398.                 siteId: M("pr_site_id", DW),
  5399.                 inlineSEO: DX
  5400.             });
  5401.         }
  5402.     }
  5403.     function BV(DV, i, DX, DW) {
  5404.         CJ(DV, i, function(Da) {
  5405.             var DY, DZ;
  5406.             if (Da && Da.questions) {
  5407.                 DY = Da.questions.question_count;
  5408.                 DZ = Da.questions.answer_count;
  5409.             }
  5410.             var Db = document.getElementById(Ay(DV));
  5411.             if (Db) {
  5412.                 C4.trackPageview("ab", {
  5413.                     locale: M("pr_locale", DW),
  5414.                     pageId: M("pr_page_id", DW),
  5415.                     merchantId: M("pr_merchant_id", DW),
  5416.                     siteId: M("pr_site_id", DW),
  5417.                     inlineSEO: DX,
  5418.                     questionCount: DY,
  5419.                     answerCount: DZ,
  5420.                     visible: C4.isElementVisible(Db)
  5421.                 });
  5422.             }
  5423.         }, DW);
  5424.     }
  5425.     function AX(i, DV) {
  5426.         return AS(M("pr_ask_question", DV), "~~~PAGE_ID~~~", i);
  5427.     }
  5428.     function A3(DV, i, DW) {
  5429.         return AS(AS(AS(M("pr_answer_question", DW), "~~~PAGE_ID~~~", DV), "~~~QUESTION_ID~~~", i), "@@@QUESTION_ID@@@", i);
  5430.     }
  5431.     function Cm(i) {
  5432.         return i.replace(/((ftp|http|https):\/\/(\w+:{0,1}\w*@)?([^<\s]+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?)/g, '<a rel="nofollow" target="_blank" href="$1">$1</a>');
  5433.     }
  5434.     function BZ(Dk, Do, De, DW, Ds, Da, Dh, Dt, Dw, Dg, Dc, Dr, Db) {
  5435.         var Di = [];
  5436.         var Dd = (Ds - 1) * Dt;
  5437.         var DZ = Dd + Dt - 1;
  5438.         if (DZ > De - 1) {
  5439.             DZ = De - 1;
  5440.         }
  5441.         Di.push('<div class="prPaContainer prPaNonempty"><a name="QAHeader"></a><div class="prPaHeader"><p class="prPaQuestionPromptIntro">');
  5442.         Di.push("Do you have questions about this product?");
  5443.         if (De > 0 && a && a["answer"]) {
  5444.             Di.push('<span class="prPaQuestionPromptIntroSLPoints">');
  5445.             Di.push("(earn points for answers!)");
  5446.             Di.push("</span>");
  5447.         }
  5448.         Di.push("</p><span>");
  5449.         Di.push('</span><div class="prPaQuestionSubhead"><a class="prPaAskQuestionLnk" style="display:none;" href="#" data-pr-event="header-ask-question-button"><span>');
  5450.         Di.push("Ask a question");
  5451.         Di.push('</span></a><p class="prPaQuestionPrompt">');
  5452.         Di.push("Get answers from in-house experts.");
  5453.         Di.push("</p></div>");
  5454.         if (De > 0) {
  5455.             Di.push('<div class="prPaCounts">');
  5456.             Di.push(De == 1 ? "1 Question" : De + " Questions");
  5457.             Di.push(" | ");
  5458.             Di.push(DW == 1 ? "1 Answer" : DW + " Answers");
  5459.             Di.push("</div>");
  5460.         }
  5461.         Di.push("</div>");
  5462.         if (De > 0) {
  5463.             Di.push('<div class="prPaPagination"><span class="prPaPageCount">');
  5464.             if (Dd == DZ) {
  5465.                 Di.push("Displaying question");
  5466.                 Di.push(" <strong>");
  5467.                 Di.push((Dd + 1));
  5468.                 Di.push("</strong>");
  5469.             } else {
  5470.                 Di.push("Displaying questions");
  5471.                 Di.push(" <strong>");
  5472.                 Di.push((Dd + 1));
  5473.                 Di.push("-");
  5474.                 Di.push((DZ + 1));
  5475.                 Di.push("</strong>");
  5476.             }
  5477.             Di.push("</span>");
  5478.             if (De > Dt) {
  5479.                 Di.push('<span class="prPaPageNav">');
  5480.                 if (Dd > 0) {
  5481.                     Di.push('<a data-pr-event="header-page-prev-link"onclick="POWERREVIEWS.display.productAnswersPage(');
  5482.                     Di.push(Ds - 1);
  5483.                     Di.push(",POWERREVIEWS.common.getOptions('");
  5484.                     Di.push(Dr);
  5485.                     Di.push('\'));return false;"href="');
  5486.                     Di.push(Da.replace("~~~QUESTION_PAGE~~~", Ds - 1));
  5487.                     Di.push('">&laquo; ');
  5488.                     Di.push("Previous");
  5489.                     Di.push("</a>");
  5490.                 } else {
  5491.                     Di.push("Previous");
  5492.                 }
  5493.                 Di.push(" | ");
  5494.                 if (DZ < De - 1) {
  5495.                     Di.push('<a data-pr-event="header-page-next-link"onclick="POWERREVIEWS.display.productAnswersPage(');
  5496.                     Di.push(Ds + 1);
  5497.                     Di.push(",POWERREVIEWS.common.getOptions('");
  5498.                     Di.push(Dr);
  5499.                     Di.push('\'));return false;"href="');
  5500.                     Di.push(Dh.replace("~~~QUESTION_PAGE~~~", Ds + 1));
  5501.                     Di.push('">');
  5502.                     Di.push("Next");
  5503.                     Di.push(" &raquo;</a>");
  5504.                 } else {
  5505.                     Di.push("Next");
  5506.                 }
  5507.                 Di.push("</span>");
  5508.             }
  5509.             Di.push("</div>");
  5510.         }
  5511.         Di.push('<ul class="prPaQaContainer">');
  5512.         for (var Dp = 0; Dp < Dw.length; Dp++) {
  5513.             var Dj = Dw[Dp];
  5514.             Dj = Dj.q || Dj;
  5515.             var DY = Dj.as ? Dj.as.length : 0;
  5516.             var Df = (AL(Dj.rd, Do, Db) || Dj.dd);
  5517.             var Dv = "Asked on <strong>" + Df + "</strong> by <strong>" + (Dj.n || "Anonymous") + "</strong>" + (Dj.l ? " from<strong> " + Dj.l + "</strong>" : "");
  5518.             var DV = Dj.pv && Dc && Dc[Dj.pv];
  5519.             Di.push('<li><div class="prPaQaDialog">');
  5520.             if (DV) {
  5521.                 Di.push('<div class="prPaQaVariantName">');
  5522.                 Di.push(DV);
  5523.                 Di.push("</div>");
  5524.             }
  5525.             Di.push('<div class="prPaQ"><p class="paPrQaPrefix">');
  5526.             Di.push("Q:");
  5527.             Di.push(" </p> ");
  5528.             Di.push(AE(Dj.t));
  5529.             Di.push('</div><div class="prPaByLine prPaAddBorder">');
  5530.             Di.push(Dv);
  5531.             Di.push('</div></div><p class="prPaAnswerLnk" style="display:none;" data-pr-event="product-answers-answer-question-');
  5532.             Di.push(Dj.id);
  5533.             Di.push('">');
  5534.             Di.push("Know the answer?");
  5535.             Di.push(' <a id="prPaQuestion-');
  5536.             Di.push(Dj.id);
  5537.             Di.push('" href="#">');
  5538.             Di.push("Answer this question");
  5539.             Di.push('</a></p><p class="prPaTotalsLabel" data-pr-event="product-answers-label-');
  5540.             Di.push(Dj.id);
  5541.             Di.push('">');
  5542.             Di.push(DY == 1 ? "1 answer" : DY + " answers");
  5543.             if (DY == 0 && a && a["first_answer"]) {
  5544.                 Di.push('<span class="prPaSLFirstAnswer">');
  5545.                 Di.push("(earn bonus points)");
  5546.                 Di.push("</span>");
  5547.             }
  5548.             Di.push('</p><div class="prPaAnswerCont">');
  5549.             if (DY > 0) {
  5550.                 Di.push('<ul class="prPaAnswerList">');
  5551.                 for (var Dn = 0; Dn < Dj.as.length; Dn++) {
  5552.                     var Dm = Dj.as[Dn];
  5553.                     var Dl = (AL(Dm.rd, Do, Db) || Dm.dd);
  5554.                     var Du = "Answered on<strong> " + Dl + "</strong> by";
  5555.                     if (Dm.n) {
  5556.                         if (false && Dm.pi) {
  5557.                             Du += '<a data-pr-event="product-answers-question-author-link-' + Dj.id + '" class="prReviewAuthorProfileLnk" href="#" onclick="POWERREVIEWS.display.showIntegratedProfile(' + Dm.pi + ", '" + Do + "', POWERREVIEWS.common.getOptions('" + Dr + "')); return false;\"/> ";
  5558.                             Du += Dm.n;
  5559.                             Du += "</a>";
  5560.                         } else {
  5561.                             Du += "<strong> " + Dm.n + "</strong>";
  5562.                         }
  5563.                     } else {
  5564.                         Du += "<strong> Anonymous</strong>";
  5565.                     }
  5566.                     if (Dm.l) {
  5567.                         Du += " from <strong>" + Dm.l + "</strong>";
  5568.                     }
  5569.                     if (Dn == Dj.as.length - 1) {
  5570.                         var DX = '<div class="prPaAnswerDialog prPaLastAnswer">';
  5571.                     } else {
  5572.                         var DX = '<div class="prPaAnswerDialog prPaAddBorder">';
  5573.                     }
  5574.                     var Dq = DA(Dm.cb);
  5575.                     Di.push("<li>");
  5576.                     Di.push(DX);
  5577.                     if (Dm.vp) {
  5578.                         Di.push(' <div class="prPaBadgeCase"><p class="prPaVerifiedPurchaser">');
  5579.                         Di.push("VERIFIED BUYER");
  5580.                         Di.push("</p></div> ");
  5581.                     }
  5582.                     if (Dq) {
  5583.                         Di.push('<div class="prPaBadgeCase">');
  5584.                         Di.push(Ae(Dq, Do, Db));
  5585.                         Di.push("</div>");
  5586.                     } else {
  5587.                         if (Dm.ea) {
  5588.                             Di.push(' <div class="prPaBadgeCase"><p class="prPaVerifiedMerchant">');
  5589.                             Di.push("CUSTOMER CARE");
  5590.                             Di.push("</p></div> ");
  5591.                         }
  5592.                     }
  5593.                     Di.push('    <p class="prPaA"><p class="paPrQaPrefix">');
  5594.                     Di.push("A:");
  5595.                     Di.push("</p> ");
  5596.                     Di.push(AE(Dm.ea ? Cm("" + Dm.t) : Dm.t));
  5597.                     Di.push('</p><div class="prPaByLine">');
  5598.                     Di.push(Du);
  5599.                     Di.push("</div></div></li>");
  5600.                 }
  5601.                 Di.push("</ul>");
  5602.             }
  5603.             Di.push("</div></li>");
  5604.         }
  5605.         Di.push("</ul>");
  5606.         if (De > 0) {
  5607.             Di.push('<div class="prPaPagination"><span class="prPaPageCount">');
  5608.             if (Dd == DZ) {
  5609.                 Di.push("Displaying question");
  5610.                 Di.push(" <strong>");
  5611.                 Di.push((Dd + 1));
  5612.                 Di.push("</strong>");
  5613.             } else {
  5614.                 Di.push("Displaying questions");
  5615.                 Di.push(" <strong>");
  5616.                 Di.push((Dd + 1));
  5617.                 Di.push("-");
  5618.                 Di.push((DZ + 1));
  5619.                 Di.push("</strong>");
  5620.             }
  5621.             Di.push("</span>");
  5622.             if (De > Dt) {
  5623.                 Di.push('<span class="prPaPageNav">');
  5624.                 if (Dd > 0) {
  5625.                     Di.push('<a data-pr-event="footer-page-prev-link"onclick="POWERREVIEWS.display.productAnswersPage(');
  5626.                     Di.push(Ds - 1);
  5627.                     Di.push(",POWERREVIEWS.common.getOptions('");
  5628.                     Di.push(Dr);
  5629.                     Di.push("'));location.hash = '");
  5630.                     Di.push(Ay(Dk));
  5631.                     Di.push('\';return false;"href="');
  5632.                     Di.push(Da.replace("~~~QUESTION_PAGE~~~", Ds - 1));
  5633.                     Di.push('">&laquo; ');
  5634.                     Di.push("Previous");
  5635.                     Di.push("</a>");
  5636.                 } else {
  5637.                     Di.push("Previous");
  5638.                 }
  5639.                 Di.push(" | ");
  5640.                 if (DZ < De - 1) {
  5641.                     Di.push('<a data-pr-event="footer-page-next-link"onclick="POWERREVIEWS.display.productAnswersPage(');
  5642.                     Di.push(Ds + 1);
  5643.                     Di.push(",POWERREVIEWS.common.getOptions('");
  5644.                     Di.push(Dr);
  5645.                     Di.push("'));location.hash = '");
  5646.                     Di.push(Ay(Dk));
  5647.                     Di.push('\';return false;"href="');
  5648.                     Di.push(Dh.replace("~~~QUESTION_PAGE~~~", Ds + 1));
  5649.                     Di.push('">');
  5650.                     Di.push("Next");
  5651.                     Di.push(" &raquo;</a>");
  5652.                 } else {
  5653.                     Di.push("Next");
  5654.                 }
  5655.                 Di.push("</span>");
  5656.             }
  5657.             Di.push("</div>");
  5658.         }
  5659.         Di.push('</div><div class="prPaFooter">');
  5660.         if (De > 0) {
  5661.             Di.push('<a class="prPaAskQuestionLnk" style="display:none;" href="#" data-pr-event="footer-ask-question-button"><span>');
  5662.             Di.push("Ask a question");
  5663.             Di.push('</span></a><p class="prPaQuestionPromptIntro">');
  5664.             Di.push("Do you have a question about this product?");
  5665.             Di.push("&nbsp;</p>");
  5666.         }
  5667.         Di.push("</div>");
  5668.         return Di.join("");
  5669.     }
  5670.     F.display.processProductAnswersTemplate = BZ;
  5671.     function AK(DW, DV) {
  5672.         var DZ = new Date((DW || "").replace(/-/g, "/").replace(/[TZ]/g, " "));
  5673.         var DX = new Date((DV || "").replace(/-/g, "/").replace(/[TZ]/g, " "));
  5674.         var DY = ((DX.getTime() - DZ.getTime()) / 1000);
  5675.         var i = Math.floor(DY / 86400);
  5676.         if (isNaN(i) || i < 0) {
  5677.             return "";
  5678.         } else {
  5679.             if (i == 0) {
  5680.                 if (DY == 1) {
  5681.                     return "1 second";
  5682.                 } else {
  5683.                     if (DY < 60) {
  5684.                         return "seconds";
  5685.                     } else {
  5686.                         if (DY < 120) {
  5687.                             return "1 minute";
  5688.                         } else {
  5689.                             if (DY < 3600) {
  5690.                                 return Math.floor(DY / 60) + " minutes";
  5691.                             } else {
  5692.                                 if (DY < 7200) {
  5693.                                     return "1 hour";
  5694.                                 } else {
  5695.                                     return Math.floor(DY / 3600) + " hours";
  5696.                                 }
  5697.                             }
  5698.                         }
  5699.                     }
  5700.                 }
  5701.             } else {
  5702.                 if (i == 1) {
  5703.                     return "1 day";
  5704.                 } else {
  5705.                     if (i < 7) {
  5706.                         return i + " days";
  5707.                     } else {
  5708.                         return Math.ceil(i / 7) + " weeks";
  5709.                     }
  5710.                 }
  5711.             }
  5712.         }
  5713.     }
  5714.     function g(DW) {
  5715.         var i = "prPaToggleClosed";
  5716.         var DV = DW.nextSibling;
  5717.         while (DV.nodeType != 1) {
  5718.             DV = DV.nextSibling;
  5719.         }
  5720.         DV.style.display = ((DV.style.display == "none") ? "block" : "none");
  5721.         if (DW.className.match(i)) {
  5722.             DP(DW, "prPaToggleClosed");
  5723.             DN(DW, "prPaToggleOpen");
  5724.         } else {
  5725.             if (DW.className == "") {
  5726.                 DP(DW, "prPaToggleClosed");
  5727.                 DN(DW, "prPaToggleOpen");
  5728.             } else {
  5729.                 DP(DW, "prPaToggleOpen");
  5730.                 DN(DW, "prPaToggleClosed");
  5731.             }
  5732.         }
  5733.     }
  5734.     function Bn(DV, DX) {
  5735.         var DZ = "prPaClicker";
  5736.         var DW = C0(document, DV, DX);
  5737.         for (var DY = 0; DY < DW.length; DY++) {
  5738.             DW[DY].className += " " + DZ;
  5739.             DW[DY].onclick = function() {
  5740.                 g(this);
  5741.             }
  5742.             ;
  5743.             g(DW[DY]);
  5744.         }
  5745.     }
  5746.     var c = 0;
  5747.     function T(DV, DX) {
  5748.         if (Bc(DV, DX)) {
  5749.             var DW = C8(M("pr_page_id", DX));
  5750.             var i = Z("pr_locale", DX);
  5751.             var DZ = "pr-pa-snippet-" + DW;
  5752.             if (document.getElementById(DZ)) {
  5753.                 B3(DW, i, DZ, DX);
  5754.             } else {
  5755.                 var DY = "pr-pa-snippet-" + DW + "-" + (++c);
  5756.                 DV.write('<div id="' + DY + '" class="pr-pa-snippet"></div>');
  5757.                 B3(DW, i, DY, DX);
  5758.             }
  5759.         }
  5760.     }
  5761.     F.display.productAnswersSnippet = T;
  5762.     window.productAnswersSnippet = T;
  5763.     function B3(DV, i, DX, DW) {
  5764.         CJ(DV, i, function(Da) {
  5765.             var DY = 0;
  5766.             var DZ = 0;
  5767.             if (Da && Da.questions) {
  5768.                 DY = Da.questions.question_count;
  5769.                 DZ = Da.questions.answer_count;
  5770.             }
  5771.             BG(DX, A5(DV, DY, DZ, i, DW), function() {
  5772.                 Bm(DV, i, false, DW);
  5773.             });
  5774.         }, DW);
  5775.     }
  5776.     function A5(DY, DW, DX, DV, DZ) {
  5777.         var i = [];
  5778.         i.push('<div class="pr-pa-snippet-wrapper"><p class="pr-pa-snippet-title">');
  5779.         i.push("Q&A");
  5780.         i.push('</p><p class="pr-pa-snippet-text">');
  5781.         i.push("Ask Questions, share answers");
  5782.         i.push('</p><div class="pr-pa-snippet-qa"><div class="pr-pa-snippet-read-questions"><p class="pr-pa-snippet-questions"><a data-pr-event="answers-snippet-read-questions" class="pr-snippet-link" href="');
  5783.         i.push(M("pr_read_qa", DZ));
  5784.         i.push('">');
  5785.         i.push(DW == 1 ? "<span>1</span> Question" : "<span>{0}</span> Questions".replace("{0}", DW));
  5786.         i.push('</a></p><p class="pr-pa-snippet-answers"><a data-pr-event="answers-snippet-read-answers" class="pr-snippet-link" href="');
  5787.         i.push(M("pr_read_qa", DZ));
  5788.         i.push('">');
  5789.         i.push(DX == 1 ? "<span>1</span> Answer" : "<span>{0}</span> Answers".replace("{0}", DX));
  5790.         i.push('</a></p></div><div class="pr-pa-snippet-ask-question"><a data-pr-event="answers-snippet-ask-a-question" class="pr-snippet-link" href="');
  5791.         i.push(M("pr_ask_question", DZ));
  5792.         i.push('">');
  5793.         i.push("Ask a Question");
  5794.         i.push('</a></div><div class="pr-clear"></div></div></div>');
  5795.         return i.join("");
  5796.     }
  5797.     function Bm(DW, DV, DY, DX) {
  5798.         B2.userTrackingDomain = M("pr_tracking_domain", DX);
  5799.         var i = document.getElementById("pr-pa-snippet-" + DW + "-" + c);
  5800.         if (i) {
  5801.             C4.trackClickEvents(i, "ab", {
  5802.                 locale: M("pr_locale", DX),
  5803.                 pageId: M("pr_page_id", DX),
  5804.                 merchantId: M("pr_merchant_id", DX),
  5805.                 siteId: M("pr_site_id", DX),
  5806.                 engineVersion: "2",
  5807.                 inlineSEO: DY
  5808.             });
  5809.             C4.trackVisibility(i, "ab", {
  5810.                 eventType: "answers-snippet-visible",
  5811.                 locale: M("pr_locale", DX),
  5812.                 pageId: M("pr_page_id", DX),
  5813.                 merchantId: M("pr_merchant_id", DX),
  5814.                 siteId: M("pr_site_id", DX),
  5815.                 engineVersion: "2",
  5816.                 inlineSEO: DY
  5817.             });
  5818.         }
  5819.     }
  5820.     function Bk(D5, Dk) {
  5821.         var D7 = window
  5822.           , Dc = D7.document
  5823.           , Di = Dc.location
  5824.           , Do = null
  5825.           , D6 = encodeURIComponent || escape
  5826.           , ED = decodeURIComponent || unescape
  5827.           , DY = Object.prototype.toString
  5828.           , Dg = 10
  5829.           , DW = "__pr." + parseInt(D5.merchantGroupId).toString(36)
  5830.           , DV = 60 * 60 * 24 * 365 * 2
  5831.           , D1 = "//t.powerreviews.com/t/v1.gif"
  5832.           , D0 = EA({
  5833.             event: "e",
  5834.             eventType: "et",
  5835.             userId: "uid",
  5836.             time: "t",
  5837.             locale: "l",
  5838.             merchantGroupId: "mgid",
  5839.             merchantId: "mid",
  5840.             pageId: "pid",
  5841.             siteId: "sid",
  5842.             pageUrl: "p",
  5843.             referrerUrl: "r",
  5844.             orderId: "oid",
  5845.             orderSubtotal: "os",
  5846.             orderNumberOfItems: "on",
  5847.             orderItems: "oi",
  5848.             merchantUserId: "muid",
  5849.             userEmail: "ue",
  5850.             userFirstName: "uf",
  5851.             userLastName: "ul",
  5852.             userFullName: "un",
  5853.             marketingOptIn: "mo"
  5854.         }, D5.parameterAbbreviations || {})
  5855.           , Dm = "array"
  5856.           , EH = "boolean";
  5857.         function EA() {
  5858.             var EK = {}, EM, EN;
  5859.             for (var EL = 0, EJ = arguments.length; EL < EJ; EL++) {
  5860.                 for (EM in arguments[EL]) {
  5861.                     EN = arguments[EL][EM];
  5862.                     if (EN !== Dk) {
  5863.                         EK[EM] = EN;
  5864.                     }
  5865.                 }
  5866.             }
  5867.             return EK;
  5868.         }
  5869.         function De(EJ) {
  5870.             return EJ.replace(/([-.*+?^${}()|[\]\/\\])/g, "\\$1");
  5871.         }
  5872.         function DZ(EL) {
  5873.             var EJ = EL;
  5874.             var EK = document.createElement("div");
  5875.             if (EL && typeof EL === "string") {
  5876.                 EL = EL.replace(/[<][s][c][r][i][p][t][^>]*>([\S\s]*?)<\/[s][c][r][i][p][t][>]/gmi, "");
  5877.                 EL = EL.replace(/<\/?\w(?:[^"'>]|"[^"]*"|'[^']*')*>/gmi, "");
  5878.                 EK.innerHTML = EL;
  5879.                 EL = EK.textContent || EK.innerText;
  5880.                 EK.textContent = "";
  5881.             }
  5882.             if (EL === "" || typeof EL === "undefined" || EL === null) {
  5883.                 return EJ;
  5884.             }
  5885.             return EL;
  5886.         }
  5887.         function Db(EJ) {
  5888.             var EK = Dc.cookie.match("(?:^|;)\\s*" + De(EJ) + "=([^;]*)");
  5889.             return (EK) ? ED(EK[1]) : null;
  5890.         }
  5891.         function Dj(EL, EO, EM, EN) {
  5892.             var EK = new Date()
  5893.               , EJ = EK;
  5894.             EJ.setTime(EK.getTime() + EM * 1000);
  5895.             Dc.cookie = EL + "=" + D6(EO) + ";expires=" + EJ.toGMTString() + ";path=/" + (EN ? ";domain=" + EN : "");
  5896.         }
  5897.         function EF() {
  5898.             return D5.trackingPixelUrl || D1;
  5899.         }
  5900.         function Df(EJ) {
  5901.             if (typeof EJ !== "object") {
  5902.                 return typeof EJ;
  5903.             }
  5904.             if (EJ === null) {
  5905.                 return "null";
  5906.             }
  5907.             return DY.call(EJ).match(/\[object\s(\w+)\]/)[1].toLowerCase();
  5908.         }
  5909.         function Dd(EK, EJ) {
  5910.             return Df(EK) === EJ;
  5911.         }
  5912.         function EB(EJ) {
  5913.             return EJ !== Dk && EJ !== null && EJ !== "" && EJ !== Number.NaN;
  5914.         }
  5915.         var Dt = [";", ","];
  5916.         function Dr(EL, EM) {
  5917.             var EJ = [], EK;
  5918.             EM = EM || 0;
  5919.             if (Dd(EL, Dm) && EM < Dt.length) {
  5920.                 for (EK = 0; EK < EL.length; EK++) {
  5921.                     EJ.push(Dr(EL[EK], EM + 1));
  5922.                 }
  5923.                 return EJ.join(Dt[EM]);
  5924.             } else {
  5925.                 if (Dd(EL, EH)) {
  5926.                     return EL ? "y" : "n";
  5927.                 } else {
  5928.                     if (EB(EL)) {
  5929.                         return D6(DZ(ED(EL)));
  5930.                     } else {
  5931.                         return "";
  5932.                     }
  5933.                 }
  5934.             }
  5935.         }
  5936.         function DX(EN) {
  5937.             var EL = [], EK, EM, EJ;
  5938.             for (EK in EN) {
  5939.                 EM = EN[EK];
  5940.                 if (EB(EM)) {
  5941.                     EL.push(D6(D0[EK] || EK) + "=" + Dr(EM));
  5942.                 }
  5943.             }
  5944.             return EL.join("&");
  5945.         }
  5946.         function Dv(EJ, EK) {
  5947.             var EL = EJ;
  5948.             new Image().src = EL + "?" + DX(EK);
  5949.         }
  5950.         function D3(EM) {
  5951.             var EJ = [];
  5952.             var EL = ["r", "a", "n", "d", "o", "m"].join("");
  5953.             for (var EK = 0; EK < EM; EK++) {
  5954.                 EJ.push((Math[EL]() * 36 | 0).toString(36));
  5955.             }
  5956.             return EJ.join("");
  5957.         }
  5958.         function Dn() {
  5959.             return ((Date.now && typeof Date.now() === "number") ? Date.now() : +new Date).toString(36);
  5960.         }
  5961.         function EC() {
  5962.             return Di.href;
  5963.         }
  5964.         function D4() {
  5965.             return Dc.referrer;
  5966.         }
  5967.         function Dz() {
  5968.             var EJ = D5.userTrackingDomain;
  5969.             EJ = EJ && EJ.replace(/^\s+|\s+$/g, "");
  5970.             if (EJ) {
  5971.                 if (EJ.charAt(0) !== ".") {
  5972.                     EJ = "." + EJ;
  5973.                 }
  5974.                 return EJ;
  5975.             }
  5976.             return null;
  5977.         }
  5978.         function EI(EK, EL, EJ) {
  5979.             if (EK.addEventListener) {
  5980.                 EK.addEventListener(EL, EJ, false);
  5981.             } else {
  5982.                 if (EK.attachEvent) {
  5983.                     EK.attachEvent("on" + EL, function() {
  5984.                         EJ.call(EK);
  5985.                     });
  5986.                 }
  5987.             }
  5988.         }
  5989.         function Da(EK, EL, EJ) {
  5990.             if (EK.removeEventListener) {
  5991.                 EK.removeEventListener(EL, EJ, false);
  5992.             } else {
  5993.                 if (EK.detachEvent) {
  5994.                     EK.detachEvent("on" + EL, EJ);
  5995.                 }
  5996.             }
  5997.         }
  5998.         function Dh(EK) {
  5999.             var EL = EK || window.event
  6000.               , EJ = false;
  6001.             if (EL.target) {
  6002.                 EJ = EL.target;
  6003.             } else {
  6004.                 if (EL.srcElement) {
  6005.                     EJ = EL.srcElement;
  6006.                 } else {
  6007.                     EJ = document;
  6008.                 }
  6009.             }
  6010.             if (EJ.nodeType == 3) {
  6011.                 EJ = EJ.parentNode;
  6012.             }
  6013.             return EJ;
  6014.         }
  6015.         function D9(EJ, EM, EL) {
  6016.             var EK = EJ;
  6017.             while (EK && EK !== EM.parentNode && EK.nodeType !== 9) {
  6018.                 if (EK.nodeType === 1 && EL(EK)) {
  6019.                     return EK;
  6020.                 }
  6021.                 EK = EK.parentNode;
  6022.             }
  6023.             return false;
  6024.         }
  6025.         function Du(EP) {
  6026.             var EP = EP || document
  6027.               , EK = EP.documentElement
  6028.               , EM = EP.body
  6029.               , EO = window.pageYOffset || Math.max(EK.scrollTop, EM.scrollTop)
  6030.               , EN = window.pageXOffset || Math.max(EK.scrollLeft, EM.scrollLeft)
  6031.               , EL = Math.max(EK.clientWidth, EM.clientWidth)
  6032.               , EJ = Math.max(EK.clientHeight, EM.clientHeight);
  6033.             return {
  6034.                 top: EO,
  6035.                 left: EN,
  6036.                 bottom: EO + EJ,
  6037.                 right: EN + EL,
  6038.                 width: EL,
  6039.                 height: EJ
  6040.             };
  6041.         }
  6042.         function Dy(EK, EJ) {
  6043.             var EM = EK.left
  6044.               , ES = EK.top
  6045.               , EQ = EJ.left
  6046.               , EO = EJ.top
  6047.               , EL = EM + EK.width
  6048.               , ER = ES + EK.height
  6049.               , EP = EQ + EJ.width
  6050.               , EN = EO + EJ.height;
  6051.             if (EM < EQ) {
  6052.                 EM = EQ;
  6053.             }
  6054.             if (ES < EO) {
  6055.                 ES = EO;
  6056.             }
  6057.             if (EL > EP) {
  6058.                 EL = EP;
  6059.             }
  6060.             if (ER > EN) {
  6061.                 ER = EN;
  6062.             }
  6063.             return {
  6064.                 top: ES,
  6065.                 left: EM,
  6066.                 bottom: ER,
  6067.                 right: EL,
  6068.                 height: ER - ES,
  6069.                 width: EL - EM
  6070.             };
  6071.         }
  6072.         function D2(EM) {
  6073.             if (EM.offsetWidth === 0 || EM.offsetHeight === 0) {
  6074.                 return false;
  6075.             }
  6076.             var EJ = Du()
  6077.               , EL = EM.getBoundingClientRect()
  6078.               , EK = {
  6079.                 top: EL.top + EJ.top,
  6080.                 bottom: EL.bottom + EJ.top,
  6081.                 left: EL.left + EJ.left,
  6082.                 right: EL.right + EJ.left,
  6083.                 width: EL.right - EL.left,
  6084.                 height: EL.bottom - EL.top
  6085.             };
  6086.             var EN = Dy(EJ, EK);
  6087.             if ((EN.width * EN.height) / (EK.width * EK.height) < 0.5) {
  6088.                 return false;
  6089.             }
  6090.             if (D9(document.elementFromPoint((EL.left + EL.right) / 2, (EL.top + EL.bottom) / 2), EM, function(EO) {
  6091.                 return EO === EM;
  6092.             })) {
  6093.                 return true;
  6094.             }
  6095.             return false;
  6096.         }
  6097.         var Dq = [];
  6098.         var EG = false;
  6099.         function i() {
  6100.             var EK = 0, EL;
  6101.             for (var EJ = 0; EJ < Dq.length; EJ++) {
  6102.                 if (Dq[EJ]) {
  6103.                     EK++;
  6104.                     EL = Dq[EJ]();
  6105.                     if (EL) {
  6106.                         Dq[EJ] = false;
  6107.                     }
  6108.                 }
  6109.             }
  6110.             if (EK === 0) {
  6111.                 clearInterval(EG);
  6112.                 EG = false;
  6113.                 Dq = [];
  6114.                 Da(window, "scroll", i);
  6115.                 Da(window, "resize", i);
  6116.             }
  6117.         }
  6118.         function D8() {
  6119.             var EJ = Db(DW);
  6120.             if (!EJ) {
  6121.                 EJ = D3(Dg);
  6122.             }
  6123.             Dj(DW, EJ, DV, Dz());
  6124.             return EJ;
  6125.         }
  6126.         function Dp(EJ, EK) {
  6127.             Dx(EJ, EA({
  6128.                 pageUrl: EC(),
  6129.                 referrerUrl: D4()
  6130.             }, EK));
  6131.         }
  6132.         function Dx(EK, EM) {
  6133.             var EJ = D8();
  6134.             var EL = {
  6135.                 event: EK,
  6136.                 id: D3(Dg),
  6137.                 time: Dn(),
  6138.                 userId: EJ,
  6139.                 merchantGroupId: D5.merchantGroupId
  6140.             };
  6141.             EL = EA(EL, EM);
  6142.             if (D5.delayFire === "true" || EL.delay === "true") {
  6143.                 if (EL.delay) {
  6144.                     delete EL.delay;
  6145.                 }
  6146.                 if (Dc.readyState === "complete") {
  6147.                     Dv(EF(), EL);
  6148.                     return;
  6149.                 }
  6150.                 if (D7.addEventListener) {
  6151.                     D7.addEventListener("load", function() {
  6152.                         Dv(EF(), EL);
  6153.                     }, false);
  6154.                 } else {
  6155.                     if (D7.attachEvent) {
  6156.                         D7.attachEvent("onload", function() {
  6157.                             Dv(EF(), EL);
  6158.                         });
  6159.                     }
  6160.                 }
  6161.             } else {
  6162.                 if (EL.delay) {
  6163.                     delete EL.delay;
  6164.                 }
  6165.                 Dv(EF(), EL);
  6166.             }
  6167.             Do = EM;
  6168.         }
  6169.         function Ds(EL, EN, EO) {
  6170.             var EK = Dd(EL, Dm) ? EL : [EL]
  6171.               , EM = "data-pr-event";
  6172.             function EP(ET) {
  6173.                 var ER = Dh(ET);
  6174.                 var EQ = D9(ER, this, function(EU) {
  6175.                     return EU && EU.getAttribute(EM);
  6176.                 });
  6177.                 if (EQ) {
  6178.                     var ES = EQ.getAttribute(EM);
  6179.                     Dp(EN, EA({
  6180.                         eventType: ES
  6181.                     }, EO));
  6182.                 }
  6183.             }
  6184.             for (var EJ = 0; EJ < EK.length; EJ++) {
  6185.                 EI(EK[EJ], "click", EP);
  6186.             }
  6187.         }
  6188.         function EE(EK, EL, EN) {
  6189.             if (Dd(EK, Dm)) {
  6190.                 for (var EJ = 0; EJ < EK.length; EJ++) {
  6191.                     EE(EK[EJ], EL, EN);
  6192.                 }
  6193.             } else {
  6194.                 var EM = function() {
  6195.                     if (D2(EK)) {
  6196.                         Dp(EL, EN);
  6197.                         return true;
  6198.                     }
  6199.                     return false;
  6200.                 };
  6201.                 if (!EM()) {
  6202.                     Dq.push(EM);
  6203.                     if (!EG) {
  6204.                         EG = setInterval(i, 1000);
  6205.                         EI(window, "scroll", i);
  6206.                         EI(window, "resize", i);
  6207.                     }
  6208.                 }
  6209.             }
  6210.         }
  6211.         function Dl() {
  6212.             var EJ = EA(Do, D5);
  6213.             var EL = EJ.orderItems;
  6214.             var EM = function() {
  6215.                 var EO = [];
  6216.                 var EP = EL[0];
  6217.                 if (EL.length > 0) {
  6218.                     EL.map(function(EQ, ES) {
  6219.                         var ET = EQ.slice(-1)[0];
  6220.                         var ER = parseFloat(ET);
  6221.                         EO.push(ER);
  6222.                         var EU = EO[(ES - 1)];
  6223.                         if (ER > EU) {
  6224.                             EP = EQ;
  6225.                         }
  6226.                     });
  6227.                 }
  6228.                 return EP;
  6229.             };
  6230.             var EK = {
  6231.                 singleOrderitem: EM(),
  6232.                 page_id: EM()[0],
  6233.                 page_id_variant: EM()[1]
  6234.             };
  6235.             var EN = EA(EK, EJ);
  6236.             return EN;
  6237.         }
  6238.         function Dw(EN) {
  6239.             var ER = ["merchantGroupId", "merchantId", "locale", "merchantUserId", "userEmail", "userFirstName", "userLastName", "orderId", "orderItems"];
  6240.             var EU = ["page_id", "quantity", "unit_price"];
  6241.             var EO = ER.filter(function EP(EV) {
  6242.                 if (!EN[EV]) {
  6243.                     return EV;
  6244.                 }
  6245.             });
  6246.             if (!(typeof EN.marketingOptIn === "boolean")) {
  6247.                 throw new Error("PowerReviews checkout() error - marketingOptIn value provided is not valid");
  6248.             }
  6249.             if (EO.length > 0) {
  6250.                 throw new Error("PowerReviews checkout() error - " + EO.join(", ") + " provided is not valid");
  6251.             }
  6252.             var EQ = function EQ(EV) {
  6253.                 return EU.filter(function(EX) {
  6254.                     var EW = !isNaN(Number(EV[EX])) && EV[EX];
  6255.                     if (!EV[EX] || EX === "quantity" && !EW || EX === "unit_price" && !EW) {
  6256.                         return EX;
  6257.                     }
  6258.                 });
  6259.             };
  6260.             var ET = EN.orderItems.filter(function(EV) {
  6261.                 return EQ(EV).length > 0;
  6262.             }).map(function(EW, EV) {
  6263.                 var EX = EQ(EW);
  6264.                 return "Order Item #" + (EV + 1) + " has invalid fields - " + EX.join(", ");
  6265.             });
  6266.             if (ET.length > 0) {
  6267.                 throw new Error("PowerReviews checkout() error - " + ET.join(" || "));
  6268.             }
  6269.             var EL = function EL(EX) {
  6270.                 var EV = EX.page_id;
  6271.                 var EY = EX.page_id_variant;
  6272.                 var EZ = EX.product_name;
  6273.                 var Ea = EX.quantity;
  6274.                 var EW = EX.unit_price;
  6275.                 return {
  6276.                     page_id: EV,
  6277.                     page_id_variant: EY,
  6278.                     product_name: EZ,
  6279.                     quantity: Ea,
  6280.                     unit_price: EW
  6281.                 };
  6282.             };
  6283.             var EM = function(EX, EV, EW) {
  6284.                 EW = [];
  6285.                 for (EV in EX) {
  6286.                     EW.hasOwnProperty.call(EX, EV) && EW.push(EV);
  6287.                 }
  6288.                 return EW;
  6289.             };
  6290.             var ES = function ES(EV) {
  6291.                 return EM(EV).map(function(EW) {
  6292.                     return EV[EW];
  6293.                 });
  6294.             };
  6295.             var EK = "c";
  6296.             var EJ = {
  6297.                 merchantGroupId: EN.merchantGroupId,
  6298.                 merchantId: EN.merchantId,
  6299.                 locale: EN.locale,
  6300.                 merchantUserId: EN.merchantUserId,
  6301.                 marketingOptIn: EN.marketingOptIn,
  6302.                 userEmail: EN.userEmail,
  6303.                 userFirstName: EN.userFirstName,
  6304.                 userLastName: EN.userLastName,
  6305.                 orderId: EN.orderId,
  6306.                 orderSubtotal: EN.orderItems.reduce(function(EW, EV) {
  6307.                     return EW + EV.unit_price * EV.quantity;
  6308.                 }, 0),
  6309.                 orderNumberOfItems: EN.orderItems.reduce(function(EW, EV) {
  6310.                     return EW + EV.quantity;
  6311.                 }, 0),
  6312.                 orderItems: EN.orderItems.map(function(EV) {
  6313.                     return ES(EL(EV));
  6314.                 })
  6315.             };
  6316.             return Dp(EK, EJ);
  6317.         }
  6318.         return {
  6319.             trackEvent: Dx,
  6320.             trackCheckout: Dw,
  6321.             getConfig: Dl,
  6322.             trackPageview: Dp,
  6323.             trackClickEvents: Ds,
  6324.             trackVisibility: EE,
  6325.             isElementVisible: D2,
  6326.             getUID: D8
  6327.         };
  6328.     }
  6329.     if (window.document && window.location) {
  6330.         var B2 = {
  6331.             delayFire: "false",
  6332.             merchantGroupId: 11984,
  6333.             userTrackingDomain: "",
  6334.             trackingPixelUrl: "//t.powerreviews.com/t/v1.gif",
  6335.             parameterAbbreviations: {
  6336.                 reviewCount: "rc",
  6337.                 starRating: "s",
  6338.                 inlineSEO: "i",
  6339.                 engineVersion: "v",
  6340.                 questionCount: "qc",
  6341.                 answerCount: "ac",
  6342.                 visible: "vis",
  6343.                 synMerchantId: "symid",
  6344.                 synSharedReviewIds: "sysrids",
  6345.                 synReviewsOnPageCount: "syropc"
  6346.             }
  6347.         };
  6348.         var C4 = Bk(B2);
  6349.         F.tracker = {
  6350.             getUID: C4.getUID,
  6351.             trackCheckout: C4.trackCheckout
  6352.         };
  6353.     }
  6354.     if (!!M("pr_snippet_style") && M("pr_snippet_style") !== "LEGACY" && !document.getElementById("pwr-ui")) {
  6355.         (function(DX, DY, i, DW, DV) {
  6356.             DX.PowerReviews = {};
  6357.             DW = DY.createElement(i);
  6358.             DV = DY.getElementsByTagName("head")[0];
  6359.             DW.src = F.getWARServerPath() + "/ui.js";
  6360.             DW.id = "pwr-ui";
  6361.             DV.appendChild(DW, DV);
  6362.         }(window, document, "script"));
  6363.     }
  6364.     return F;
  6365. }
  6366. )(POWERREVIEWS);
  6367. var SHOPZILLAREVIEWS = POWERREVIEWS;
  6368. // BRANCH:origin/release-2017.19 SHA:e9871f09e7b6b52065bb922dfae7c3569a07c819
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement