diff --git a/Pathfinder-Neceros/pathfinder-neceros.html b/Pathfinder-Neceros/pathfinder-neceros.html
index 0c9b45ba18..4c9bfe646a 100644
--- a/Pathfinder-Neceros/pathfinder-neceros.html
+++ b/Pathfinder-Neceros/pathfinder-neceros.html
@@ -1,3 +1,10 @@
+
@@ -15,7 +22,7 @@
Checkboxes with a label right after cause the section with same name (h2 or h3 header) to be revealed or hidden.
New sheets begin on the Configuration page. Use the Settings button(config-show) to edit the sheet.
-
+
Announcements
@@ -13698,7 +13697,7 @@
-
\ No newline at end of file
+g(e,t)})})}function v(e){R.migrateSpellRanges(e)}function k(){var e="";e=A.default.reduce(G.repeatingSpellUpdatesPlayer,function(e,t){return e+="change:repeating_spells:"+t+" "},""),on(e,I.default.callback(function(e){I.default.debug("caught "+e.sourceAttribute+" event"+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||g(null,e)})),A.default.each(G.repeatingSpellEventsPlayer,function(e,t){A.default.each(e,function(e){on(t,I.default.callback(function(t){I.default.debug("caught "+t.sourceAttribute+" event: "+t.sourceType),"player"!==t.sourceType&&"api"!==t.sourceType||e(null,t)}))})}),on("remove:repeating_spells",I.default.callback(function(e){I.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||(H.removeLinkedAttack(null,H.linkedAttackType.spell,T.getRowId(e.sourceAttribute)),i(),o())})),on("change:spellmenu_groupby_school change:spellmenu_show_uses change:spellclass-0-hide_unprepared change:spellclass-1-hide_unprepared change:spellclass-2-hide_unprepared change:spellclass-0-show_domain_spells change:spellclass-1-show_domain_spells change:spellclass-2-show_domain_spells",I.default.callback(function(e){"player"!==e.sourceType&&"api"!==e.sourceType||(I.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),i())})),e=A.default.reduce(G.repeatingSpellMenuUpdatePlayer,function(e,t){return e+="change:repeating_spells:"+t+" "},""),on(e,I.default.callback(function(e){I.default.debug("caught "+e.sourceAttribute+" event"+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||g(null,e)})),on("change:_reporder_repeating_spells",I.default.callback(function(e){"player"===e.sourceType&&(I.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),i())})),on("change:repeating_spells:spellclass_number change:repeating_spells:spell_level",I.default.callback(function(e){I.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||o()})),on("change:repeating_spells:create-attack-entry",I.default.callback(function(e){I.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||u(null,null,!1,e)})),e=A.default.reduce(G.repeatingSpellAttackEventsPlayer,function(e,t){return e+="change:repeating_spells:"+t+" "},""),on(e,I.default.callback(function(e){var t;I.default.debug("caught "+e.sourceAttribute+" event"+e.sourceType),t=T.getAttributeName(e.sourceAttribute),"player"!==e.sourceType&&"api"!==e.sourceType||d(null,null,null,e)})),e=A.default.reduce(G.repeatingSpellAttackEventsAuto,function(e,t){return e+="change:repeating_spells:"+t+" "},""),on(e,I.default.callback(function(e){var t;I.default.debug("caught "+e.sourceAttribute+" event"+e.sourceType),t=T.getAttributeName(e.sourceAttribute),"sheetworker"!==e.sourceType&&"api"!==e.sourceType||d(null,null,null,e)}))}Object.defineProperty(t,"__esModule",{value:!0}),t.recalculate=t.classesUsingOtherSpellLists=t.spellLevels=void 0,t.resetCommandMacro=i,t.resetSpellsTotals=o,t.createAttackEntryFromRow=u,t.updateAssociatedAttack=d,t.updateSpellsCasterLevelRelated=m,t.updateSpellsCasterAbilityRelated=_,t.updateSpells=h,t.importFromCompendium=y,t.migrate=v;var w=a(2),A=r(w),C=a(1),I=r(C),x=(a(0),a(4)),P=r(x),S=a(3),T=n(S),E=a(5),M=n(E),D=a(6),R=n(D),F=a(13),N=(n(F),a(31)),L=n(N),z=a(11),O=n(z),W=a(8),B=n(W),q=a(7),H=n(q),U=t.spellLevels=["0","1","2","3","4","5","6","7","8","9"],j=t.classesUsingOtherSpellLists={arcanist:"wizard",investigator:"alchemist",warpriest:"cleric",skald:"bard",bloodrager:"sorcerer"},G=(t.recalculate=I.default.callback(function(e,t,a){var n=A.default.once(function(){"function"==typeof e&&e()}),r=A.default.once(function(){f(),o(null,null,null,t),i(),L.resetOptions(),n()}),l=A.default.once(function(){getAttrs(["use_spells"],function(e){parseInt(e.use_spells,10)?h(r,t):n()})});v(l)}),{repeatingSpellUpdatesPlayer:["DC_misc","Concentration_misc","range","range_pick","CL_misc","SP_misc","spellclass_number","spell_level"],repeatingSpellEventsPlayer:{"change:repeating_spells:compendium_category":[y],"change:repeating_spells:used":[l,p],"change:repeating_spells:metamagic":[b],"change:repeating_spells:name":[g]},repeatingSpellMenuUpdatePlayer:["name","spellclass_number","spell_level","slot","used","school","metamagic","isDomain","isMythic"],repeatingSpellAttackEventsPlayer:["range_pick","range","damage-macro-text","damage-type","save","spell-attack-type","name"],repeatingSpellAttackEventsAuto:["range_numeric","sr","savedc"]});k()},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function i(){getAttrs(["expandall"],function(e){parseInt(e.expandall,10)&&(y.setWrapper({expandall:"0",pagetab:"99",abilities_tab:"99","npc-abilities_tab":"99",skills_tab:"99",spellclass_tab:"99",spells_tab:"99",npc_spellclass_tab:"99",equipment_tab:"99","sheet-conditions-show":1,"buffstop-show":1,"command-buttons-show":1,"NPC-command-buttons-show":1,"character-details-show":1,"ability-scores-show":1,"class-info-show":1,class1_show:1,class2_show:1,class3_show:1,"health-and-wounds-show":1,"initiative-show":1,"macro-text-show":1,"notes-show":1,"saves-show":1,"defense-values-show":1,"armor-shield-show":1,"sanity-show":1,"defense-notes-show":1,"attack-bonuses-show":1,atkm2_show:1,"attack-notes-show":1,"attack-options-show":1,"two-weapon-show":1,"attacks-show":1,"skill-ranks-show":1,"skill_options-show":1,"skills-show":1,"artistry-show":1,"craft-show":1,"knowledge-show":1,"lore-show":1,"perform-show":1,"profession-show":1,"misc-show":1,"skill-notes-show":1,"ability-command-buttons-show":1,"NPC-ability-command-buttons-show":1,"feats-show":1,"mythic-info-show":1,"psionic-info-show":1,"abilities-show":1,"spellclasses-show":1,"spellclass-0-show":1,"spellclass-0-spellpoints-show":1,"spellclass-0-spells-notes-show":1,"spellclass-0-perday-show":1,"spellclass-0-domains-show":1,domain02_show:1,domain03_show:1,"spellclass-1-show":1,"spellclass-1-spellpoints-show":1,"spellclass-1-spells-notes-show":1,"spellclass-1-perday-show":1,"spellclass-1-domains-show":1,"spellclass-2-show":1,"spellclass-2-spellpoints-show":1,"spellclass-2-spells-notes-show":1,"spellclass-2-perday-show":1,"spellclass-2-domains-show":1,"spelloptions-show":1,"spell-lists-show":1,"currency-show":1,"carried-weight-show":1,"loads-show":1,"worn-items-show":1,"other-items-show":1,"equipment-show":1,"npc-compimport-show":1,"npc-details-show":1,"npc-defense-show":1,"npc-offense-show":1,"npc-speed-show":1,"npc-repeating-weapons-show":1,"npc-spell-like-abilities-show":1,"npc-tactics-show":1,"npc-statistics-show":1,"npc-feats-show":1,"npc-mythic-feats-show":1,"npc-skills-show":1,"npc-ecology-show":1,"npc-special-abilities-show":1,"custom-attr-sect-a-show":1,"custom-attr-sect-c-show":1,"custom-attr-sect-b-show":1,"custom-attr-sect-d-show":1,"custom-attr-sect-n-show":1,"header-image-show":1,"sheet-import-show":1,"roll-template-info-show":1,"macros-show":1,"migrations-show":1,"cleanup-show":1,"san-show":1,"buff-min-show":0,"buff-expand-show":0,"buff-column-show":0,"weapon-min-show":0,"weapon-expand-show":0,"weapon-column-show":0,"abilities-min-show":0,"abilities-expand-show":0,"abilities-column-show":0,"class-ability-min-show":0,"class-ability-expand-show":0,"class-ability-column-show":0,"feat-min-show":0,"feat-expand-show":0,"feat-column-show":0,"mythic-feats-min-show":0,"mythic-feats-expand-show":0,"mythic-feats-column-show":0,"racial-trait-min-show":0,"racial-trait-expand-show":0,"racial-trait-column-show":0,"traits-min-show":0,"traits-expand-show":0,"traits-column-show":0,"npc-spell-like-abilities-min-show":0,"npc-spell-like-abilities-expand-show":0,"npc-spell-like-abilities-column-show":0,"mythic-min-show":0,"mythic-expand-show":0,"mythic-column-show":0,"newspells-min-show":0,"newspells-expand-show":0,"newspells-column-show":0,"item-min-show":0,"item-expand-show":0,"item-column-show":0,"npcweapon-min-show":0,"npcweapon-expand-show":0,"npcweapon-column-show":0,"npcnewspells-min-show":0,"npcnewspells-expand-show":0,"npcnewspells-column-show":0,"npcfeat-min-show":0,"npcfeat-expand-show":0,"npcfeat-column-show":0,"npcmythic-feats-min-show":0,"npcmythic-feats-expand-show":0,"npcmythic-feats-column-show":0,"npc-abilities-min-show":0,"npc-abilities-expand-show":0,"npc-abilities-column-show":0,"npc-special-abilities-min-show":0,"npc-special-abilities-expand-show":0,"npc-special-abilities-column-show":0,extra_fields_san_show:1,extra_fields_attacks_show:1,extra_fields_skills_show:1,extra_fields_saves_show:1,extra_fields_spells_show:1,extra_fields_caster_show:1,extra_fields_abilities_show:1,extra_fields_init_show:1,extra_fields_speeds_show:1,extra_fields_defense_show:1,extra_fields_conditions_show:1}),_.default.each(k.default.repeatingSections,function(e){var t="repeating_"+e;getSectionIDs(t,function(a){var n=_.default.reduce(a,function(a,n){var r=t+"_"+n+"_";switch(e){case"weapon":a[r+"add-damage-show"]=1,a[r+"iterative-attacks-show"]=1,a[r+"advmacro-text-show"]=1;break;case"buff":a[r+"options-show"]=1,a[r+"description-show"]=1;break;case"buff2":a[r+"options-show"]=1,a[r+"description-show"]=1;break;case"spells":a[r+"misc-show"]=1,a[r+"attack-show"]=1,a[r+"description-show"]=1;break;case"class-ability":case"feat":case"racial-trait":case"trait":case"mythic-ability":case"mythic-feat":a[r+"description-show"]=1;break;case"item":a[r+"description-show"]=1,a[r+"armor-attributes-show"]=1,a[r+"weapon-attributes-show"]=1;break;case"npc-spell-like-abilities":a[r+"attack-show"]=1;break;case"ability":a[r+"options-show"]=1,a[r+"description-show"]=1,a[r+"misc-show"]=1,a[r+"showextrafields"]=1,a[r+"range-show"]=1}return a[r+"row-show"]=0,a[r+"ids-show"]=1,"buff"!==e&&"buff2"!==e&&(a[r+"macro-text-show"]=1),a},{});y.setWrapper(n,{silent:!0})})}))})}function l(e){var t=_.default.once(function(){var t={is_newsheet:0,is_v1:1,use_buff_bonuses:1,use_advanced_options:0,modify_dmg_by_size:1,PFSheet_Version:String(k.default.version.toFixed(2))};t[k.default.announcementVersionAttr]=1,y.setWrapper(t,k.default.silentParams,function(){"function"==typeof e&&e()})});getAttrs(["is_npc","set_pfs"],function(e){var a=parseInt(e.is_npc,10)||0,n=parseInt(e.set_pfs,10)||0;x.setAllMigrateFlags(function(){N.migrate(),C.migrate(),a?J.setToNPC(t):n?V.setToPFS(t):t()})})}function s(e,t,a){var n,r=_.default.once(function(){b.default.debug("leaving PFSheet.migrate"),"function"==typeof t&&t()}),i=_.default.once(function(){b.default.warn("leaving PFSheet.migrate ERROR UPGRADE NOT FINISHED"),"function"==typeof a?a():r()});try{e<1?(n=_.default.after(7,function(){b.default.info("PFSheet.migrate we finished calling all the migrates"),r()}),x.migrateConfigFlags(b.default.callback(function(){W.migrate(n,e),N.migrate(n,e),V.migrate(n,e),ie.migrate(n,e),Y.migrate(n,e),se.migrate(n,e),ce.migrate(n,e)}),e)):e<1.17?(e<1.02&&(Y.migrate(null,e),se.migrate(null,e)),e<1.05&&ne.resetOptions(),e<1.07&&W.migrate(null,e),e<1.1&&(x.migrateAbilityListFlags(),se.migrate(null,e)),e<1.12&&Y.migrate(null,e),e<1.17&&W.migrate(function(){W.resetCommandMacro()})):(e<1.18&&(R.recalculate(null,!1,e),V.recalculate(null,!1,e),x.migrateSpellPointFlag(null,e)),e<1.2&&V.recalculate(),e<1.4&&(x.migrateWhisperDropdowns(),W.resetCommandMacro(),te.resetCommandMacro(),Y.resetCommandMacro(),se.resetCommandMacro(),ie.recalculate(),be.setHitPoints()),e<1.43&&(ce.recalculate(),N.resetCommandMacro()),e<1.5&&(ce.resetSpellsTotals(null,null,null,!0),W.updateRepeatingItems(),ie.migrateLinkedAttacks(null,e)),e<1.53&&(N.migrate(null,e),E.recalculate(function(){z.migrate()})),e<1.54&&U.recalculate(),e<1.55&&(ie.recalculate(),N.migrate()),e<1.56&&ie.updateRepeatingWeaponDamages(),e<1.57&&S.updateDefenses(),e<=1.65&&C.migrate(function(){U.migrate(function(){ye.migrate(function(){U.recalculate(function(){C.recalculate(function(){N.migrate(function(){N.recalculateSkills()},e),Y.setRuleTabs(),W.updateLocations(),te.recalculate(function(){ie.adjustAllDamageDiceAsync(),ie.updateDualWieldAttacks(),ie.recalculateRepeatingWeapons()}),W.migrate()})})},e)},e)},e),e<1.68&&C.migrate(function(){N.recalculate(),S.recalculate(),te.recalculate()}),e<1.69&&(de.recalculate(),se.recalculate(),ie.recalculate(),Y.recalculate(),W.recalculate()))}catch(e){b.default.error("PFSheet.migrate",e),i()}finally{r()}}function o(e,t,a){var n=_.default.once(function(){b.default.info("leaving PFSheet.recalculateParallelModules"),"function"==typeof e&&e()}),r=[de.recalculate,G.recalculate,se.recalculate,fe.recalculate,N.recalculate,Y.recalculate,R.recalculate,ie.recalculate,ke.recalculate,Ae.recalculate],i=_.default.size(r),l=_.default.after(i,n),s=0,o=0,c=function(){s++,b.default.info("PFSheet.recalculateParallelModules, finished "+s+" modules"),l()};try{_.default.each(r,function(e){try{o++,e(c,t,a)}catch(e){b.default.error("PFSheet.recalculateParallelModules error calling recalculate",e),c()}})}catch(e){b.default.error("PFSheet.recalculateParallelModules OUTER error!",e),n()}}function c(e,t,a){var n=_.default.once(function(){"function"==typeof e&&e()}),r=function(){z.recalculate(n,t,a)},i=_.default.after(2,r);try{W.recalculate(i,t,a),S.recalculate(i,t,a)}catch(e){b.default.error("pfsheet.recalculateDefenseAndEncumbrance",e),r()}}function u(e,t,a){var n=_.default.once(function(){"function"==typeof e&&e()}),r=_.default.once(function(){E.recalculate(n,t,a)}),i=_.default.once(function(){V.recalculate(r,t,a)}),l=_.default.once(function(){J.recalculate(i,t,a)}),s=_.default.once(function(){_e.recalculate(l,t,a)}),o=_.default.once(function(){C.recalculate(s,t,a)}),c=_.default.once(function(){$.applyConditions(o,t,a)}),u=_.default.once(function(){be.recalculate(c,t,a)}),d=_.default.once(function(){q.recalculate(u,t,a)}),p=_.default.once(function(){ye.recalculate(d,t,a)}),f=_.default.once(function(){U.recalculate(p,t,a)});x.migrateConfigFlags(f,a)}function d(e,t,a){var n=function(){b.default.info("leaving PFSheet.recalculate"),"function"==typeof t&&t()},r=b.default.callback(function(){o(n,a,e)}),i=b.default.callback(function(){c(r,a,e)}),l=b.default.callback(function(){u(i,a,e)});a=!0,l()}function p(e){var t=function(){b.default.info("leaving PFSheet.checkForUpdate"),y.setWrapper({recalc1:0,migrate1:0,is_newsheet:0},k.default.silentParams)},a=_.default.once(function(){b.default.warn("leaving PFSheet.checkForUpdate ERROR UPGRADE NOT FINISHED DO NOT RESET VERSION"),y.setWrapper({recalc1:0,migrate1:0},{silent:!0})});getAttrs(["PFSheet_Version","migrate1","recalc1","is_newsheet","is_v1","hp","hp_max","npc-hd","npc-hd-num","race","class-0-name","npc-type","level","hide_announcements",k.default.announcementVersionAttr],function(n){var r={},i=!1,o=!1,c=!1,u=parseFloat(n.PFSheet_Version,10)||0,p=function(){y.setWrapper({recalc1:0,migrate1:0,is_newsheet:0,character_sheet:"Pathinder_Neceros v"+String(k.default.version),PFSheet_Version:String(k.default.version.toFixed(2))},k.default.silentParams,function(){u<1.17&&d(u,null,!1)})};b.default.notice("Attributes at version: "+u),e?c=!0:(parseInt(n.recalc1,10)&&(c=!0),parseInt(n.migrate1,10)&&(i=!0),(parseInt(n.is_newsheet,10)||0===u&&(parseInt(n.is_v1,10)||!(parseInt(n.hp,10)||parseInt(n.hp_max,10)||parseInt(n["npc-hd"],10)||parseInt(n["npc-hd-num"],10)||n.race||n["class-0-name"]||n["npc-type"]||parseInt(n.level,10))))&&(o=!0)),u!==k.default.version&&(i=!0),o||!parseInt(n.hide_announcements,10)||parseInt(n[k.default.announcementVersionAttr],10)||(r[k.default.announcementVersionAttr]=1,y.setWrapper(r,k.default.silentParams)),o?l(t):i?(b.default.notice("UPGRADE SHEET"),s(u,p,a)):c?(u=-1,d(u,t,!0)):t()})}function f(){on("sheet:opened",b.default.callback(function(){p()})),on("change:recalc1 change:migrate1",b.default.callback(function(e){b.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||p()})),on("change:expandall",function(e){b.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||i()}),on("change:repeating_weapon:source-item",b.default.callback(function(e){"player"!==e.sourceType&&"api"!==e.sourceType||(b.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),getAttrs([e.sourceAttribute],function(t){var a=y.getRowId(e.sourceAttribute),n=t[e.sourceAttribute];n&&(n="repeating_item_"+n+"_create-attack-entry",W.createAttackEntryFromRow(n,null,!1,a))}))})),on("change:repeating_weapon:source-ability",b.default.callback(function(e){"player"!==e.sourceType&&"api"!==e.sourceType||(b.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),getAttrs([e.sourceAttribute],function(t){var a=y.getRowId(e.sourceAttribute),n=t[e.sourceAttribute];n&&Y.createAttackEntryFromRow(n,null,!1,null,a)}))})),on("change:repeating_weapon:source-spell",b.default.callback(function(e){"player"!==e.sourceType&&"api"!==e.sourceType||(b.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),getAttrs([e.sourceAttribute],function(t){var a=y.getRowId(e.sourceAttribute),n=t[e.sourceAttribute];n&&ce.createAttackEntryFromRow(n,null,!1,null,a)}))})),on("change:delete_repeating_spells change:delete_repeating_weapon change:delete_repeating_item change:delete_repeating_ability change:delete_repeating_mythic-feat change:delete_repeating_mythic-ability change:delete_repeating_buff change:delete_repeating_buff2 change:delete_repeating_trait change:delete_repeating_racial-trait change:delete_repeating_feat change:delete_repeating_class-ability change:delete_repeating_npc-spell-like-abilities",b.default.callback(function(e){b.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||getAttrs([e.sourceAttribute],function(t){var a="";parseInt(t[e.sourceAttribute],10)&&(a=e.sourceAttribute.replace("delete_repeating_",""),y.deleteRepeating(function(){var t;t={},t[e.sourceAttribute]=0,t[e.sourceAttribute+"_btn"]=0,y.setWrapper(t,{silent:!0}),/buff/i.test(e.sourceAttribute)&&U.clearBuffTotals()},a))})})),on("change:hide_announcements",function(){var e={};e[k.default.announcementVersionAttr]=1,setAttrs(e,k.default.silentParams)})}Object.defineProperty(t,"__esModule",{value:!0}),t.recalculate=d,t.checkForUpdate=p;var m=a(2),_=r(m),g=(a(0),a(1)),b=r(g),h=a(3),y=n(h),v=a(4),k=r(v),w=a(5),A=(n(w),a(38)),C=n(A),I=a(6),x=n(I),P=a(12),S=n(P),T=a(14),E=n(T),M=a(9),D=(n(M),a(21)),R=n(D),F=a(15),N=n(F),L=a(16),z=n(L),O=a(30),W=n(O),B=a(10),q=n(B),H=a(25),U=n(H),j=a(23),G=n(j),X=a(17),V=n(X),K=a(20),$=n(K),Z=a(24),Y=n(Z),Q=a(41),J=n(Q),ee=a(8),te=n(ee),ae=a(11),ne=n(ae),re=a(7),ie=n(re),le=a(29),se=n(le),oe=a(18),ce=n(oe),ue=a(26),de=n(ue),pe=a(43),fe=n(pe),me=a(40),_e=n(me),ge=a(27),be=n(ge),he=a(37),ye=n(he),ve=a(39),ke=n(ve),we=a(42),Ae=n(we);f()},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){var a=function(){"function"==typeof e&&e()};getAttrs(["condition-Blinded","condition-Fear","condition-Drained","condition-Sickened","condition-Wounds","has_endurance_feat","wounds_gritty_mode","checks-cond","Phys-skills-cond","wound_threshold-show","CasterLevel-Penalty","condition-Dazzled","condition-Deafened","condition-Fascinated","condition_skill_notes","condition_init_notes"],function(e){var t={},n=0,r=0,i=0,l=0,o=0,u=0,p=0,m=0,_=0,g=0,b=0,h="",y="";try{n=parseInt(e["condition-Drained"],10)||0,r=-1*(parseInt(e["condition-Fear"],10)||0),i=-1*(parseInt(e["condition-Sickened"],10)||0),l=d.getWoundPenalty(parseInt(e["condition-Wounds"],10)||0,parseInt(e.has_endurance_feat,10)||0,parseInt(e.wounds_gritty_mode,10)||0),o=(parseInt(e["wound_threshold-show"],10)||0)*l,u=n+r+i+o,p=n+o,m=-2*(parseInt(e["condition-Blinded"],10)||0),_=parseInt(e["checks-cond"],10)||0,g=parseInt(e["Phys-skills-cond"],10)||0,b=parseInt(e["CasterLevel-Penalty"],10)||0,(u!==_||isNaN(_))&&(t["checks-cond"]=u),(m!==g||isNaN(g))&&(t["Phys-skills-cond"]=m),(p!==b||isNaN(b))&&(t["CasterLevel-Penalty"]=p),m&&(h+="**"+f.getTranslated("blinded")+"**: ",h+=f.getTranslated("condition-blinded-note")+"\r\n",y+=f.getTranslated("blinded")+": ",y+=f.getTranslated("condition-blinded-speed")+"\r\n"),parseInt(e["condition-Dazzled"],10)&&(h+="**"+f.getTranslated("dazzled")+"**: ",h+=f.getTranslated("condition-dazzled-note")+"\r\n"),parseInt(e["condition-Deafened"],10)&&(h+="**"+f.getTranslated("deafened")+"**: ",h+=f.getTranslated("condition-deafened-note")+"\r\n"),parseInt(e["condition-Fascinated"],10)&&(h+="**"+f.getTranslated("fascinated")+"**: ",h+=f.getTranslated("condition-fascinated-title")+"\r\n"),h!==e.condition_skill_notes&&(t.condition_skill_notes=h),y!==e.condition_init_notes&&(t.condition_init_notes=y)}catch(e){c.default.error("PFChecks.applyConditions",e)}finally{s.default.size(t)>0?f.setWrapper(t,{},a):a()}})}Object.defineProperty(t,"__esModule",{value:!0}),t.applyConditions=i;var l=a(2),s=r(l),o=(a(0),a(1)),c=r(o),u=a(5),d=n(u),p=a(3),f=n(p)},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t,a){getAttrs(["nodex-toggle"],function(a){parseInt(a["nodex-toggle"],10)?f.updateRowTotal(["init","init-trait","init-misc-mod","checks-cond","buff_initiative-total","buff-Check-total","buff_check_ability-total"],0,["condition-Deafened"],!1,e,t):f.updateRowTotal(["init","init-ability-mod","init-trait","init-misc-mod","checks-cond","buff_initiative-total","buff-Check-total","buff_check_ability-total"],0,["condition-Deafened"],!1,e,t)})}function l(e,t){var a=function(){"function"==typeof e&&e()};t<1.18?i(a,!1,!0):a()}function s(){on("change:init-trait change:condition-Deafened ",d.default.callback(function(e){d.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||i()})),on("change:init-ability-mod change:init-misc-mod change:checks-cond change:nodex-toggle",d.default.callback(function(e){"sheetworker"!==e.sourceType&&"api"!==e.sourceType||(d.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),i())}))}Object.defineProperty(t,"__esModule",{value:!0}),t.recalculate=void 0,t.updateInitiative=i,t.migrate=l;var o=a(2),c=r(o),u=(a(0),a(1)),d=r(u),p=a(3),f=n(p);t.recalculate=d.default.callback(function(e,t,a){var n=c.default.once(function(){d.default.info("Leaving PFInitiative.recalculate"),"function"==typeof e&&e()});l(function(){i(n,t)},a)});s()},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t,a){var n=function(e,a){"function"==typeof t&&t(e,a)},r="pf_block",i="header_image-pf_block",l="ability-menus",s="name",c="",d="",p="",f="",_="",g="roll",b="",h="&{template:REPLACETEMPLATE} @{toggle_attack_accessible} @{toggle_rounded_flag} {{font=@{apply_specfont_chat}@{use_specfont}}} {{font=@{apply_specfont_chat}@{use_specfont}}} {{color=@{rolltemplate_color}}} {{header_image=@{REPLACEHEADER}}} {{character_name=@{character_name}}} {{character_id=@{character_id}}} {{subtitle=REPLACESUBTITLE}} {{name=REPLACENPC^{REPLACENAME}}}",y=" {{description=^{none-available} }}";if(!e||!e.section||!e.linkField)return u.default.error("PFMenus.getRepeatingCommandMacro cannot process",e),void n("");try{a=a||"",h=h.replace("REPLACETEMPLATE",e.template||r),h=h.replace("REPLACEHEADER",e.header||i),h=h.replace("REPLACENAME",e.name||l),h=h.replace("REPLACESUBTITLE",""),h=h.replace(/REPLACENPC/g,e.npcName||""),h+=a,s=e.nameField||s,c=e.bonusField||c,d=e.usesField||d,g=e.linkField||g,f=e.groupBy||f,b=e.filterField||b,p=e.altUsesField||p,_=e.altGroupBy||""}catch(t){return u.default.error("PFMenus.getRepeatingCommandMacro outererror for "+e.section,t),void n("")}getSectionIDs("repeating_"+e.section,function(t){var a=[],r="repeating_"+e.section+"_";try{if(!t||o.default.size(t)<=0)return void n(h+y);o.default.each(t,function(t){var n=r+t+"_";a.push(n+s),e.useshowinmenu&&a.push(n+"showinmenu"),_&&a.push(n+_),c&&a.push(n+c),d&&(a.push(n+d),a.push(n+d+"_max")),b&&a.push(n+b),f&&a.push(n+f),p&&a.push(n+p)})}catch(t){return u.default.error("PFMenus.getRepeatingCommandMacro outerError2. While assembling all attrs in rows for "+e.section,t),void n("")}a.push("_reporder_repeating_"+e.section),e.origMacroAttr&&a.push(e.origMacroAttr),getAttrs(a,function(a){var i,l,s="",v="",k=0,w=20,A="";try{e.origMacroAttr&&(A=a[e.origMacroAttr]||""),a["_reporder_repeating_"+e.section]?(l=a["_reporder_repeating_"+e.section].split(","),l=o.default.map(l,function(e){return e.toLowerCase()}),i=o.default.intersection(o.default.union(l,t),t),k=1):i=t,s=o.default.chain(i).map(function(t){var n=r+t+"_",i="",l="",s="",o="",h="",y=0,v={id:t,name:a[n+"name"]||t,showinmenu:1};try{if(d&&(s=a[n+d]||"",o=a[n+d+"_max"]||""),_&&a[n+_])v.group=a[n+_],v.doNotTranslate=!0;else if(f&&a[n+f])if(e.groupMap)e.groupMap[a[n+f]]?v.group=e.groupMap[a[n+f]]:v.group="AAAAAA";else if("frequency"===f)switch(a[n+f]){case"perday":v.group="",o&&(v.group=o+" "),v.group+=(e.translateGroup?"^{":"")+a[n+f]+(e.translateGroup?"}":""),v.doNotTranslate=1;break;case"not-applicable":v.group="AAAAAA",s=0,o=0;break;case"constant":case"atwill":v.group=a[n+f],s=0,o=0;break;case"hexfreq":case"other":v.group=a[n+f];break;case"everyrounds":v.group=a[n+f],a[n+p]&&(s=a[n+p],o=0);break;default:v.group=a[n+f]}else v.group=a[n+f];else v.group="AAAAAA";"AAAAAA"!==v.group&&e.translateGroup&&!v.doNotTranslate&&(v.group="^{"+v.group+"}"),d&&(s&&o?h=" ("+s+"/"+o+")":s&&(h=" ("+s+")")),b?e.filterValue?String(a[n+b])===String(e.filterValue)?v.showinmenu=1:v.showinmenu=0:v.showinmenu=parseInt(a[n+b],10)||0:v.showinmenu=1,"showinmenu"!==v.filterField&&e.useshowinmenu&&(y=parseInt(a[n+"showinmenu"],10)||0,v.showinmenu=v.showinmenu&&y),c&&a[n+c]&&"not-applicable"!==a[n+c]&&(l=" ("+(e.translateBonus?"^{":"")+a[n+c]+(e.translateBonus?"}":"")+")"),i=v.name+l+h,v.chatLink="["+m.escapeForRollTemplate(m.escapeForChatLinkButton(i))+"](~@{character_id}|"+n+g+")"}catch(e){u.default.error("PFMenus.getRepeatingCommandMacro builderr object for id "+t,e)}finally{return v}}).filter(function(e){return e.showinmenu}).sortBy("group"),"frequency"===f&&(s=s.reverse()),s=s.groupBy("group").reduce(function(e,t,a){var n="";try{"AAAAAA"!==a&&o.default.size(t)>0&&(e+=" {{row"+String(w)+"="+m.escapeForRollTemplate(a)+"}}",w++),n=o.default.reduce(t,function(e,t){return e+=" "+t.chatLink}," {{row"+String(w)+"="),e+=n+"}}",w++}catch(e){u.default.error("PFMenus.getRepeatingCommandMacro strerror creating string for group "+a,e)}finally{return e}},"").value()}catch(t){u.default.error("PFMenus.getRepeatingCommandMacro innererror2 for "+e.section,t)}finally{v=s?h+s:h+y,n(v,A)}})})}function l(e,t,a,n,r){var l=o.default.once(function(){"function"==typeof a&&a()}),s={},c=e;try{if(s={usesField:"used",linkField:"roll",nameField:"name",bonusField:"ability_type",translateBonus:1,macroSuffix:"_buttons_macro"},!g[e])return u.default.error("PFMenus.resetOneCommandMacro Could not find parameters for menu "+e),void l();s=o.default.extend(s,g[e]),t?(g[e].npcLinkField&&(s.linkField=g[e].npcLinkField),g[e].npcMacroName&&(c=g[e].npcMacroName),g[e].npcMacroSuffix&&(s.macroSuffix=g[e].npcMacroSuffix)):s.npcName&&(s.npcName=""),r&&s.groupBy&&(s.groupMap=r),s.origMacroAttr=c+s.macroSuffix,i(s,function(e,t){var a={};t&&e===t?l():(a[c+s.macroSuffix]=e||"",m.setWrapper(a,p.default.silentParams,l))},n)}catch(e){u.default.error("PFMenus.resetOnceCommandMacro, errouter :",e)}}Object.defineProperty(t,"__esModule",{value:!0}),t.getRepeatingCommandMacro=i,t.resetOneCommandMacro=l;var s=a(2),o=r(s),c=a(1),u=r(c),d=(a(0),a(4)),p=r(d),f=a(3),m=n(f),_=a(5),g=(n(_),{"class-ability":{name:"original-class-features-list",section:"class-ability",useshowinmenu:1},feat:{npcMacroName:"NPC-feat",npcName:" ^{npc} ",name:"original-feats-list",section:"feat",npcLinkField:"npc-roll",useshowinmenu:1},"racial-trait":{npcMacroName:"NPC-racial-trait",npcName:" ^{npc} ",name:"original-racial-traits-list",section:"racial-trait",npcLinkField:"npc-roll",useshowinmenu:1},trait:{name:"original-traits-list",section:"trait",useshowinmenu:1},"mythic-ability":{name:"mythic-abilities",section:"mythic-ability",useshowinmenu:1},"mythic-feat":{name:"mythic-feats",section:"mythic-feat",useshowinmenu:1},"npc-spell-like-abilities":{name:"original-spell-like-abilities-list",section:"npc-spell-like-abilities",useshowinmenu:1},ability:{npcMacroName:"NPC-ability",npcName:" ^{npc} ",name:"abilities",section:"ability",groupBy:"rule_category",translateGroup:1,npcLinkField:"npc-roll",useshowinmenu:1},ex:{npcMacroName:"NPC-ex",npcName:" ^{npc} ",name:"extraordinary-abilities-menu",section:"ability",filterField:"ability_type",filterValue:"Ex",groupBy:"frequency",translateGroup:1,altUsesField:"rounds_between",npcLinkField:"npc-roll",useshowinmenu:1},sp:{npcMacroName:"NPC-sp",npcName:" ^{npc} ",name:"spell-like-abilities-menu",section:"ability",filterField:"ability_type",filterValue:"Sp",groupBy:"frequency",translateGroup:1,altUsesField:"rounds_between",npcLinkField:"npc-roll",useshowinmenu:1},su:{npcMacroName:"NPC-su",npcName:" ^{npc} ",name:"supernatural-abilities-menu",section:"ability",filterField:"ability_type",filterValue:"Su",groupBy:"frequency",translateGroup:1,altUsesField:"rounds_between",npcLinkField:"npc-roll",useshowinmenu:1},item:{npcMacroName:"NPC-item",npcName:" ^{npc} ",name:"items",section:"item",usesField:"",bonusField:"",groupBy:"equip-type",translateGroup:1,npcLinkField:"npc-roll",useshowinmenu:1},attacks:{macroSuffix:"-macro",npcMacroSuffix:"-macro-npc",npcName:" ^{npc} ",section:"weapon",name:"attacks",usesField:"",bonusField:"",groupBy:"attack-type",altGroupBy:"group",translateGroup:1,npcLinkField:"attack-npc-roll",linkField:"attack-roll"}})},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){var a=u.default.once(function(){"function"==typeof e&&e()});getAttrs(["condition-Fear","condition-Sickened","condition-Drained","condition-Wounds","saves-cond","has_endurance_feat","wounds_gritty_mode","wound_threshold-show"],function(e){var n=0,r=0,i=0,l=0,s=0,o=0,c={},d={};try{n=parseInt(e["condition-Fear"],10)||0,r=parseInt(e["condition-Sickened"],10)||0,i=parseInt(e["condition-Drained"],10)||0,l=(parseInt(e["wound_threshold-show"],10)||0)*h.getWoundPenalty(parseInt(e["condition-Wounds"],10)||0,parseInt(e.has_endurance_feat,10)||0,parseInt(e.wounds_gritty_mode,10)||0),s=parseInt(e["saves-cond"],10)||0,o=i-n-r+l,s!==o&&(d["saves-cond"]=o)}catch(e){p.default.error("PFSaves.applyConditions",e)}finally{u.default.size(d)>0?(t&&(c=g.default.silentParams),m.setWrapper(d,c,a)):a()}})}function l(e,t,a){var n=[e,"total-"+e,e+"-ability-mod",e+"-trait",e+"-enhance",e+"-resist",e+"-misc-mod","saves-cond","buff_"+e+"-total","buff_saves-total"];m.updateRowTotal(n,0,[],!1,t,a)}function s(e,t){var a=u.default.once(function(){"function"==typeof e&&e()}),n=u.default.after(3,function(){a()});l("Fort",n,t),l("Ref",n,t),l("Will",n,t)}function o(){u.default.each(y,function(e){var t=v.saveEventsAuto.replace(/REPLACE/g,e);on(t,p.default.callback(function(t){"sheetworker"!==t.sourceType&&"api"!==t.sourceType||(p.default.debug("caught "+t.sourceAttribute+" event for "+e+": "+t.sourceType),l(e,t))}))}),u.default.each(y,function(e){var t=v.saveEventsPlayer.replace(/REPLACE/g,e);on(t,p.default.callback(function(t){"player"!==t.sourceType&&"api"!==t.sourceType||(p.default.debug("caught "+t.sourceAttribute+" event for "+e+": "+t.sourceType),
+l(e,t))}))})}Object.defineProperty(t,"__esModule",{value:!0}),t.recalculate=t.saveTypes=void 0,t.applyConditions=i,t.updateSave=l,t.updateSaves=s;var c=a(2),u=r(c),d=(a(0),a(1)),p=r(d),f=a(3),m=n(f),_=a(4),g=r(_),b=a(5),h=n(b),y=t.saveTypes=["Fort","Ref","Will"],v={saveEventsAuto:"change:saves-cond change:total-REPLACE change:REPLACE-ability-mod change:REPLACE-misc-mod",saveEventsPlayer:"change:REPLACE-trait change:REPLACE-enhance change:REPLACE-resist"};t.recalculate=p.default.callback(function(e,t,a){var n=u.default.once(function(){p.default.info("leaving PFSaves.recalculate"),"function"==typeof e&&e()});try{i(function(){s(n,t)},t)}catch(e){p.default.error("PFSaves.recalculate OUTER",e),n()}});o()},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t,a){var n=x.default.once(function(){"function"==typeof t&&t()}),r=E.getRepeatingIDStr(e),i="repeating_ability_"+r,l=i+"CL-basis";getAttrs([i+"CL-basis",i+"class-name","race","class-0-name","class-1-name","class-2-name","class-3-name","class-4-name","class-5-name"],function(e){var t,a="",r={};try{e[l]&&("@{level}"===e[l]?a=e.race:"@{npc-hd-num}"===e[l]?a=e.race:0===parseInt(e[l],10)?a="":(t=e[i+"CL-basis"].match(/\d+/),t&&(a=e["class-"+t[0]+"-name"])),e[i+"class-name"]!==a&&(r[i+"class-name"]=a))}catch(e){S.default.error("PFAbility.setClassName",e)}finally{x.default.size(r)>0?E.setWrapper(r,D.default.silentParams,n):n()}})}function l(e,t,a,n){var r="repeating_ability_"+E.getRepeatingIDStr(a);getAttrs([r+"frequency",r+"rule_category",r+"CL-basis",r+"ability_type",r+"tabcat",r+"tabcat2","abilities_tab","npc-abilities_tab"],function(e){var t={},a=D.default.silentParams;t[r+"tabcat2"]=e[r+"ability_type"]||"-1",E.setWrapper(t,a)})}function s(e,t,a,n){var r="repeating_ability_"+E.getRepeatingIDStr(a);getAttrs([r+"frequency",r+"rule_category",r+"CL-basis",r+"ability_type",r+"tabcat",r+"tabcat2","abilities_tab","npc-abilities_tab"],function(e){var t={},a="",l=D.default.silentParams;switch(e[r+"rule_category"]){case"racial-traits":a="traits";break;case"monster-rule":a="other";break;default:a=e[r+"rule_category"]||""}a||(a="-1"),t[r+"tabcat"]=a,n&&("-1"!==a&&(e.abilities_tab===a||/Ex|Sp|Su|99/i.test(e.abilites_tab)||(t.abilities_tab=a),e["npc-abilities_tab"]===a||/Ex|Sp|Su|99/i.test(e["npc-abilities_tab"])||(t["npc-abilities_tab"]=a)),"class-features"!==e[r+"rule_category"]||e[r+"CL-basis"]&&"0"!=e[r+"CL-basis"]?"racial-traits"!==e[r+"rule_category"]||e[r+"CL-basis"]&&"0"!=e[r+"CL-basis"]||(t[r+"CL-basis"]="@{level}",l={}):(t[r+"CL-basis"]="@{class-0-level}",l={})),"spell-like-abilities"===e[r+"rule_category"]&&(e[r+"tabcat2"]="Sp",t[r+"ability_type"]="Sp"),e[r+"frequency"]||(t[r+"frequency"]="not-applicable"),x.default.size(t)&&E.setWrapper(t,l,i)})}function o(){getSectionIDs("repeating_ability",function(e){x.default.each(e,function(e){s(null,null,e),l(null,null,e)})})}function c(e){var t=function(t){"function"==typeof e&&e(t)};getSectionIDs("repeating_ability",function(e){var a=[];return e&&0!==x.default.size(e)?(x.default.each(e,function(e){var t="repeating_ability_"+e+"_";a.push(t+"rule_category"),a.push(t+"showinmenu"),a.push(t+"ability_type")}),void getAttrs(a,function(a){var n=[],r=[],i=[];n=x.default.chain(e).map(function(e){var t={},n="repeating_ability_"+e+"_";return t.id=e,t.showinmenu=parseInt(a[n+"showinmenu"],10)||0,t.rule_category=a[n+"rule_category"]||"",t.ability_type=(a[n+"ability_type"]||"").toLowerCase(),t}).filter(function(e){return e.showinmenu}).value(),n&&(r=x.default.chain(n).groupBy("rule_category").keys().compact().value(),i=x.default.chain(n).groupBy("ability_type").keys().compact().value()),r||(r=[]),i||(i=[]),t({rules:r,types:i})})):void t({rules:[],types:[]})})}function u(e){var t,a={},n="",r="";try{n=generateRowID(),r="repeating_ability_"+n+"_",a[r+"row_id"]=n,a[r+"showinmenu"]=e.showinmenu||0,a[r+"name"]=e.name||"",a[r+"used"]=e.used||0,a[r+"used_max"]=e.used_max||0,a[r+"max-calculation"]=e["max-calculation"]||"",a[r+"short-description"]=e["short-description"]||"",a[r+"description"]=e.description||"",a[r+"rule_category"]=e.rule_category||"",a[r+"CL-basis"]=e["CL-basis"]||"0",a[r+"class-name"]=e["class-name"]||"","spell-like-abilities"===e.rule_category?(a[r+"ability_type"]="Sp",e["spell_level-misc"]&&(a[r+"spell_level-misc"]=e["spell_level-misc"],a[r+"spell_level-misc-mod"]=e["spell_level-misc-mod"],a[r+"spell_level-basis"]=e["spell_level-basis"]),e.range_numeric&&(a[r+"range"]=e.range,a[r+"range_numeric"]=e.range_numeric,a[r+"range_pick"]=e.range_pick),e["abil-sr"]&&(a[r+"abil-sr"]=e["abil-sr"]),e.save&&(a[r+"save"]=e.save)):(t=e.name.match(/\b(Sp|Su|Ex)\b/i),t&&t[1]?a[r+"ability_type"]=t[0][0].toUpperCase()+t[0][1].toLowerCase():a[r+"ability_type"]=""),a[r+"macro-text"]=e["macro-text"]||""}catch(t){S.default.error("PFAbility.getNewAbilityAttrs",t,e)}finally{return a}}function d(e,t){var a=x.default.once(function(){"function"==typeof e&&e()}),n={};x.default.size(t)&&x.default.each(t,function(e){var t=u(e);x.default.extend(n,t)}),x.default.size(n)?E.setWrapper(n,D.default.silentParams,a):a()}function p(e,t){var a=function(t){"function"==typeof e&&e(t)},n="";try{n=" @{orig_ability_header_macro}",c(function(e){var r="",i="";try{t&&(i="NPC-"),e.types&&x.default.each(e.types,function(e){J[e]?r+=J[e].replace("NPCPREFIX",i):e&&S.default.warn("cound not find top macro for "+e)}),r&&(n+=" {{row03=^{ability-menus}}} {{row04="+r+"}}")}catch(e){S.default.error("PFAbility.getTopOfMenu innererr",e)}finally{a(n)}})}catch(e){S.default.error("PFAbility.getTopOfMenu",e),a(n)}}function f(e){var t=x.default.once(function(){"function"==typeof e&&e()}),a=x.default.after(8,t);p(function(e){W.resetOneCommandMacro("ability",!0,a,e)},!0),p(function(e){W.resetOneCommandMacro("ability",!1,a,e)},!1),W.resetOneCommandMacro("ex",!0,a),W.resetOneCommandMacro("sp",!0,a),W.resetOneCommandMacro("su",!0,a),W.resetOneCommandMacro("ex",!1,a),W.resetOneCommandMacro("sp",!1,a),W.resetOneCommandMacro("su",!1,a)}function m(e,t){var a=x.default.once(function(){f(),"function"==typeof e&&e()}),n=E.getRowId(t.sourceAttribute),r="repeating_ability_"+n+"_";getAttrs(["is_undead",r+"name",r+"compendium_category",r+"rule_category",r+"ability_type_compendium",r+"ability_type",r+"description",r+"range_from_compendium",r+"target_from_compendium",r+"area_from_compendium",r+"effect_from_compendium"],function(e){var t,n,i="",l="",s="",o="",c={},u="",d="",p={},f="",m="";try{if(e[r+"ability_type_compendium"]&&(l=e[r+"ability_type_compendium"],c[r+"ability_type"]=l,p[r+"ability_type_compendium"]=""),i=e[r+"compendium_category"],p[r+"compendium_category"]="",i){if(i=i.toLowerCase(),"feats"===i?u="feats":"monster rule"===i?u="monster-rule":"spell"===i&&(u="spell-like-abilities"),"monster-rule"===u&&e[r+"description"]&&(t=e[r+"description"].match(/Location\:\s*(.*)$/i),t&&t[1]&&(o=E.trimBoth(t[1].toLowerCase()),t=o.match(/special qual|sq|special att|special abil|defens|spell/i))))switch(t[0]){case"special qual":case"sq":u="special-qualities";break;case"special att":u="special-attacks";break;case"special abil":u="special-abilities";break;case"defens":u="defensive-abilities";break;case"spell":u="spell-like-abilities"}"Sp"!==l||u||(u="spell-like-abilities"),l||"spell-like-abilities"!==u?"Sp"!==l||u||(u="spell-like-abilities"):(l="Sp",c[r+"ability_type"]="Sp"),u?c[r+"rule_category"]=u:f+=i,"Sp"===l?(m=e[r+"target_from_compendium"]||e[r+"area_from_compendium"]||e[r+"effect_from_compendium"]||"",c[r+"targets"]=m,e[r+"range_from_compendium"]&&(n=F.parseSpellRangeText(e[r+"range_from_compendium"],m),c[r+"range_pick"]=n.dropdown,c[r+"range"]=n.rangetext),c[r+"ability-basis"]="@{CHA-mod}"):e[r+"name"]&&(d=e[r+"name"].tolowercase(),d=d.match(/^[^(]+/),s=q.specialAttackDCAbilityBase[d]?q.specialAttackDCAbilityBase[d]:"CON","CON"===s&&parseInt(e.is_undead,10)&&(s="CHA"),s="@{"+s+"}",c[r+"ability-basis"]=s)}}catch(e){S.default.error("PFAbility.importFromCompendium",e)}finally{x.default.size(p)>0&&E.setWrapper(p,D.default.silentParams),x.default.size(c)>0?E.setWrapper(c,{},a):a()}})}function _(e,t,a,n,r){var i="",l="";n=n||{};try{l=F.findAbilityInString(a[e+"abil-attack-type"]),a[e+"name"]&&(r||(n[t+"name"]=a[e+"name"]),n[t+"source-ability-name"]=a[e+"name"]),l&&(n[t+"attack-type"]=a[e+"abil-attack-type"],/CMB/i.test(l)?n[t+"vs"]="cmd":/ranged/i.test(l)?(n[t+"vs"]="touch",n[t+"isranged"]=1,n[t+"range"]=a[e+"range_numeric"]||0):(n[t+"vs"]="touch",n[t+"range"]=0)),a[e+"damage-macro-text"]&&(n[t+"precision_dmg_macro"]=a[e+"damage-macro-text"],l?n[t+"critical_dmg_macro"]=a[e+"damage-macro-text"]:n[t+"critical_dmg_macro"]=""),a[e+"damage-type"]&&(n[t+"precision_dmg_type"]=a[e+"damage-type"],l?n[t+"critical_dmg_type"]=a[e+"damage-type"]:n[t+"critical_dmg_type"]=""),a[e+"save"]&&(i&&(i+=", "),i+="Save: "+a[e+"save"]+" DC: [[@{"+e+"savedc}]]"),a[e+"abil-sr"]&&(i&&(i+=", "),i+="Spell resist:"+a[e+"abil-sr"]),i&&(n[t+"notes"]=i)}catch(e){S.default.error("PFAbility.setAttackEntryVals",e)}finally{return n}}function g(e,t,a,n,r){var i=x.default.once(function(){"function"==typeof t&&t()}),l=[],s=e||(n?E.getRowId(n.sourceAttribute):""),o="repeating_ability_"+s+"_",c=o,u=["range_numeric","damage-macro-text","damage-type","abil-sr","savedc","save","abil-attack-type","name"];s||S.default.warn("Cannot create usable attack entry from SLA since we cannot identify the row id"),u.forEach(function(e){l.push(c+e)}),getAttrs(l,function(e){var t="",n={},l="repeating_weapon_",o="",u={};try{F.findAbilityInString(e[c+"abil-attack-type"])||e[c+"damage-macro-text"]?(t=r?r:generateRowID(),o=t+"_",l+=o,n=_(c,l,e,n,r),n[l+"source-ability"]=s,n[l+"group"]="Special",n[l+"link_type"]=$.linkedAttackType.ability):S.default.warn("no attack to create for ability "+e[c+"name"]+", "+s)}catch(e){S.default.error("PFAbility.createAttackEntryFromRow",e)}finally{x.default.size(n)>0?(n[c+"create-attack-entry"]=0,a&&(u=D.default.silentParams),E.setWrapper(n,{},function(){U.resetOption(t),G.resetCommandMacro(),i()})):(n[c+"create-attack-entry"]=0,E.setWrapper(n,D.default.silentParams,i))}})}function b(e,t,a,n){var r=x.default.once(function(){"function"==typeof t&&t()}),i="",l="",s="",o=[];i=e||(n?E.getRowId(n.sourceAttribute):""),l="repeating_ability_"+E.getRepeatingIDStr(i),s=n?E.getAttributeName(n.sourceAttribute):"",o=[],s?(o=[l+s],/range/i.test(s)&&(o=[l+"range_pick",l+"range",l+"range_numeric"])):o=["range_pick","range","range_numeric","damage-macro-text","damage-type","sr","savedc","save","abil-attack-type","name"],getAttrs(o,function(e){getSectionIDs("repeating_weapon",function(t){var n=[];n=x.default.reduce(t,function(e,t){return e.push("repeating_weapon_"+t+"_source-ability"),e},[]),getAttrs(n,function(n){var s={},o={},c=[];try{x.default.each(t,function(t){var a="repeating_weapon_"+t+"_";n[a+"source-ability"]===i&&(c.push(t),s=_(l,a,e,s))})}catch(e){S.default.error("PFAbility.updateAssociatedAttack",e)}finally{x.default.size(s)>0?(a&&(o=D.default.silentParams),E.setWrapper(s,o,function(){U.resetSomeOptions(c)})):r()}})})})}function h(e,t,a){var n=x.default.once(function(){"function"==typeof t&&t()}),r=E.getRepeatingIDStr(e),i="repeating_ability_"+r;getAttrs([i+"CL-misc-mod",i+"CL-basis-mod",i+"casterlevel",i+"ability_type","buff_CasterLevel-total","CasterLevel-Penalty"],function(e){var t=0,a=0,r=0,l=0,s=0,o={};try{s=parseInt(e[i+"ability_type"],10)||0,t=parseInt(e[i+"CL-basis-mod"],10)||0,r=parseInt(e[i+"CL-misc-mod"],10)||0,l=parseInt(e["CasterLevel-Penalty"],10)||0,a=t+r+l,s&&(a+=parseInt(e["buff_CasterLevel-total"],10)||0),a!==parseInt(e[i+"casterlevel"],10)&&(o[i+"casterlevel"]=a)}catch(e){S.default.error("PFAbility.updateCharLevel",e)}finally{x.default.size(o)?E.setWrapper(o,D.default.silentParams,n):n()}})}function y(e,t,a,n){var r=x.default.once(function(){"function"==typeof t&&t()}),i=E.getRepeatingIDStr(e),l="repeating_ability_"+i;getAttrs([l+"range_pick",l+"range",l+"range_numeric",l+"casterlevel",l+"ability_type"],function(e){var t=0,a=0,n=0,i={},s=0,o=0;try{s="Sp"===e[l+"ability_type"]?1:0,a=parseInt(e[l+"range_numeric"],10)||0,s?(n=parseInt(e[l+"casterlevel"],10)||0,t=F.findSpellRange(e[l+"range"],e[l+"range_pick"],n)||0):t=parseInt(E.trimBoth(e[l+"range"]),10)||0,t!==a&&(i[l+"range_numeric"]=t),o=parseInt(e[l+"hasposrange"],10)||0,t>0&&!o?i[l+"hasposrange"]=1:o&&(i[l+"hasposrange"]=0)}catch(e){S.default.error("updateAbilityRange",e)}finally{x.default.size(i)?E.setWrapper(i,{},r):r()}})}function v(e,t,a,n){var r=E.getRepeatingIDStr(t),i="repeating_ability_"+r,l="",s="",o="",c="",u="",d="",p="";e=e||{};try{if(!a)return e;if(l="Sp"===a[i+"ability_type"]?"1":"",l!==a[i+"is_sp"]&&(e[i+"is_sp"]=l),s=(parseInt(a[i+"range_numeric"],10)||0)>0?"1":"",s!==a[i+"hasposrange"]&&(e[i+"hasposrange"]=s),a[i+"frequency"]&&"not-applicable"!==a[i+"frequency"])switch(c="1",a[i+"frequency"]){case"perday":case"permonth":case"hexfreq":case"other":o="1"}c!==a[i+"hasfrequency"]&&(e[i+"hasfrequency"]=c),o!==a[i+"hasuses"]&&(e[i+"hasuses"]=o),F.findAbilityInString(a[i+"abil-attack-type"])&&(u="1"),u!==a[i+"hasattack"]&&(e[i+"hasattack"]=u),u&&(d=a[i+"abil-attack-type"].toLowerCase(),d.indexOf("melee")>=0?p="touch":d.indexOf("range")>=0?p="ranged-touch-ray":d.indexOf("cmb")>=0&&(p="combat-maneuver-bonus-abbrv")),p!==a[i+"abil-attacktypestr"]&&(e[i+"abil-attacktypestr"]=p)}catch(e){S.default.error("PFAbility.recalcAbilities",e)}finally{return e}}function k(e,t,a){var n=x.default.once(function(){"function"==typeof t&&t()}),r=E.getRepeatingIDStr(e),i="repeating_ability_"+r,l=[];l=x.default.map(Q,function(e){return i+e}),getAttrs(l,function(t){var r={};try{r=v(r,e,t)}catch(e){S.default.error("PFAbility.recalcAbilities",e)}finally{x.default.size(r)?E.setWrapper(r,D.default.silentParams,n,a):n()}})}function w(e,t,a,n){var r=x.default.once(function(){"function"==typeof e&&e()});getSectionIDs("repeating_ability",function(e){var t,a,i=x.default.size(e);return 0===i?void r():(t=x.default.after(i,r),a=function(e){L.setRepeatingDropdownValue("ability",e,"CL-basis","CL-basis-mod",function(){h(e,function(){y(e,function(){t()})})},!0,!0)},void x.default.each(e,function(e){a(e),n||k(e)}))})}function A(e){"function"==typeof e&&e()}function C(){var e="",t="remove:repeating_ability ",a="change:repeating_ability:";on("remove:repeating_ability",S.default.callback(function(e){S.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),$.removeLinkedAttack(null,$.linkedAttackType.ability,E.getRowId(e.sourceAttribute))})),t=x.default.reduce(ee.commandMacroFields,function(e,t){return e+=a+t+" "},t),on(t,S.default.callback(function(e){("player"===e.sourceType||"api"===e.sourceType||/used_max/i.test(e.sourceAttribute))&&(S.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),V.resetTopCommandMacro(null,e),f())})),on("change:repeating_ability:CL-basis",S.default.callback(function(e){S.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),E.evaluateAndSetNumber("repeating_ability_CL-basis","repeating_ability_CL-basis-mod"),"player"!==e.sourceType&&"api"!==e.sourceType||i(null,null,e)})),e=x.default.reduce(Y,function(e,t){return e+="change:repeating_ability:"+t+" "},""),on(e,S.default.callback(function(e){("player"===e.sourceType||"api"===e.sourceType||/range/i.test(e.sourceAttribute))&&(S.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),k())})),on("change:repeating_ability:CL-misc change:repeating_ability:spell_level-misc",S.default.callback(function(e){S.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),E.evaluateAndSetNumber(e.sourceAttribute,e.sourceAttribute+"-mod")})),on("change:buff_CasterLevel-total change:CasterLevel-Penalty",S.default.callback(function(e){"sheetworker"!==e.sourceType&&"api"!==e.sourceType||(S.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),w(null,null,e,!0))})),on("change:repeating_ability:CL-basis-mod change:repeating_ability:CL-misc-mod",S.default.callback(function(e){"sheetworker"!==e.sourceType&&"api"!==e.sourceType||(S.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),h(null,null,e))})),on("change:repeating_ability:compendium_category",S.default.callback(function(e){"player"!==e.sourceType&&"api"!==e.sourceType||(S.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),m(null,e))})),on("change:repeating_ability:create-attack-entry",S.default.callback(function(e){S.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||g(null,null,!1,e)})),on("change:repeating_ability:CL-misc-mod change:repeating_ability:CL-basis-mod change:repeating_ability:range_pick change:repeating_ability:range",S.default.callback(function(e){S.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),(/range/i.test(e.sourceAttribute)&&("player"===e.sourceType||"api"===e.sourceType)||/CL/i.test(e.sourceAttribute)&&"sheetworker"===e.sourceType||"api"===e.sourceType)&&y(null,null,!1,e)})),e=x.default.reduce(ee.attackEventsSLA,function(e,t){return e+="change:repeating_ability:"+t+" "},""),on(e,S.default.callback(function(e){("player"===e.sourceType||"api"===e.sourceType||/range_numeric/i.test(e.sourceAttribute))&&(S.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),b(null,null,null,e))})),on("change:repeating_ability:rule_category",S.default.callback(function(e){S.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),s(null,null,null,e)})),on("change:repeating_ability:ability_type",S.default.callback(function(e){S.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),l(null,null,null,e)}))}Object.defineProperty(t,"__esModule",{value:!0}),t.recalculate=void 0,t.setRuleTabs=o,t.copyToAbilities=d,t.resetCommandMacro=f,t.importFromCompendium=m,t.setAttackEntryVals=_,t.createAttackEntryFromRow=g,t.updateAssociatedAttack=b,t.migrate=A;var I=a(2),x=r(I),P=(a(0),a(1)),S=r(P),T=a(3),E=n(T),M=a(4),D=r(M),R=a(5),F=n(R),N=a(9),L=n(N),z=a(13),O=(n(z),a(22)),W=n(O),B=a(28),q=n(B),H=a(11),U=n(H),j=a(8),G=n(j),X=a(29),V=n(X),K=a(7),$=n(K),Z=["is_sp","hasposrange","hasuses","hasattack","abil-attacktypestr"],Y=["ability_type","range_numeric","frequency","abil-attack-type"],Q=Z.concat(Y),J={ex:" [^{extraordinary-abilities-menu}](~@{character_id}|NPCPREFIXex_button)",sp:" [^{spell-like-abilities-menu}](~@{character_id}|NPCPREFIXsp_button)",su:" [^{supernatural-abilities-menu}](~@{character_id}|NPCPREFIXsu_button)"},ee={attackEventsSLA:["damage-macro-text","damage-type","abil-sr","save","abil-attack-type","name","range_numeric"],commandMacroFields:["name","used","used_max","showinmenu","ability_type","frequency","rule_category"]};t.recalculate=S.default.callback(function(e,t,a){var n=x.default.once(function(){S.default.info("leaving PFAbility.recalculate"),"function"==typeof e&&e()}),r=function(){f(),n()},i=function(){w(S.default.callback(r)),o()};try{A(S.default.callback(i))}catch(e){S.default.error("PFAbility.recalculate, ",e),n()}});C()},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function i(e){var t=function(t){C.setWrapper({merge_buffs_now:0},x.default.silentParams,function(){"function"==typeof e&&e()})};Z.getAllRowAttrs(function(e,a){var n={};return e&&a?(e.forEach(function(e){var t="repeating_buff_"+e+"_",r="",i="",l=0,s="",o="",c="",u=[];try{u=Object.keys(a).filter(function(e){return 0===e.indexOf(t)}).filter(function(e){return/size$|macro\-text$/i.test(e)}).filter(function(e){return!!a[e]}).map(function(e){return e.indexOf("size")>=0?"size":C.getAttributeName(e).slice(5,-11)}).filter(function(e){return 1===parseInt(a[t+"buff-"+e+"-show"],10)}),v.default.size(u)&&(r=generateRowID(),i="repeating_buff2_"+r+"_",s=i+"b",n[i+"enable_toggle"]=a[t+"buff-enable_toggle"]||"0",n[i+"name"]=a[t+"buff-name"]||"",a[t+"buff-notes"]&&(n[i+"notes"]=a[t+"buff-notes"]),u.indexOf("size")>=0&&(l++,o=s+l,n[o+"-show"]=1,n[o+"_macro-text"]=a[t+"buff-size"],n[o+"_val"]=a[t+"buff-size"],n[o+"_bonus"]="size",u=v.default.without(u,"size")),u.indexOf("CMD")>=0&&u.indexOf("AC")>=0&&parseInt(a[t+"buff-AC"],10)===parseInt(a[t+"buff-CMD"],10)&&(l++,o=s+l,n[o+"-show"]=1,n[o+"_macro-text"]=a[t+"buff-AC_macro-text"],n[o+"_val"]=a[t+"buff-AC"],n[o+"_bonus"]="ac",u.indexOf("Touch")?n[o+"_bonustype"]="deflection":n[o+"_bonustype"]="untyped",u=v.default.without(u,"AC","CMD","flat-footed","Touch")),u.indexOf("Melee")>=0&&u.indexOf("Ranged")>=0&&parseInt(a[t+"buff-Melee"],10)===parseInt(a[t+"buff-Ranged"],10)&&(l++,o=s+l,n[o+"-show"]=1,n[o+"_macro-text"]=a[t+"buff-Melee_macro-text"],n[o+"_val"]=a[t+"buff-Melee"],n[o+"_bonus"]="attack",n[o+"_bonustype"]="untyped",u=v.default.without(u,"Melee","Ranged","CMB")),u.indexOf("Fort")>=0&&u.indexOf("Will")>=0&&u.indexOf("Ref")>=0&&parseInt(a[t+"buff-Fort"],10)===parseInt(a[t+"buff-Will"],10)===parseInt(a[t+"buff-Ref"],10)&&(l++,o=s+l,n[o+"-show"]=1,n[o+"_macro-text"]=a[t+"buff-Fort_macro-text"],n[o+"_val"]=a[t+"buff-Fort"],n[o+"_bonus"]="saves",n[o+"_bonustype"]="untyped",u=v.default.without(u,"Fort","Will","Ref")),u.indexOf("Check")>=0&&u.indexOf("check_skills")>=0&&parseInt(a[t+"buff-Check"],10)===parseInt(a[t+"buff-check_skills"],10)&&(l++,o=s+l,n[o+"-show"]=1,n[o+"_macro-text"]=a[t+"buff-Check_macro-text"],n[o+"_val"]=a[t+"buff-Check"],n[o+"_bonus"]="check",n[o+"_bonustype"]="untyped",u=v.default.without(u,"Check","check_skills")),u.indexOf("DMG")>=0&&u.indexOf("DMG_ranged")>=0&&parseInt(a[t+"buff-DMG"],10)===parseInt(a[t+"buff-DMG_ranged"],10)&&(l++,o=s+l,n[o+"_macro-text"]=a[t+"buff-DMG_macro-text"],n[o+"_val"]=a[t+"buff-DMG"],n[o+"_bonus"]="dmg",n[o+"_bonustype"]="untyped",n[o+"-show"]=1,u=v.default.without(u,"DMG","DMG_ranged")),u.forEach(function(e){l++,l>6&&(l=1,r=generateRowID(),i="repeating_buff2_"+r+"_",s=i+"b",n[i+"enable_toggle"]=a[t+"buff-enable_toggle"],n[i+"name"]=a[t+"buff-name"]),o=s+l,n[o+"-show"]=1,n[o+"_macro-text"]=a[t+"buff-"+e+"_macro-text"],n[o+"_val"]=a[t+"buff-"+e]||0,c=e.toLowerCase().replace("-",""),"check"===c?c="check_ability":"dmg"===c&&(c="dmg_melee"),n[o+"_bonus"]=c,n[o+"_bonustype"]="untyped"}))}catch(t){w.default.error("Buff copy error for "+e+" "+(a["repeating_buff_"+e+"_buff-name"]||""),t)}}),void(v.default.size(n)?(w.default.debug("##############################","MERGE BUFFS NEW BUFFS ARE: ",n),C.setWrapper(n,x.default.silentParams,t)):t())):void t(1)})}function l(e,t,a){var n,r=C.getRepeatingIDStr(e),i="repeating_buff2_"+r,l="",s="",o="",c=0,u="";try{a=a||{},t[i+"add_note_to_roll"]&&(o="buff_"+t[i+"add_note_to_roll"]+"_notes"),1===parseInt(t[i+"enable_toggle"],10)&&o&&(c=1),s=C.getTranslated("buff"),l="**"+s+": @{"+i+"name}:** @{"+i+"notes}",n=new RegExp(C.escapeForRegExp(l),"i"),o?(u=t[o]||"",u?n.test(u)?c||(a[o]=u.replace(n,"")):c&&(a[o]=u+l):c&&(a[o]=l),ie.forEach(function(e){e!==o&&(u=t[e],u&&(u=u.replace(n,""),u!==t[e]&&(a[e]=u)))})):ie.forEach(function(e){u=t[e],u&&(u=u.replace(n,""),u!==t[e]&&(a[e]=u))})}catch(e){}finally{return a}}function s(e,t){var a,n,r;(e||t)&&(e=e||C.getRowId(t.sourceAttribute),a=C.getRepeatingIDStr(e),n="repeating_buff2_"+a,r=ie.concat([n+"add_note_to_roll",n+"enable_toggle"]),getAttrs(r,function(t){var a=l(e,t);v.default.size(a)&&C.setWrapper(a,x.default.silentParams)}))}function o(e,t){var a=function(){"function"==typeof e&&e()};getAttrs(ae,function(e){var n={},r={};n=v.default.reduce(J,function(t,a){var n=parseInt(e["buff_"+a+"-total"],10)||0,r=parseInt(e["buff_"+a+"_exists"],10)||0;return n&&(t["buff_"+a+"-total"]=0),r&&(t["buff_"+a+"_exists"]=0),t},{}),n=v.default.reduce(T.abilities,function(t,a){var n=parseInt(e["buff_"+a+"-total_penalty"],10)||0,r=parseInt(e["buff_"+a+"_penalty_exists"],10)||0;return n&&(t["buff_"+a+"-total_penalty"]=0),r&&(t["buff_"+a+"_penalty_exists"]=0),t},n),ie.forEach(function(e){n[e]=""}),v.default.size(n)?(t&&(r=x.default.silentParams),C.setWrapper(n,r,a)):a()})}function c(e,t,a){var n=[];a&&(n=te[a]||[],n=n.concat(ee[a]||[]));var r=e.reduce(function(e,r){var i,l="repeating_buff2_"+r+"_";try{i=le.reduce(function(e,i){var s=l+i,o=s+"_bonus",c={};try{t[o]&&1===parseInt(t[s+"-show"],10)&&(!a||t[o]===a||n.indexOf(t[o])>=0)&&(c.bonus=t[o],c.val=parseInt(t[s+"_val"],10)||0,"size"===c.bonus?c.bonusType=c.bonus:"hptemp"===c.bonus?c.bonusType="untyped":ce.indexOf(c.bonus)>=0?"enhancement"===t[s+"_bonustype"]?c.bonusType="enhancement":c.bonusType=c.bonus:c.bonusType=t[s+"_bonustype"]||"untyped",e.push(c))}catch(e){w.default.error("PFBuffs.assembleRows col:"+a+", row:"+r+", buff:"+i,e)}finally{return e}},[]),i&&v.default.size(i)&&(e=e.concat(i))}catch(e){w.default.error("PFBuffs.assembleRows erri3:",e)}finally{return e}},[]);return r}function u(e,t,a,n){var r=0,i={},l={sum:0,pen:0},s=0,o=0,c=0,u="",d=[e],p=["ac","touch","flatfooted","cmd"];try{n=n||{},r=T.abilities.indexOf(e)>=0&&e.indexOf("skill")<9,te[e]&&(d=d.concat(te[e])),t=t.filter(function(e){return d.indexOf(e.bonus)>=0?1:0}),t&&v.default.size(t)&&(w.default.debug("PFBUFFS ROWS NOW:",t),"hptemp"===e?l.sum=t.filter(function(e){return e.val>0}).reduce(function(e,t){return e+=t.val||0},0):"size"===e?(l=t.reduce(function(e,t){return t.val>0?e.sum=Math.max(e.sum,t.val):t.val<0&&(e.pen=Math.min(e.pen,t.val)),e},l),l.sum+=l.pen):(i=t.reduce(function(t,a){return a.bonus===e&&(a.val<0?t.penalty=(t.penalty||0)+a.val:se.includes(a.bonusType)?t[a.bonusType]=(t[a.bonusType]||0)+a.val:t[a.bonusType]=Math.max(t[a.bonusType]||0,a.val)),t},{}),v.default.size(d)>1&&(i=t.reduce(function(t,a){return se.indexOf(a.bonusType)<0&&te[e].indexOf(a.bonus)>=0&&a.val>0&&t[a.bonusType]>0&&(a.val=0&&w.default.debug("PFBUFFS ac bonsuses ",i,ne[e]),v.default.each(ne[e],function(e,t){w.default.debug("PFBUFFS ac ################## type:"+t+", comparing to "+e),i[t]&&(s=parseInt(a[e],10)||0,i[t]<=s?i[t]=0:i[t]-=s)}),r&&v.default.contains(i,"penalty")&&(l.pen=i.penalty,i.penalty=0),i.dodge&&w.default.info("THERE IS A DODGE BONUS!!",i),"ac"===e&&i.dodge&&(w.default.debug("yes thats right setting totaldodge"),"ac"===e&&(o+=i.dodge),i.dodge=0),l.sum=v.default.reduce(i,function(e,t,a){return e+=t},0))),"ac"===e&&(w.default.info("column is AC, setting dodge to "+o),c=parseInt(a["buff_dodge-total"],10)||0,o!==c&&(n["buff_dodge-total"]=o),s=parseInt(a.buff_dodge_exists,10)||0,o&&!s?n.buff_dodge_exists=1:s&&!o&&(n.buff_dodge_exists=0)),u=Q[e],u?(parseInt(a["buff_"+u+"-total"],10)!==l.sum&&(n["buff_"+u+"-total"]=l.sum),s=parseInt(a["buff_"+u+"_exists"],10)||0,0!==l.sum&&0===s?n["buff_"+u+"_exists"]=1:0===l.sum&&1===s&&(n["buff_"+u+"_exists"]=0),r&&(parseInt(a["buff_"+u+"-total_penalty"],10)!==l.pen&&(n["buff_"+u+"-total_penalty"]=l.pen),s=parseInt(a["buff_"+u+"_penalty_exists"],10)||0,0!==l.pen&&0===s?n["buff_"+u+"_penalty_exists"]=1:0===l.pen&&1===s&&(n["buff_"+u+"_penalty_exists"]=0))):w.default.error("PFBuffs.updateBuffTotal cannot find total column corresponding to "+e)}catch(e){w.default.error("PFBuffs.updateBuffTotal",e)}finally{return w.default.debug("######################","PFBuffs setting ",n),n}}function d(e,t,a){var n=v.default.once(function(){"function"==typeof t&&t()}),r=T.abilities.indexOf(e)>=0&&e.indexOf("skill")<0;getSectionIDs("repeating_buff2",function(i){var l,s,d,p=[],f=[],m=[];if(i&&v.default.size(i)){try{l=C.cartesianAppend(["repeating_buff2_"],i,ue),f=[e],m=[e],ee[e]&&(f=f.concat(ee[e]),m=m.concat(ee[e])),te[e]&&(f=f.concat(te[e])),p=m.map(function(e){return Q[e]}),"ac"===e&&p.push("dodge"),s=p.map(function(e){return"buff_"+e+"-total"}).concat(p.map(function(e){return"buff_"+e+"_exists"})),r&&(s=s.concat(["buff_"+Q[e]+"-total_penalty","buff_"+Q[e]+"_penalty_exists"])),l=l.concat(s),l=l.concat(ie),d=f.reduce(function(e,t){return ne[t]&&v.default.each(ne[t],function(t,a){e.push(t)}),e},[]),v.default.size(d)&&(l=l.concat(d))}catch(t){return w.default.error("PFBUffs.updateBuffTotalAsync2 "+e+" error before getattrs",t),void n()}getAttrs(l,function(t){var r,l={},s={};try{i=i.filter(function(e){return parseInt(t["repeating_buff2_"+e+"_enable_toggle"],10)||0}),v.default.size(i)?(r=c(i,t,e),s=m.reduce(function(e,a){return u(a,r,t,e)},s)):o()}catch(t){w.default.error("PFBuffs.updateBuffTotalAsync errrou on col "+e,t)}finally{v.default.size(s)?(a&&(l=x.default.silentParams),C.setWrapper(s,l,n)):n()}})}else o(t)})}function p(e,t,a){var n=v.default.once(function(){"function"==typeof e&&e()});getSectionIDs("repeating_buff2",function(e){var a;return e&&0!==v.default.size(e)?(a=C.cartesianAppend(["repeating_buff2_"],e,ue),a=a.concat(ae),a=a.concat(re),void getAttrs(a,function(a){var r=[],i={},s={};try{if(e=e.filter(function(e){return parseInt(a["repeating_buff2_"+e+"_enable_toggle"],10)||0}),!e||0===v.default.size(e))return void o(n,t);ie.forEach(function(e){s[e]="",a[e]=""}),s=e.reduce(function(e,t){return e=l(t,a,e),a=v.default.extend(a,e),e},s),r=c(e,a),v.default.each(Y,function(e){s=u(e,r,a,s)})}catch(e){w.default.error("PFBuffs.updateAllBuffTotalsAsync2 errrou on col ",e)}finally{v.default.size(s)?(t&&(i=x.default.silentParams),C.setWrapper(s,i,n)):n()}})):void o(n,t)})}function f(e){var t=v.default.once(function(){"function"==typeof e&&e()});getAttrs(ae,function(e){var a={},n=function(t,a){var n,r;return a=a||"",n=parseInt(e[t+"-total"+a],10)||0,r=parseInt(e[t+a+"_exists"],10)||0,0===n||r?0===n&&r?0:-1:1};try{a=v.default.reduce(J,function(e,t){var a,r;return a="buff_"+t,r=n(a,""),1!==r&&0!==r||(e[a+"_exists"]=r),e},a),a=v.default.reduce(T.abilities,function(e,t){var a,r;return a="buff_"+t,r=n(a,"_penalty"),1!==r&&0!==r||(e[a+"_penalty_exists"]=r),e},a)}catch(e){w.default.error("PFBuffs.resetStatuspanel2 error inside calculate exists",e)}finally{v.default.size(a)>0?C.setWrapper(a,x.default.silentParams,t):t()}})}function m(e,t){var a=v.default.once(function(){"function"==typeof e&&e()}),n=["_b1-show","_b1_val","_b1_macro-text","_b2-show","_b2_val","_b2_macro-text","_b3-show","_b3_val","_b3_macro-text","_b4-show","_b4_val","_b4_macro-text","_b5-show","_b5_val","_b5_macro-text","_b6-show","_b6_val","_b6_macro-text","_enable_toggle"],r=function(e,t,a){var n=v.default.after(6,e);try{le.forEach(function(e){parseInt(a["repeating_buff2_"+t+"_enable_toggle"],10)&&parseInt(a["repeating_buff2_"+t+"_"+e+"-show"],10)?C.evaluateAndSetNumber("repeating_buff2_"+t+"_"+e+"_macro-text","repeating_buff2_"+t+"_"+e+"_val",0,n,!0):n()})}catch(e){w.default.error("PFBuffs.reEvaluateCustomMacros2: rowid"+t,e),n()}};getSectionIDs("repeating_buff",function(e){var t;try{v.default.size(e)>0?(t=C.cartesianAppend(["repeating_buff2_"],e,n),getAttrs(t,function(t){var n=v.default.size(e),i=v.default.after(n,a);e.forEach(function(e){r(i,e,t)})})):o(a)}catch(e){w.default.error("PFBuffs.reEvaluateCustomMacros2",e),a()}})}function _(e,t,a){var n,r="",i={},l=0,s=0,o=0,c=0,u=0;if(!e)return i;switch(n=generateRowID(),r="repeating_buff2_"+n+"_",i[r+"enable_toggle"]=a?1:0,i[r+"tabcat2"]="1",t&&(s=parseInt(t["CON-mod"],10),o=parseInt(t["speed-base"],10),c=parseInt(t.level,10),isNaN(s)||isNaN(o)||isNaN(c)||(l=1)),e){case"rage":i[r+"name"]=C.getTranslated("buff-rage"),i[r+"bufftype"]="class",i[r+"tabcat"]="class",i[r+"b1-show"]=1,i[r+"b1_bonus"]="str",i[r+"b1_bonustype"]="morale",i[r+"b1_macro-text"]="4+(2*floor((@{level}-1)/10))",u=1===l?c<11?4:20===c?8:6:4,i[r+"b1_val"]=u,i[r+"b2-show"]=1,i[r+"b2_bonus"]="con",i[r+"b2_bonustype"]="morale",i[r+"b2_macro-text"]="4+(2*floor((@{level}-1)/10))",i[r+"b2_val"]=u,i[r+"b3-show"]=1,i[r+"b3_bonus"]="ac",i[r+"b3_bonustype"]="untyped",i[r+"b3_macro-text"]="-2",i[r+"b3_val"]=-2,i[r+"b4-show"]=1,i[r+"b4_bonus"]="will",i[r+"b4_bonustype"]="morale",i[r+"b4_macro-text"]="2+floor((@{level}-1)/10)",u/=2,i[r+"b4_val"]=u,i[r+"add_note_to_roll"]="skill",i[r+"notes"]=C.getTranslated("buff-rage-note"),i[r+"description-show"]=1;
+break;case"unchainedrage":i[r+"name"]=C.getTranslated("buff-rage-unchained"),i[r+"bufftype"]="class",i[r+"tabcat"]="class",i[r+"b1-show"]=1,i[r+"b1_bonus"]="melee",i[r+"b1_bonustype"]="untyped",i[r+"b1_macro-text"]="2+(floor((@{level}-1)/10))",u=1===l?c<11?4:20===c?8:6:4,i[r+"b1_val"]=u,i[r+"b2-show"]=1,i[r+"b2_bonus"]="dmg_melee",i[r+"b2_bonustype"]="untyped",i[r+"b2_macro-text"]="2+(floor((@{level}-1)/10))",i[r+"b2_val"]=u,i[r+"b3-show"]=1,i[r+"b3_bonus"]="ac",i[r+"b3_bonustype"]="untyped",i[r+"b3_macro-text"]="-2",i[r+"b3_val"]=-2,i[r+"b4-show"]=1,i[r+"b4_bonus"]="will",i[r+"b4_bonustype"]="untyped",i[r+"b4_macro-text"]="2+floor((@{level}-1)/10)",u/=2,i[r+"b4_val"]=u,i[r+"b5-show"]=1,i[r+"b5_bonus"]="hptemp",i[r+"b5_hide"]=1,i[r+"b5_macro-text"]="@{level}*(2+floor((@{level}-1)/10))",u*=c,i[r+"b5_val"]=u,i[r+"add_note_to_roll"]="skill",i[r+"notes"]=C.getTranslated("buff-rage-note"),i[r+"description-show"]=1;break;case"prayer":i[r+"name"]=C.getTranslated("buff-prayer"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="attack",i[r+"b1_bonustype"]="luck",i[r+"b1_macro-text"]="1",i[r+"b1_val"]=1,i[r+"b2-show"]=1,i[r+"b2_bonus"]="dmg",i[r+"b2_bonustype"]="luck",i[r+"b2_macro-text"]="1",i[r+"b2_val"]=1,i[r+"b3-show"]=1,i[r+"b3_bonus"]="saves",i[r+"b3_bonustype"]="luck",i[r+"b3_macro-text"]="1",i[r+"b3_val"]=1,i[r+"b4-show"]=1,i[r+"b4_bonus"]="check_skills",i[r+"b4_bonustype"]="luck",i[r+"b4_macro-text"]="1",i[r+"b4_val"]=1;break;case"prayerdebuff":i[r+"name"]=C.getTranslated("buff-prayer-debuff"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="attack",i[r+"b1_bonustype"]="luck",i[r+"b1_macro-text"]="-1",i[r+"b1_val"]=-1,i[r+"b2-show"]=1,i[r+"b2_bonus"]="dmg",i[r+"b2_bonustype"]="luck",i[r+"b2_macro-text"]="-1",i[r+"b2_val"]=-1,i[r+"b3-show"]=1,i[r+"b3_bonus"]="saves",i[r+"b3_bonustype"]="luck",i[r+"b3_macro-text"]="-1",i[r+"b3_val"]=-1,i[r+"b4-show"]=1,i[r+"b4_bonus"]="check_skills",i[r+"b4_bonustype"]="luck",i[r+"b4_macro-text"]="-1",i[r+"b4_val"]=-1;break;case"bless":i[r+"name"]=C.getTranslated("buff-bless"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="attack",i[r+"b1_bonustype"]="morale",i[r+"b1_macro-text"]="1",i[r+"b1_val"]=1,i[r+"b2-show"]=0,i[r+"b2_bonus"]="will",i[r+"b2_bonustype"]="morale",i[r+"b2_macro-text"]="1",i[r+"b2_val"]=1,i[r+"add_note_to_roll"]="save",i[r+"notes"]=C.getTranslated("buff-bless-note"),i[r+"description-show"]=1;break;case"aid":i[r+"name"]=C.getTranslated("buff-aid"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="attack",i[r+"b1_bonustype"]="morale",i[r+"b1_macro-text"]="1",i[r+"b2-show"]=0,i[r+"b2_bonus"]="will",i[r+"b2_bonustype"]="morale",i[r+"b2_macro-text"]="2",i[r+"b2_val"]=2,i[r+"b3-show"]=1,i[r+"b3_bonus"]="hptemp",i[r+"b3_hide"]=1,i[r+"b3_val_error"]=1,i[r+"b3_macro-text"]="1d8 + @{level}",u=l?4+c:4,i[r+"b3_val"]=u,i[r+"add_note_to_roll"]="save",i[r+"notes"]=C.getTranslated("buff-aid-note"),i[r+"description-show"]=1;break;case"haste":i[r+"name"]=C.getTranslated("buff-haste"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="attack",i[r+"b1_bonustype"]="untyped",i[r+"b1_macro-text"]="1",i[r+"b1_val"]=1,i[r+"b2-show"]=1,i[r+"b2_bonus"]="ac",i[r+"b2_bonustype"]="dodge",i[r+"b2_macro-text"]="1",i[r+"b2_val"]=1,i[r+"b3-show"]=1,i[r+"b3_bonus"]="ref",i[r+"b3_bonustype"]="dodge",i[r+"b3_macro-text"]="1",i[r+"b3_val"]=1,i[r+"b4-show"]=1,i[r+"b4_bonus"]="speed",i[r+"b4_bonustype"]="enhancement",i[r+"b4_macro-text"]="min(@{speed-base},30)",u=30,l&&o<30&&(u=o),i[r+"b4_val"]=u,i[r+"add_note_to_roll"]="attack",i[r+"notes"]=C.getTranslated("buff-haste-note"),i[r+"description-show"]=1;break;case"enlargeperson":i[r+"name"]=C.getTranslated("buff-enlarge-person"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="size",i[r+"b1_hide"]=1,i[r+"b1_macro-text"]="1",i[r+"b1_val"]=1,i[r+"b2-show"]=1,i[r+"b2_bonus"]="str",i[r+"b2_bonustype"]="size",i[r+"b2_macro-text"]="2",i[r+"b2_val"]=2,i[r+"b3-show"]=1,i[r+"b3_bonus"]="dex",i[r+"b3_bonustype"]="size",i[r+"b3_macro-text"]="-2",i[r+"b3_val"]=-2,i[r+"notes"]=C.getTranslated("buff-enlarge-person-note");break;case"divinefavor":i[r+"name"]=C.getTranslated("buff-divine-favor"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="attack",i[r+"b1_bonustype"]="luck",i[r+"b1_macro-text"]="min(3,1+floor((@{level}-1)/3))",u=1,l&&(u=c<=3?1:c<=6?2:3),i[r+"b1_val"]=u,i[r+"b2-show"]=1,i[r+"b2_bonus"]="dmg",i[r+"b2_bonustype"]="luck",i[r+"b2_macro-text"]="min(3,1+floor((@{level}-1)/3))",i[r+"b2_val"]=u;break;case"shieldoffaith":i[r+"name"]=C.getTranslated("buff-shield-of-faith"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="ac",i[r+"b1_bonustype"]="deflection",i[r+"b1_macro-text"]="2+floor((@{level})/6)",u=2,l&&(u=c<6?2:c<12?3:c<18?4:5),i[r+"b1_val"]=u;break;case"shield":i[r+"name"]=C.getTranslated("buff-shield"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="shield",i[r+"b1_bonustype"]="shield",i[r+"b1_macro-text"]="4",i[r+"b1_val"]=4,i[r+"add_note_to_roll"]="defense",i[r+"notes"]=C.getTranslated("buff-shield-note"),i[r+"description-show"]=1;break;case"magearmor":i[r+"name"]=C.getTranslated("buff-mage-armor"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="armor",i[r+"b1_bonustype"]="armor",i[r+"b1_macro-text"]="4",i[r+"b1_val"]=4,i[r+"add_note_to_roll"]="defense",i[r+"notes"]=C.getTranslated("buff-magearmor-note"),i[r+"description-show"]=1;break;case"inspirecourage":i[r+"name"]=C.getTranslated("buff-inspire-courage"),i[r+"bufftype"]="song",i[r+"tabcat"]="song",i[r+"b1-show"]=1,i[r+"b1_bonus"]="attack",i[r+"b1_bonustype"]="competence",i[r+"b1_macro-text"]="1+floor((@{level}+1)/6)",u=1,l&&(u=c<5?1:c<11?2:c<16?3:4),i[r+"b1_val"]=u,i[r+"b3-show"]=1,i[r+"b3_bonus"]="dmg",i[r+"b3_bonustype"]="competence",i[r+"b3_macro-text"]="1+floor((@{level}+1)/6)",i[r+"b3_val"]=u,i[r+"b2-show"]=0,i[r+"b2_bonus"]="will",i[r+"b2_bonustype"]="morale",i[r+"b2_macro-text"]="1+floor((@{level}+1)/6)",i[r+"b2_val"]=u,i[r+"add_note_to_roll"]="save",i[r+"notes"]=C.getTranslated("buff-inspire-courage-note"),i[r+"description-show"]=1;break;case"inspiregreatness":i[r+"name"]=C.getTranslated("buff-inspire-greatness"),i[r+"bufftype"]="song",i[r+"tabcat"]="song",i[r+"b1-show"]=1,i[r+"b1_bonus"]="attack",i[r+"b1_bonustype"]="competence",i[r+"b1_macro-text"]="2",i[r+"b1_val"]=2,i[r+"b2-show"]=1,i[r+"b2_bonus"]="fort",i[r+"b2_bonustype"]="competence",i[r+"b2_macro-text"]="2",i[r+"b2_val"]=2,i[r+"b3-show"]=1,i[r+"b3_bonus"]="hptemp",i[r+"b3_hide"]=1,i[r+"b3_macro-text"]="2d10+(2*@{CON-mod})",u=10,l&&(u=10+2*s),i[r+"b3_val"]=u,i[r+"b3_val_error"]=1,i[r+"b4-show"]=1,i[r+"b4_bonus"]="casterlevel",i[r+"b4_bonustype"]="untyped",i[r+"b4_macro-text"]="2",i[r+"b4_val"]=2;break;case"inspireheroics":i[r+"name"]=C.getTranslated("buff-inspire-heroics"),i[r+"bufftype"]="song",i[r+"tabcat"]="song",i[r+"b1-show"]=1,i[r+"b1_bonus"]="saves",i[r+"b1_bonustype"]="morale",i[r+"b1_macro-text"]="4",i[r+"b1_val"]=4,i[r+"b2-show"]=1,i[r+"b2_bonus"]="ac",i[r+"b2_bonustype"]="dodge",i[r+"b2_macro-text"]="4",i[r+"b2_val"]=4;break;case"inspiredrage":i[r+"name"]=C.getTranslated("buff-inspired-rage"),i[r+"bufftype"]="song",i[r+"tabcat"]="song",i[r+"b1-show"]=1,i[r+"b1_bonus"]="str",i[r+"b1_bonustype"]="morale",i[r+"b1_macro-text"]="2+(2*floor(@{level}/8))",u=2,l&&(u=c<8?2:c<16?4:6),i[r+"b1_val"]=u,i[r+"b2-show"]=1,i[r+"b2_bonus"]="con",i[r+"b2_bonustype"]="morale",i[r+"b2_macro-text"]="2+(2*floor(@{level}/8))",i[r+"b2_val"]=u,i[r+"b3-show"]=1,i[r+"b3_bonus"]="ac",i[r+"b3_bonustype"]="untyped",i[r+"b3_macro-text"]="-1",i[r+"b3_val"]=-1,i[r+"b4-show"]=1,i[r+"b4_bonus"]="will",i[r+"b4_bonustype"]="morale",i[r+"b4_macro-text"]="1+floor(@{level}/4)",u=1,l&&(u=1+Math.floor(c/4)),i[r+"b4_val"]=u,i[r+"add_note_to_roll"]="skill",i[r+"notes"]=C.getTranslated("buff-inspired-rage-note"),i[r+"description-show"]=1;break;case"heroism":i[r+"name"]=C.getTranslated("buff-heroism"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="attack",i[r+"b1_bonustype"]="morale",i[r+"b1_macro-text"]="2",i[r+"b1_val"]=2,i[r+"b2-show"]=1,i[r+"b2_bonus"]="saves",i[r+"b2_bonustype"]="morale",i[r+"b2_macro-text"]="2",i[r+"b2_val"]=2,i[r+"b3-show"]=1,i[r+"b3_bonus"]="check_skills",i[r+"b3_bonustype"]="morale",i[r+"b3_macro-text"]="2",i[r+"b3_val"]=2;break;case"blessingoffervor":i[r+"name"]=C.getTranslated("buff-blessing-of-fervor"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="attack",i[r+"b1_bonustype"]="untyped",i[r+"b1_macro-text"]="2",i[r+"b1_val"]=2,i[r+"b2-show"]=1,i[r+"b2_bonus"]="ac",i[r+"b2_bonustype"]="dodge",i[r+"b2_macro-text"]="2",i[r+"b2_val"]=2,i[r+"b3-show"]=1,i[r+"b3_bonus"]="ref",i[r+"b3_bonustype"]="dodge",i[r+"b3_macro-text"]="2",i[r+"b3_val"]=2,i[r+"b4-show"]=1,i[r+"b4_bonus"]="speed",i[r+"b4_bonustype"]="enhancement",i[r+"b4_macro-text"]="30",i[r+"b4_val"]=30,i[r+"notes"]=C.getTranslated("buff-blessing-of-fervor-note"),i[r+"description-show"]=1;break;case"goodhope":i[r+"name"]=C.getTranslated("buff-good-hope"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="attack",i[r+"b1_bonustype"]="morale",i[r+"b1_macro-text"]="2",i[r+"b1_val"]=2,i[r+"b2-show"]=1,i[r+"b2_bonus"]="dmg",i[r+"b2_bonustype"]="morale",i[r+"b2_macro-text"]="2",i[r+"b2_val"]=2,i[r+"b3-show"]=1,i[r+"b3_bonus"]="saves",i[r+"b3_bonustype"]="morale",i[r+"b3_macro-text"]="2",i[r+"b3_val"]=2,i[r+"b4-show"]=1,i[r+"b4_bonus"]="check",i[r+"b4_bonustype"]="morale",i[r+"b4_macro-text"]="2",i[r+"b4_val"]=2;break;case"crushingdespair":i[r+"name"]=C.getTranslated("buff-crushing-despair"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="attack",i[r+"b1_macro-text"]="-2",i[r+"b1_val"]=-2,i[r+"b2-show"]=1,i[r+"b2_bonus"]="dmg",i[r+"b2_macro-text"]="-2",i[r+"b2_val"]=-2,i[r+"b3-show"]=1,i[r+"b3_bonus"]="saves",i[r+"b3_macro-text"]="-2",i[r+"b3_val"]=-2,i[r+"b4-show"]=1,i[r+"b4_bonus"]="check",i[r+"b4_macro-text"]="-2",i[r+"b4_val"]=-2;break;case"archonsaura":i[r+"name"]=C.getTranslated("buff-archons-aura"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="attack",i[r+"b1_macro-text"]="-2",i[r+"b1_val"]=-2,i[r+"b2-show"]=1,i[r+"b2_bonus"]="saves",i[r+"b2_macro-text"]="-2",i[r+"b2_val"]=-2,i[r+"b3-show"]=1,i[r+"b3_bonus"]="ac",i[r+"b3_macro-text"]="-2",i[r+"b3_val"]=-2,i[r+"add_note_to_roll"]="defense",i[r+"description-show"]="1",i[r+"notes"]=C.getTranslated("buff-archons-aura-note");break;case"curse":i[r+"name"]=C.getTranslated("buff-curse"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="str",i[r+"b1_macro-text"]="-6",i[r+"b1_val"]=-6,i[r+"b2-show"]=1,i[r+"b2_bonus"]="attack",i[r+"b2_macro-text"]="-4",i[r+"b2_val"]=-4,i[r+"b2-show"]=1,i[r+"b2_bonus"]="saves",i[r+"b2_macro-text"]="-4",i[r+"b2_val"]=-4,i[r+"b2-show"]=1,i[r+"b2_bonus"]="check",i[r+"b2_macro-text"]="-4",i[r+"b2_val"]=-4,i[r+"description-show"]="1",i[r+"notes"]=C.getTranslated("buff-curse-note");break;case"desecrate":i[r+"name"]=C.getTranslated("buff-desecrate"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="attack",i[r+"b1_bonustype"]="profane",i[r+"b1_macro-text"]="1",i[r+"b1_val"]=1,i[r+"b2-show"]=1,i[r+"b2_bonus"]="dmg",i[r+"b2_bonustype"]="profane",i[r+"b2_macro-text"]="1",i[r+"b2_val"]=1,i[r+"b3-show"]=1,i[r+"b3_bonus"]="saves",i[r+"b3_bonustype"]="profane",i[r+"b3_macro-text"]="1",i[r+"b3_val"]=1,i[r+"add_note_to_roll"]="save",i[r+"description-show"]="1",i[r+"notes"]=C.getTranslated("buff-desecrate-note");break;case"consecrate":i[r+"name"]=C.getTranslated("buff-consecrate"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="attack",i[r+"b1_macro-text"]="-1",i[r+"b1_val"]=-1,i[r+"b2-show"]=1,i[r+"b2_bonus"]="dmg",i[r+"b2_macro-text"]="-1",i[r+"b2_val"]=-1,i[r+"b3-show"]=1,i[r+"b3_bonus"]="saves",i[r+"b3_macro-text"]="-1",i[r+"b3_val"]=-1,i[r+"add_note_to_roll"]="save",i[r+"description-show"]="1",i[r+"notes"]=C.getTranslated("buff-consecrate-note");break;case"slow":i[r+"name"]=C.getTranslated("buff-slow"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="attack",i[r+"b1_macro-text"]="-1",i[r+"b1_val"]=-1,i[r+"b2-show"]=1,i[r+"b2_bonus"]="ac",i[r+"b2_macro-text"]="-1",i[r+"b2_val"]=-1,i[r+"b3-show"]=1,i[r+"b3_bonus"]="ref",i[r+"b3_macro-text"]="-1",i[r+"b3_val"]=-1,i[r+"b4-show"]=1,i[r+"b3_bonus"]="speed",i[r+"b3_macro-text"]="-ceil(ceil(@{speed-base}/2)/5)*5",i[r+"b3_val"]=-15,i[r+"description-show"]="1",i[r+"notes"]=C.getTranslated("buff-slow-note");break;case"reduceperson":i[r+"name"]=C.getTranslated("buff-reduce-person"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="size",i[r+"b1_hide"]=1,i[r+"b1_macro-text"]="-1",i[r+"b1_val"]=-1,i[r+"b2-show"]=1,i[r+"b2_bonus"]="str",i[r+"b2_bonustype"]="size",i[r+"b2_macro-text"]="-2",i[r+"b2_val"]=-2,i[r+"b3-show"]=1,i[r+"b3_bonus"]="dex",i[r+"b3_bonustype"]="size",i[r+"b3_macro-text"]="+2",i[r+"b3_val"]=2,i[r+"notes"]=C.getTranslated("buff-reduce-person-note");break;case"bane":i[r+"name"]=C.getTranslated("buff-bane"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="attack",i[r+"b1_macro-text"]="-1",i[r+"b1_val"]=-1,i[r+"b2-show"]=0,i[r+"b2_bonus"]="will",i[r+"b2_macro-text"]="-1",i[r+"b2_val"]=-1,i[r+"add_note_to_roll"]="save",i[r+"description-show"]="1",i[r+"notes"]=C.getTranslated("buff-bane-note");break;case"deathknell":i[r+"name"]=C.getTranslated("buff-death-knell"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="str",i[r+"b1_bonustype"]="enhancement",i[r+"b1_macro-text"]="2",i[r+"b1_val"]=2,i[r+"b2-show"]=1,i[r+"b2_bonus"]="casterlevel",i[r+"b2_bonustype"]="untyped",i[r+"b2_macro-text"]="1",i[r+"b2_val"]=1,i[r+"b3-show"]=1,i[r+"b3_bonus"]="hptemp",i[r+"b3_hide"]=1,i[r+"b3_macro-text"]="1d8",i[r+"b3_val"]=4,i[r+"b3_val_error"]=1,i[r+"description-show"]="1",i[r+"notes"]="roll 1d8 and place in temp hp macro textbox";break;case"magicvestment":i[r+"name"]=C.getTranslated("buff-magic-vestment"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="ac",i[r+"b1_bonustype"]="enhancement",i[r+"b1_macro-text"]="1+floor(@{level}/4)",u=1,l&&(u=1+Math.floor(c/4)),i[r+"b1_val"]=u;break;case"ward":i[r+"name"]=C.getTranslated("buff-ward"),i[r+"bufftype"]="hex",i[r+"tabcat"]="hex",i[r+"b1-show"]=1,i[r+"b1_bonus"]="ac",i[r+"b1_bonustype"]="deflection",i[r+"b1_macro-text"]="2 + (floor(@{level}/8)",u=2,l&&(u=2+Math.floor(c/8)),i[r+"b1_val"]=u,i[r+"b2-show"]=1,i[r+"b2_bonus"]="saves",i[r+"b2_bonustype"]="resistance",i[r+"b2_macro-text"]="2 + (floor(@{level}/8)",i[r+"b2_val"]=u,i[r+"add_note_to_roll"]="save",i[r+"description-show"]="1",i[r+"notes"]=C.getTranslated("buff-ward-note");break;case"battlespirit":i[r+"name"]=C.getTranslated("buff-battle-spirit"),i[r+"bufftype"]="aura",i[r+"tabcat"]="aura",i[r+"b1-show"]=1,i[r+"b1_bonus"]="attack",i[r+"b1_bonustype"]="morale",i[r+"b1_macro-text"]="1 + (floor(@{level}/8)",u=1,l&&(u=1+Math.floor(c/8)),i[r+"b1_val"]=u,i[r+"b2-show"]=1,i[r+"b2_bonus"]="dmg",i[r+"b2_bonustype"]="morale",i[r+"b2_macro-text"]="1 + (floor(@{level}/8)",i[r+"b2_val"]=u;break;case"battleward":i[r+"name"]=C.getTranslated("buff-battle-ward"),i[r+"bufftype"]="hex",i[r+"tabcat"]="hex",i[r+"b1-show"]=1,i[r+"b1_bonus"]="ac",i[r+"b1_bonustype"]="deflection",i[r+"b1_macro-text"]="3 + (floor(@{level}/8)",u=3,l&&(u=3+Math.floor(c/8)),i[r+"b1_val"]=u,i[r+"add_note_to_roll"]="defense",i[r+"description-show"]="1",i[r+"notes"]=C.getTranslated("buff-battle-ward-note");break;case"hamperinghex":i[r+"name"]=C.getTranslated("buff-hampering-hex"),i[r+"bufftype"]="hex",i[r+"tabcat"]="hex",i[r+"b1-show"]=1,i[r+"b1_bonus"]="ac",i[r+"b1_macro-text"]="-2",i[r+"b1_val"]=-2,i[r+"notes"]="At 8th level the penalty becomes -4";break;case"boneward":i[r+"name"]=C.getTranslated("buff-bone-ward"),i[r+"bufftype"]="hex",i[r+"tabcat"]="hex",i[r+"b1-show"]=1,i[r+"b1_bonus"]="ac",i[r+"b1_bonustype"]="deflection",i[r+"b1_macro-text"]="2 + (floor(@{level}/8)",u=2,l&&(u=2+Math.floor(c/8)),i[r+"b1_val"]=u;break;case"stardust":i[r+"name"]=C.getTranslated("buff-stardust"),i[r+"bufftype"]="spell",i[r+"tabcat"]="spell",i[r+"b1-show"]=1,i[r+"b1_bonus"]="attack",i[r+"b1_macro-text"]="-1 - (floor(@{level}/4))",u=-1,l&&(u=-1*(1+Math.floor(c/4))),i[r+"b1_val"]=u,i[r+"add_note_to_roll"]="skill",i[r+"description-show"]="1",i[r+"notes"]=C.getTranslated("buff-stardust-note");break;case"airbarrier":i[r+"name"]=C.getTranslated("buff-air-barrier"),i[r+"bufftype"]="hex",i[r+"tabcat"]="hex",i[r+"b1-show"]=1,i[r+"b1_bonus"]="armor",i[r+"b1_bonustype"]="armor",i[r+"b1_macro-text"]="4 + (2*(floor(max((@{level}-3),0)/4)",u=4,l&&(c<7?u=4:u<11?u=6:u<15?u=8:u<19&&(u=10)),i[r+"b1_val"]=u,i[r+"description-show"]="1",i[r+"notes"]=C.getTranslated("buff-air-barrier-note");break;case"elementaloverflow":i[r+"name"]=C.getTranslated("buff-elemental-overflow"),i[r+"bufftype"]="class",i[r+"tabcat"]="class",i[r+"b1-show"]=1,i[r+"b1_bonus"]="kineticblast",i[r+"b1_bonustype"]="untyped",i[r+"b1_macro-text"]="min(@{kineticistburn},max(0,floor(@{kineticist_level-mod}/3)))",i[r+"b1_val"]=0,i[r+"b2-show"]=1,i[r+"b2_bonus"]="dmg_kineticblast",i[r+"b2_bonustype"]="untyped",i[r+"b2_macro-text"]="2*min(@{kineticistburn},max(0,floor(@{kineticist_level-mod}/3)))",i[r+"b2_val"]=0,i[r+"b3-show"]=1,i[r+"b3_bonus"]="dex",i[r+"b3_bonustype"]="size",i[r+"b3_macro-text"]="min(3,max(0,floor((@{kineticistburn}-1)/2)),floor((@{kineticist_level-mod}-1)/5))*2",i[r+"b3_val"]=0,i[r+"b4-show"]=1,i[r+"b4_bonus"]="con",i[r+"b4_bonustype"]="size",i[r+"b4_macro-text"]="min(2,max(0,floor((@{kineticistburn}+1)/4)),floor((@{kineticist_level-mod}+4)/10))*2",i[r+"b4_val"]=0,i[r+"b5-show"]=1,i[r+"b5_bonus"]="str",i[r+"b5_bonustype"]="size",i[r+"b5_macro-text"]="min(1,max(0,floor(@{kineticistburn}/5)),floor(@{kineticist_level-mod}/11))*2",i[r+"b5_val"]=0,i[r+"description-show"]="1",i[r+"add_note_to_roll"]="defense",i[r+"notes"]="**:"+C.getTranslated("buff-elemental-overflow")+"** [[({1d1,{1d0,(@{kineticist_level-mod}-2)d1}kh1}kl1)*5*@{kineticistburn}]]**%** "+C.getTranslated("buff-elemental-overflow-note")}return i}function g(e,t){var a,n={};a=["add_common_buff","common_buff_toadd","CON-mod","level","speed-base"],getAttrs(a,function(e){var a=0;w.default.debug("adding common buff:",e),parseInt(e.add_common_buff,10)&&(e.common_buff_toadd&&(t&&"player"===t.sourceType&&(a=1),n=_(e.common_buff_toadd,e,a),n.common_buff_toadd="","slow"===e.common_buff_toadd&&(n["condition-Staggered"]=1)),n.add_common_buff=0,C.setWrapper(n,x.default.silentParams,p))})}function b(e){Z.migrate(e)}function h(){var e=["customa1","customa2","customa3","customa4","customa5","customa6","customa7","customa8","customa9","customa10","customa11","customa12"];on("change:add_common_buff",w.default.callback(function(e){"player"!==e.sourceType&&"api"!==e.sourceType||(w.default.debug("caught "+e.sourceAttribute+", event: "+e.sourceType),g(null,e))})),v.default.each(ne,function(e,t){v.default.each(e,function(e,a){on("change:"+e,w.default.callback(function(e){"player"!==e.sourceType&&"api"!==e.sourceType||(w.default.debug("caught "+e.sourceAttribute+", event: "+e.sourceType),d(t))}))})}),le.forEach(function(e){var t="change:repeating_buff2:"+e;on(t+"_macro-text",w.default.callback(function(t){w.default.debug("caught "+t.sourceAttribute+" for column "+e+", event: "+t.sourceType),C.evaluateAndSetNumber("repeating_buff2_"+e+"_macro-text","repeating_buff2_"+e+"_val",0,null,!1)})),on(t+"_bonustype",w.default.callback(function(t){"player"!==t.sourceType&&"api"!==t.sourceType||getAttrs(["repeating_buff2_"+e+"_val","repeating_buff2_"+e+"-show","repeating_buff2_"+e+"_bonus","repeating_buff2_enable_toggle"],function(a){w.default.debug("caught "+t.sourceAttribute+" event: "+t.sourceType,a),parseInt(a["repeating_buff2_"+e+"-show"],10)&&parseInt(a.repeating_buff2_enable_toggle,10)&&parseInt(a["repeating_buff2_"+e+"_val"],10)&&a["repeating_buff2_"+e+"_bonus"]&&d(a["repeating_buff2_"+e+"_bonus"])})})),on(t+"-show ",w.default.callback(function(t){w.default.debug("caught "+t.sourceAttribute+" event: "+t.sourceType),"player"!==t.sourceType&&"api"!==t.sourceType||getAttrs(["repeating_buff2_"+e+"_val","repeating_buff2_"+e+"_bonus","repeating_buff2_enable_toggle"],function(a){w.default.debug("caught "+t.sourceAttribute+" event: "+t.sourceType,a),parseInt(a.repeating_buff2_enable_toggle,10)&&parseInt(a["repeating_buff2_"+e+"_val"],10)&&a["repeating_buff2_"+e+"_bonus"]&&d(a["repeating_buff2_"+e+"_bonus"])})})),on(t+"_val",w.default.callback(function(t){w.default.debug("caught "+t.sourceAttribute+" event: "+t.sourceType),"sheetworker"!==t.sourceType&&"api"!==t.sourceType||getAttrs(["repeating_buff2_"+e+"-show","repeating_buff2_"+e+"_bonus","repeating_buff2_enable_toggle"],function(a){w.default.debug("caught "+t.sourceAttribute+" event: "+t.sourceType,a),parseInt(a.repeating_buff2_enable_toggle,10)&&parseInt(a["repeating_buff2_"+e+"-show"],10)&&a["repeating_buff2_"+e+"_bonus"]&&d(a["repeating_buff2_"+e+"_bonus"])})})),on(t+"_bonus",w.default.callback(function(t){"player"!==t.sourceType&&"api"!==t.sourceType||getAttrs(["repeating_buff2_"+e+"_val","repeating_buff2_"+e+"_bonus","repeating_buff2_"+e+"_hide","repeating_buff2_enable_toggle"],function(a){w.default.debug("caught "+t.sourceAttribute+" event: "+t.sourceType,a);var n={};oe.indexOf(a["repeating_buff2_"+e+"_bonus"])>=0?(n["repeating_buff2_"+e+"_hide"]=1,C.setWrapper(n,x.default.silentParams)):1===parseInt(a["repeating_buff2_"+e+"_hide"],10)&&(n["repeating_buff2_"+e+"_hide"]=0,C.setWrapper(n,x.default.silentParams)),parseInt(a.repeating_buff2_enable_toggle,10)&&parseInt(a["repeating_buff2_"+e+"_val"],10)&&p(null,null,t)})}))}),on("change:repeating_buff2:add_note_to_roll",w.default.callback(function(e){"player"===e.sourceType&&(w.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),s(null,e))})),on("change:repeating_buff2:enable_toggle",w.default.callback(function(e){"player"!==e.sourceType&&"api"!==e.sourceType||getAttrs(["repeating_buff2_b1_bonus","repeating_buff2_b2_bonus","repeating_buff2_b3_bonus","repeating_buff2_b4_bonus","repeating_buff2_b5_bonus","repeating_buff2_b6_bonus","repeating_buff2_b1-show","repeating_buff2_b2-show","repeating_buff2_b3-show","repeating_buff2_b4-show","repeating_buff2_b5-show","repeating_buff2_b6-show","repeating_buff2_enable_toggle","repeating_buff2_tabcat2"],function(t){var a={};w.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType,t),le.forEach(function(e){t["repeating_buff2_"+e+"_bonus"]&&parseInt(t["repeating_buff2_"+e+"-show"],10)&&d(t["repeating_buff2_"+e+"_bonus"])}),s(null,e),a.repeating_buff2_tabcat2=t.repeating_buff2_enable_toggle||"0",C.setWrapper(a,x.default.silentParams)})})),on("change:repeating_buff2:bufftype",w.default.callback(function(e){var t={};"player"===e.sourceType&&(w.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),getAttrs(["buffs_tab","repeating_buff2_bufftype","repeating_buff2_tabcat"],function(e){t.buffs_tab=e.repeating_buff2_bufftype||"99",t.repeating_buff2_tabcat=e.repeating_buff2_bufftype||"-1",C.setWrapper(t,x.default.silentParams)}))})),on("remove:repeating_buff2",w.default.callback(function(e){w.default.debug("caught remove "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||p(null,null,e)})),v.default.each(de.buffTotalNonAbilityEvents,function(e,t){var a="change:buff_"+t+"-total";v.default.each(e,function(e){on(a,w.default.callback(function(a){w.default.debug("caught "+a.sourceAttribute+" event: "+a.sourceType),"sheetworker"!==a.sourceType&&"api"!==a.sourceType||e(t,a)}))})}),v.default.each(de.buffTotalAbilityEvents,function(e,t){var a="change:buff_"+t+"-total change:buff_"+t+"-total_penalty";v.default.each(e,function(e){on(a,w.default.callback(function(a){w.default.debug("caught "+a.sourceAttribute+" event: "+a.sourceType),"sheetworker"!==a.sourceType&&"api"!==a.sourceType||e(t,a)}))})}),v.default.each(de.buffTotalEventsNoParam,function(e,t){var a="change:buff_"+t+"-total";v.default.each(e,function(e){on(a,w.default.callback(function(t){w.default.debug("caught "+t.sourceAttribute+" event: "+t.sourceType),"sheetworker"!==t.sourceType&&"api"!==t.sourceType&&"api"!==t.sourceType||e(null,!1,null,t)}))})}),on("change:merge_buffs_now",w.default.callback(function(e){w.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"===e.sourceType&&getAttrs(["merge_buffs_now"],function(e){parseInt(e.merge_buffs_now),i(p)})})),e.forEach(function(e){on("change:buff_"+e+"-total",w.default.callback(function(t){"sheetworker"!==t.sourceType&&"api"!==t.sourceType||(w.default.debug("caught "+t.sourceAttribute+" event: "+t.sourceType),C.evaluateAndAddAsync(null,null,e,x.default.customEquationMacros[e],"buff_"+e+"-total"))}))})}Object.defineProperty(t,"__esModule",{value:!0}),t.recalculate=t.bonusTypes=t.totColumns=t.buffToTot=t.buffColumns=void 0,t.clearBuffTotals=o,t.addCommonBuff=g,t.migrate=b;var y=a(2),v=r(y),k=(a(0),a(1)),w=r(k),A=a(3),C=n(A),I=a(4),x=r(I),P=a(5),S=(n(P),a(10)),T=n(S),E=a(23),M=n(E),D=a(8),R=n(D),F=a(7),N=n(F),L=a(12),z=n(L),O=a(17),W=n(O),B=a(20),q=(n(B),a(21)),H=n(q),U=a(16),j=n(U),G=a(14),X=n(G),V=a(15),K=n(V),$=a(36),Z=n($),Y=t.buffColumns=["ac","armor","attack","casterlevel","cha","cha_skills","check","check_ability","check_skills","cmb","cmd","con","con_skills","dex","dex_skills","dmg","dmg_melee","dmg_ranged","flatfooted","fort","hptemp","initiative","int","int_skills","melee","natural","ranged","ref","saves","shield","size","speed","str","str_skills","touch","will","wis","wis_skills","melee2","ranged2","cmb2","dmg_melee2","dmg_ranged2","kineticblast","dmg_kineticblast","customa1","customa2","customa3","customa4","customa5","customa6","customa7","customa8","customa9","customa10","customa11","customa12"],Q=t.buffToTot={ac:"AC",armor:"armor",attack:"attack",casterlevel:"CasterLevel",cha:"CHA",cha_skills:"CHA_skills",check:"Check",check_ability:"check_ability",check_skills:"check_skills",cmb:"CMB",cmd:"CMD",con:"CON",con_skills:"CON_skills",dex:"DEX",dex_skills:"DEX_skills",dmg:"DMG",dmg_melee:"dmg_melee",dmg_ranged:"dmg_ranged",flatfooted:"flat-footed",fort:"Fort",hptemp:"HP-temp",initiative:"Initiative",int:"INT",int_skills:"INT_skills",melee:"Melee",natural:"natural",ranged:"Ranged",ref:"Ref",saves:"saves",shield:"shield",size:"size",speed:"speed",str:"STR",str_skills:"STR_skills",touch:"Touch",will:"Will",wis:"WIS",wis_skills:"WIS_skills",melee2:"melee2",ranged2:"ranged2",cmb2:"cmb2",dmg_melee2:"dmg_melee2",dmg_ranged2:"dmg_ranged2",kineticblast:"kineticblast",dmg_kineticblast:"dmg_kineticblast",customa1:"customa1",customa2:"customa2",customa3:"customa3",customa4:"customa4",customa5:"customa5",customa6:"customa6",customa7:"customa7",customa8:"customa8",customa9:"customa9",customa10:"customa10",customa11:"customa11",customa12:"customa12"},J=t.totColumns=v.default.values(Q).concat(["dodge"]).sort(),ee=(t.bonusTypes=["untyped","alchemical","circumstance","competence","enhancement","inherent","insight","luck","morale","profane","racial","resistance","sacred","size","trait","deflection","dodge"],{ac:["cmd","touch","flatfooted"],attack:["melee","ranged","cmb","melee2","ranged2","cmb2"],check:["initiative","check_skills","check_ability","str_skills","dex_skills","con_skills","int_skills","wis_skills","cha_skills"],dmg:["dmg_melee","dmg_ranged","dmg_melee2","dmg_ranged2"],dmg_melee:["dmg_melee2"],dmg_ranged:["dmg_ranged2"],saves:["fort","ref","will"],check_skills:["str_skills","dex_skills","con_skills","int_skills","wis_skills","cha_skills"]}),te={melee:["attack"],melee2:["melee","attack"],ranged:["attack"],ranged2:["ranged","attack"],cmb:["attack"],cmb2:["cmb","attack"],dmg_melee:["dmg"],dmg_melee2:["dmg_melee","dmg"],dmg_ranged:["dmg"],dmg_ranged2:["dmg_ranged","dmg"],cmd:["ac"],flatfooted:["ac"],touch:["ac"],fort:["saves"],ref:["saves"],will:["saves"],check_skills:["check"],check_ability:["check"],initiative:["check_ability","check"],str_skills:["check_skills","check"],dex_skills:["check_skills","check"],con_skills:["check_skills","check"],int_skills:["check_skills","check"],wis_skills:["check_skills","check"],cha_skills:["check_skills","check"]},ae=v.default.chain(J).map(function(e){var t=T.abilities.indexOf(e)>=0&&e.indexOf("skill")<1;return t?["buff_"+e+"-total","buff_"+e+"_exists","buff_"+e+"-total_penalty","buff_"+e+"_penalty_exists"]:["buff_"+e+"-total","buff_"+e+"_exists"]}).flatten().value(),ne={str:{inherent:"STR-inherent",enhancement:"STR-enhance"},dex:{inherent:"DEX-inherent",enhancement:"DEX-enhance"},con:{inherent:"CON-inherent",enhancement:"CON-enhance"},int:{inherent:"INT-inherent",enhancement:"INT-enhance"},wis:{inherent:"WIS-inherent",enhancement:"WIS-enhance"},cha:{inherent:"CHA-inherent",enhancement:"CHA-enhance"},initiative:{trait:"init-trait"},fort:{resistance:"Fort-resist",trait:"Fort-trait"},ref:{resistance:"Ref-resist",trait:"Ref-trait"},will:{resistance:"Will-resist",trait:"Will-trait"},ac:{deflection:"AC-deflect"},armor:{armor:"armor3-acbonus",enhancement:"armor3-enhance"},shield:{shield:"shield3-acbonus",enhancement:"shield3-enhance"},natural:{natural:"AC-natural"}},re=v.default.chain(ne).values().map(function(e){return v.default.values(e)}).flatten().uniq().value().sort(),ie=["buff_attack_notes","buff_save_notes","buff_init_notes","buff_skill_notes","buff_defense_notes"],le=["b1","b2","b3","b4","b5","b6"],se=["untyped","circumstance","dodge","penalty"],oe=["size","hptemp"],ce=["armor","shield","natural"],ue=["_b1-show","_b1_val","_b1_bonus","_b1_bonustype","_b2-show","_b2_val","_b2_bonus","_b2_bonustype","_b3-show","_b3_val","_b3_bonus","_b3_bonustype","_b4-show","_b4_val","_b4_bonus","_b4_bonustype","_b5-show","_b5_val","_b5_bonus","_b5_bonustype","_b6-show","_b6_val","_b6_bonus","_b6_bonustype","_enable_toggle","_add_note_to_roll"],de={buffTotalNonAbilityEvents:{Fort:[M.updateSave],Will:[M.updateSave],Ref:[M.updateSave],STR_skills:[K.recalculateAbilityBasedSkills],DEX_skills:[K.recalculateAbilityBasedSkills],CON_skills:[K.recalculateAbilityBasedSkills],INT_skills:[K.recalculateAbilityBasedSkills],WIS_skills:[K.recalculateAbilityBasedSkills],CHA_skills:[K.recalculateAbilityBasedSkills],Melee:[R.updateAttackGrid],Ranged:[R.updateAttackGrid],CMB:[R.updateAttackGrid],melee2:[R.updateAttackGrid],ranged2:[R.updateAttackGrid],cmb2:[R.updateAttackGrid]},buffTotalAbilityEvents:{STR:[T.updateAbilityScore],DEX:[T.updateAbilityScore],CON:[T.updateAbilityScore],INT:[T.updateAbilityScore],WIS:[T.updateAbilityScore],CHA:[T.updateAbilityScore]},buffTotalEventsNoParam:{DMG:[N.updateRepeatingWeaponDamages],dmg_ranged:[N.updateRepeatingWeaponDamages],dmg_melee:[N.updateRepeatingWeaponDamages],dmg_ranged2:[N.updateRepeatingWeaponDamages],dmg_melee2:[N.updateRepeatingWeaponDamages],saves:[M.updateSaves],attack:[R.updateAttacks],AC:[z.updateDefenses],Touch:[z.updateDefenses],armor:[z.updateDefenses],shield:[z.updateDefenses],dodge:[z.updateDefenses],natural:[z.updateDefenses],"flat-footed":[z.updateDefenses],CMD:[z.updateDefenses],"HP-temp":[W.updateTempMaxHP],Check:[H.updateInitiative],check_ability:[H.updateInitiative],initiative:[H.updateInitiative],speed:[j.updateModifiedSpeed],size:[X.updateSizeAsync]}};t.recalculate=w.default.callback(function(e,t,a){var n=v.default.once(function(){"function"==typeof e&&e()});b(function(){getAttrs(["is_newsheet","use_buff_bonuses"],function(e){return parseInt(e.is_newsheet,10)?void n():void(parseInt(e.use_buff_bonuses,10)?m(function(){p(function(){f(),n()},t)},t):Z.recalculate(n,t))})})});h()},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t;
+}function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t,a){getAttrs(["use_spells","spellclass-"+e+"-exists"],function(n){try{parseInt(n.use_spells,10)&&parseInt(n["spellclass-"+e+"-exists"],10)?"function"==typeof t&&t():"function"==typeof a&&a()}catch(e){C.default.error("PFSpellCasterClasses.ifSpellClassExists",e),"function"==typeof a&&a()}})}function l(e,t,a){var n=w.default.once(function(){"function"==typeof a&&a()});getAttrs(["spellclass-0-exists","spellclass-1-exists","spellclass-2-exists"],function(e){var t=parseInt(e.spellclasses_multiclassed,10)||0,a={};(parseInt(e["spellclass-0-exists"],10)||0)+(parseInt(e["spellclass-1-exists"],10)||0)+(parseInt(e["spellclass-2-exists"],10)||0)>1?t||(a.spellclasses_multiclassed=1):t&&(a.spellclasses_multiclassed=0),w.default.size(a)>0?S.setWrapper(a,x.default.silentParams,n):n()})}function s(e,t){getAttrs(["spellclass-0-exists","spellclass-1-exists","spellclass-2-exists","spellclass-0-name","spellclass-1-name","spellclass-2-name","allspells_macro","NPC-allspells_macro"],function(t){var a="",n="",r="";parseInt(t["spellclass-0-exists"],10)&&(r="{{row10=["+S.escapeForChatLinkButton(t["spellclass-0-name"])+" ^{spellbook}](~@{character_id}|",a+=r+"spellbook-0) }} ",n+=r+"NPC-spellbook-0) }} "),parseInt(t["spellclass-1-exists"],10)&&(r="{{row11=["+S.escapeForChatLinkButton(t["spellclass-1-name"])+" ^{spellbook}](~@{character_id}|",a+=r+"spellbook-1) }} ",n+=r+"NPC-spellbook-1) }} "),parseInt(t["spellclass-2-exists"],10)&&(r="{{row12=["+S.escapeForChatLinkButton(t["spellclass-2-name"])+" ^{spellbook}](~@{character_id}|",a+=r+"spellbook-2) }} ",n+=r+"NPC-spellbook-2) }} "),a!==t.allspells_macro?S.setWrapper({allspells_macro:a,"NPC-allspells_macro":n},x.default.silentParams,e):"function"==typeof e&&e()})}function o(e,t,a,n,r){var i=function(){"function"==typeof n&&n()},l="spellclass-"+e,s=l+"-level-total",o=l+"-close",c=l+"-medium",u=l+"-long";getAttrs([s,o,c,u],function(e){var t=parseInt(e[s],10)||0,n=parseInt(e[o],10)||0,l=parseInt(e[c],10)||0,d=parseInt(e[u],10)||0,p={},f={},m={};try{p=E.calculateSpellRanges(t),(a||p.close!==n||p.medium!==l||p.long!==d)&&(f[o]=p.close,f[c]=p.medium,f[u]=p.long)}catch(e){C.default.error("PFSpellCasterClasses.updateCasterRanges",e)}finally{w.default.size(f)>0?(r&&(m=x.default.silentParams),S.setWrapper(f,m,i)):i()}})}function c(e,t,a,n){S.updateRowTotal(["Concentration-"+e,"spellclass-"+e+"-level-total","Concentration-"+e+"-mod","Concentration-"+e+"-misc"],0,null,!1,a,n)}function u(e,t,a,n){var r=w.default.once(function(){"function"==typeof a&&a()});getAttrs(["use_spells","spellclass-"+e+"-exists","Concentration-"+e+"-mod","spellclass-"+e+"-level-0-savedc"],function(t){var a,i=parseInt(t["Concentration-"+e+"-mod"],10)||0,l=10+i,s=parseInt(t["spellclass-"+e+"-level-0-savedc"],10),o={},c={};try{if(s!==l||isNaN(s))for(o["spellclass-"+e+"-level-0-savedc"]=l,a=1;a<10;a++)o["spellclass-"+e+"-level-"+a+"-savedc"]=l+a}catch(e){C.default.error("PFSpellCasterClasses.updateSaveDCs",e)}finally{w.default.size(o)>0?(n&&(c=x.default.silentParams),S.setWrapper(o,c,r)):r()}})}function d(e,t,a,n){var r=w.default.once(function(){"function"==typeof a&&a()}),i="Concentration-"+e+"-ability";getAttrs([i,"INT","WIS","CHA","STR","DEX","CON","spellclass-"+e+"-level-0-bonus","spellclass-"+e+"-level-1-bonus","spellclass-"+e+"-level-2-bonus","spellclass-"+e+"-level-3-bonus","spellclass-"+e+"-level-4-bonus","spellclass-"+e+"-level-5-bonus","spellclass-"+e+"-level-6-bonus","spellclass-"+e+"-level-7-bonus","spellclass-"+e+"-level-8-bonus","spellclass-"+e+"-level-9-bonus"],function(t){var a,n,l,s=E.findAbilityInString(t[i]).replace("-mod",""),o=parseInt(t[s],10),c={},u={silent:!0},d="spellclass-"+e+"-level-";try{if(!isNaN(o))if(o>=12)for(l=1;l<10;l++)a=Math.floor(Math.max(Math.floor((o-10)/2)+4-l,0)/4),n=d+l+"-bonus",parseInt(t[n],10)!==a&&(c[n]=a);else for(l=1;l<10;l++)n=d+l+"-bonus",0!==parseInt(t[n],10)&&(c[n]=0)}catch(e){C.default.error("PFSpellCasterClasses.updateBonusSpells",e)}finally{w.default.size(c)>0?S.setWrapper(c,u,r):r()}})}function p(e,t,a,n){var r=w.default.once(function(){"function"==typeof a&&a()});getAttrs(["spellclass-"+e+"-level-"+t+"-spells-per-day_max","spellclass-"+e+"-level-"+t+"-class","spellclass-"+e+"-level-"+t+"-bonus","spellclass-"+e+"-level-"+t+"-misc"],function(a){var n=0,i=0,l=0,s=0,o={};try{i=parseInt(a["spellclass-"+e+"-level-"+t+"-class"],10),s=parseInt(a["spellclass-"+e+"-level-"+t+"-spells-per-day_max"],10)||0,isNaN(i)?n=0:(l=(parseInt(a["spellclass-"+e+"-level-"+t+"-bonus"],10)||0)+(parseInt(a["spellclass-"+e+"-level-"+t+"-misc"],10)||0),n=i+l),n!==s?(o["spellclass-"+e+"-level-"+t+"-spells-per-day_max"]=n,S.setWrapper(o,x.default.silentParams,r)):r()}catch(e){C.default.error("PFSpellCasterClasses.updateMaxSpellsPerDay err",e),r()}})}function f(e,t){var a=w.default.once(function(){"function"==typeof e&&e()});getAttrs(["condition_spell_notes","condition-Deafened","condition-Grappled","condition-Pinned"],function(e){var t={},n="";parseInt(e["condition-Deafened"],10)&&(n+="**"+S.getTranslated("deafened")+"**: ",n+=S.getTranslated("condition-deafened-spellonly")+"\r\n"),parseInt(e["condition-Grappled"],10)&&(n+="**"+S.getTranslated("grappled")+"**: ",n+=S.getTranslated("condition-grappled-spell-note")+"\r\n"),parseInt(e["condition-Pinned"],10)&&(n+="**"+S.getTranslated("pinned")+"**: ",n+=S.getTranslated("condition-pinned-spell-note")+" ",n+=S.getTranslated("condition-grappled-spell-note")+"\r\n"),n!==e.condition_spell_notes&&(t.condition_spell_notes=n,S.setWrapper(t,x.default.silentParams)),a()})}function m(e,t,a){var n=w.default.once(function(){"function"==typeof t&&t()}),r=w.default.after(5,n),i=w.default.after(10,r);w.default.times(10,function(t){p(e,t,i,a)}),c(e,null,r,a),u(e,null,r,a),o(e,null,!1,r,a),d(e,null,r,a)}function _(e,t,a,n,r,i){var l=w.default.once(function(){"function"==typeof n&&n()});getAttrs(["use_spells","spellclass-"+e+"-level","spellclass-"+e+"-level-total","spellclass-"+e+"-level-misc-mod","buff_CasterLevel-total","CasterLevel-Penalty","spellclass-"+e+"-exists"],function(t){var n=a||parseInt(t["spellclass-"+e+"-level"],10)||0,s=parseInt(t["spellclass-"+e+"-level-total"],10)||0,o=parseInt(t["spellclass-"+e+"-exists"],10)||0,c=parseInt(t.use_spells,10)||0,u=0,d={},p=0,f={};try{c?(u=n+(parseInt(t["spellclass-"+e+"-level-misc-mod"],10)||0)+(parseInt(t["buff_CasterLevel-total"],10)||0)+(parseInt(t["CasterLevel-Penalty"],10)||0),u<=0&&(u=n>0?1:0),u!==s&&(d["spellclass-"+e+"-level-total"]=u,n>0&&(p=1)),n>0?(0===o&&(d["spellclass-"+e+"-exists"]=1,p=1),i&&(p=1)):1===o&&(d["spellclass-"+e+"-exists"]=0)):1===o&&(d["spellclass-"+e+"-exists"]=0)}catch(e){C.default.error("PFSpellCasterClasses.updateCasterLevel",e)}finally{w.default.size(d)>0?(r&&(f=x.default.silentParams),S.setWrapper(d,f,function(){p?m(e,l,r):l()})):l()}})}function g(e,t,a,n){_(0,t,0,a,n),_(1,t,0,a,n),_(2,t,0,a,n)}function b(e,t,a,n){var r=w.default.once(function(){"function"==typeof a&&a()}),i="spellclass-"+e,l="spellclass-"+e+"-level";getAttrs([i,l],function(a){var n,s,o,c=parseInt(a[i],10),u=parseInt(a[l],10);try{if(isNaN(c)||!a[i]||parseInt(a[i],10)===-1)return void r();n="spellclass-"+e+"-name",s="class-"+c+"-name",o="class-"+c+"-level",6===c&&(s="race",o="npc-hd-num"),getAttrs([s,o,n],function(a){var i={},c=0,d=parseInt(a[o],10)||0;try{(u!==d||isNaN(u))&&(i[l]=d,c=1),a[s]&&a[s]!==a[n]&&(i[n]=a[s])}catch(e){C.default.error("PFSpellCasterClasses.setCasterClassFromDropdown",e)}finally{w.default.size(i)>0?(S.setWrapper(i,{silent:!0},r),c&&_(e,t,d)):r()}})}catch(e){C.default.error("PFSpellCasterClasses.setCasterClassFromDropdown outer",e),r()}})}function h(e,t,a,n,r){var i=(w.default.once(function(){"function"==typeof n&&n()}),"spellclass-0"),l="spellclass-1",s="spellclass-2";e="npc-hd-num"===e?6:parseInt(e,10)||0,getAttrs([i,l,s],function(n){var r,o,c,u,d;if(parseInt(n[i],10)===e)r=0;else if(parseInt(n[l],10)===e)r=1;else{if(parseInt(n[s],10)!==e)return;r=2}u="spellclass-"+r,o=u+"-level",c="class-"+e+"-level",d="class-"+e+"-name",getAttrs([o,c,d],function(n){var r={},i=parseInt(n[c],10)||0,l=parseInt(n[o],10);(i!==l||isNaN(l)||a)&&(r[o]=i,r[u+"-name"]=n[d],S.setWrapper(r,{silent:!0}),_(e,t,i))})})}function y(e,t){"function"==typeof e&&e()}function v(){w.default.each(x.default.spellClassIndexes,function(e){var t=parseInt(e,10)||0;on("change:Concentration-"+t+"-ability",C.default.callback(function(e){C.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),D.setDropdownValue("Concentration-"+t+"-ability","Concentration-"+t+"-mod")})),w.default.each(L.spellcastingClassEventsPlayer,function(e,a){var n=a.replace(/REPLACE/g,t);w.default.each(e,function(e){on(n,C.default.callback(function(a){"player"!==a.sourceType&&"api"!==a.sourceType||(C.default.debug("caught "+a.sourceAttribute+" event: "+a.sourceType),i(t,function(){e(t,a)}))}))})}),w.default.each(L.spellcastingClassEventsAuto,function(e,a){var n=a.replace(/REPLACE/g,t);w.default.each(e,function(e){on(n,C.default.callback(function(a){"sheetworker"!==a.sourceType&&"api"!==a.sourceType||(C.default.debug("caught "+a.sourceAttribute+" event: "+a.sourceType),i(t,function(){e(t,a)}))}))})}),w.default.each(L.spellcastingClassEventsIgnoreLevel,function(e,a){var n=a.replace(/REPLACE/g,t);w.default.each(e,function(e){on(n,C.default.callback(function(a){C.default.debug("caught "+a.sourceAttribute+" event: "+a.sourceType),e(t,a)}))})}),w.default.each(N.spellLevels,function(e){var a=parseInt(e,10),n=L.spellcastingClassEventsPerSpellLevel.replace(/CLASSIDX/g,t).replace(/SPELLLEVEL/g,a);on(n,C.default.callback(function(e){C.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),i(t,function(){p(t,a)})}))}),on("change:spellclass-0-exists change:spellclass-1-exists change:spellclass-2-exists",C.default.callback(function(e){"sheetworker"!==e.sourceType&&"api"!==e.sourceType||(C.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),s(null,e))}))})}Object.defineProperty(t,"__esModule",{value:!0}),t.recalculate=void 0,t.ifSpellClassExists=i,t.updateMultiClassedCasterFlag=l,t.applyConditions=f,t.setCasterClassFromDropdown=b,t.updateCasterFromClassLevel=h,t.migrate=y;var k=a(2),w=r(k),A=a(1),C=r(A),I=(a(0),a(4)),x=r(I),P=a(3),S=n(P),T=a(5),E=n(T),M=a(9),D=n(M),R=a(6),F=(n(R),a(18)),N=n(F),L=(t.recalculate=C.default.callback(function(e,t,a){var n=w.default.once(function(){C.default.info("leaving PFSpellCasterClasses.recalculate"),"function"==typeof e&&e()}),r=function(e,t){var a=(w.default.once(function(){"function"==typeof e&&e()}),w.default.after(3,function(){s(e)}));w.default.each(x.default.spellClassIndexes,function(e){try{b(e,null,function(){_(e,null,0,a,t,!0)},t)}catch(e){C.default.error("PFSpellCasterClasses.recalculate_recalcTopSection",e),a()}})},i=w.default.once(function(){l(null,null,function(){N.recalculate(n,t,a)})}),o=w.default.once(function(){r(i,t)}),c=w.default.once(function(){f(o,t)});y(function(){c()},a)}),{spellcastingClassEventsAuto:{"change:concentration-REPLACE-mod":[d,u,c,N.updateSpellsCasterAbilityRelated],"change:spellclass-REPLACE-level-total":[c,o,N.updateSpellsCasterLevelRelated],"change:concentration-REPLACE-misc-mod":[c,N.updateSpellsCasterLevelRelated],"change:spellclass-REPLACE-SP-mod":[N.updateSpellsCasterLevelRelated],"change:spellclass-REPLACE-level-misc-mod":[_]},spellcastingClassEventsPlayer:{"change:concentration-REPLACE-def":[N.updateSpellsCasterLevelRelated]},spellcastingClassEventsIgnoreLevel:{"change:spellclass-REPLACE":[b],"change:spellclass-REPLACE-level":[_,l],"change:buff_CasterLevel-total change:condition-Drained change:CasterLevel-Penalty":[g]},spellcastingClassEventsPerSpellLevel:"change:spellclass-CLASSIDX-level-SPELLLEVEL-class change:spellclass-CLASSIDX-level-SPELLLEVEL-bonus change:spellclass-CLASSIDX-level-SPELLLEVEL-misc"});v()},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function i(){var e=["multiclassed","class-0-level","class-1-level","class-2-level","class-3-level","class-4-level","class-5-level","npc-hd-num"];getAttrs(e,function(e){var t,a=parseInt(e.multiclassed,10)||0;t=Math.min(1,parseInt(e["class-0-level"],10)||0)+Math.min(1,parseInt(e["class-1-level"],10)||0)+Math.min(1,parseInt(e["class-2-level"],10)||0)+Math.min(1,parseInt(e["class-3-level"],10)||0)+Math.min(1,parseInt(e["class-4-level"],10)||0)+Math.min(1,parseInt(e["class-5-level"],10)||0)+Math.min(1,parseInt(e["npc-hd-num"],10)||0),t>1?a||_.setWrapper({multiclassed:1}):a&&_.setWrapper({multiclassed:0})})}function l(e,t,a,n){var r=function(){"function"==typeof t&&t()},i=function(e,t,a){var n,i,l,s,o,c,u,d,p,f,m,g,h,y=[];if("fchp"===e?e="hp":"hd-num"===e&&(e="level"),i="class-0-"+e,l="class-1-"+e,s="class-2-"+e,o="class-3-"+e,c="class-4-"+e,u="class-5-"+e,n="bab"===e||"level"===e?e:"total-"+e,y=[n,i,l,s,o,c,u],"skill"!==e){switch(e){case"bab":case"Fort":case"Will":case"Ref":y=y.concat(["npc-"+e]);break;case"level":y=y.concat(["npc-hd-num"])}_.updateRowTotal(y,0,[],0,r,a)}else d="class-0-level",p="class-1-level",f="class-2-level",m="class-3-level",g="class-4-level",h="class-5-level",y=y.concat([d,p,f,m,g,h,"npc-skill","npc-hd-num"]),getAttrs(y,function(e){var t={},y=0,v={},k=0;k=Math.floor((parseFloat(e[i],10)||0)*(parseInt(e[d],10)||0)+(parseFloat(e[l],10)||0)*(parseInt(e[p],10)||0)+(parseFloat(e[s],10)||0)*(parseInt(e[f],10)||0)+(parseFloat(e[o],10)||0)*(parseInt(e[m],10)||0)+(parseFloat(e[c],10)||0)*(parseInt(e[g],10)||0)+(parseFloat(e[u],10)||0)*(parseInt(e[h],10)||0)+(parseFloat(e["npc-skill"],10)||0)*(parseInt(e["npc-hd-num"],10)||0)),y=parseInt(e[n],10),isNaN(y)||k!==y?(t[n]=k,a&&(v=b.default.silentParams),_.setWrapper(t,v,r)):r()})};return e&&"hd"!==e&&"hp"!==e?(/^npc/i.test(e)&&(e=e.slice(4)),void i(e,r,a)):(f.default.warn("at updateClassInformation called with bad column:"+e),void r())}function s(e,t,a){var n=d.default.once(function(){"function"==typeof e&&e()}),r=["auto_calc_hp","autohp_percent","maxhp_lvl1","is_npc","set_pfs","total-hp","NPC-HP","npc-hd-num","npc-hd","class-0-hp","class-0-level","class-0-hd","class-0-fchp","class-1-hp","class-1-level","class-1-hd","class-1-fchp","class-2-hp","class-2-level","class-2-hd","class-2-fchp","class-3-hp","class-3-level","class-3-hd","class-3-fchp","class-4-hp","class-4-level","class-4-hd","class-4-fchp","class-5-hp","class-5-level","class-5-hd","class-5-fchp"];getAttrs(r,function(e){var t,r=0,i=0,l=1,s=0,o={},c=0,u={},p=0,m=0,g=0,h=0,v=0,k=-1;try{r=parseInt(e.auto_calc_hp,10)||0,a&&a.sourceAttribute&&(t=a.sourceAttribute.match(/(\d)/),t&&t[1]?k=parseInt(t[1],10)||0:/NPC/i.test(a.sourceAttribute)&&(k=6)),r&&(s=parseInt(e.set_pfs,10)||0,c=parseInt(e.is_npc,10)||0,l=y.getAutoHPPercentMultiplier(e.autohp_percent),i=parseInt(e.maxhp_lvl1,10)||0,i&&6===k&&(k=-1)),g=parseInt(e["npc-hd-num"],10)||0,h=parseInt(e["npc-hd"],10),p=parseInt(e["NPC-HP"],10)||0,isNaN(h)||!r?v+=p:g>0&&h>0?(6===k||k===-1?(m=y.getAvgHP(g,h,l,i,!1),v+=m,m!==p&&(o["NPC-HP"]=m)):v+=p,i&&(i=0)):0===h&&0!==p&&(o["NPC-HP"]=0),d.default.each(I,function(t){var a=0,n=parseInt(t,10);m=0,g=parseInt(e["class-"+t+"-level"],10)||0,h=parseInt(e["class-"+t+"-hd"],10),p=parseInt(e["class-"+t+"-hp"],10)||0,a=parseInt(e["class-"+t+"-fchp"],10)||0,isNaN(h)||!r?v+=p+a:g>0&&h>0?(k===-1||k===n?(m=y.getAvgHP(g,h,l,i,s),v+=m+a,m!==p&&(o["class-"+t+"-hp"]=m)):v+=p+a,i&&(i=0)):0===h&&0!==p&&(o["class-"+t+"-hp"]=0)}),v!==parseInt(e["total-hp"],10)&&(u["total-hp"]=v)}catch(e){f.default.error("PFClassRaceGrid.setHitPoints",e)}finally{d.default.size(u)>0&&_.setWrapper(u),d.default.size(o)>0?_.setWrapper(o,b.default.silentParams,n):n()}})}function o(e,t){"function"==typeof e&&e()}function c(){var e="";d.default.each(A,function(e){var t=d.default.map(I,function(t){return"change:class-"+t+"-"+e}).join(" ");on(t,f.default.callback(function(t){f.default.debug("caught "+t.sourceAttribute+" event: "+t.sourceType),"player"!==t.sourceType&&"api"!==t.sourceType||l(e,null,null,t)})),"level"===e&&on(t,f.default.callback(function(e){f.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||(l("skill",null,null,e),i())}))}),d.default.each(C,function(e){on("change:npc-"+e,f.default.callback(function(t){f.default.debug("caught "+t.sourceAttribute+" event: "+t.sourceType),("player"===t.sourceType||"api"===t.sourceType||"sheetworker"===t.sourceType||"api"===t.sourceType&&"hp"===t.sourceAttribute.slice(-2))&&("hd-num"===e?(l("level",null,null,t),l("skill",null,null,t),i()):l(e,null,null,t))}))}),d.default.each(I,function(t){e=x.perClassRowhp.replace(/REPLACE/g,t),on(e,f.default.callback(function(e){f.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||(s(null,null,e),/level/i.test(e.sourceAttribute)&&w.updateCasterFromClassLevel(parseInt(t,10),e))}))}),on(x.racialhp,f.default.callback(function(e){f.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||(s(null,null,e),"npc-hd-num"===e.sourceAttribute&&w.updateCasterFromClassLevel(6,e))})),on(x.basehp,f.default.callback(function(e){f.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||s()})),on("change:class-0-level change:class-1-level change:class-2-level change:class-3-level change:class-4-level change:class-5-level change:bab change:level",f.default.callback(function(e){("level"!==e.sourceAttribute&&"bab"!==e.sourceAttribute||"sheetworker"!==e.sourceType)&&"player"!==e.sourceType&&"api"!==e.sourceType||(f.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),d.default.each(b.default.levelPlusBABManualDropdowns,function(e){_.setDropdownValue(e,e+"-mod")}))}))}Object.defineProperty(t,"__esModule",{value:!0}),t.recalculate=t.classRows=t.raceColumns=t.classColumns=void 0,t.setMulticlassed=i,t.setHitPoints=s,t.migrate=o;var u=a(2),d=r(u),p=(a(0),a(1)),f=r(p),m=a(3),_=n(m),g=a(4),b=r(g),h=a(5),y=n(h),v=a(18),k=(n(v),a(26)),w=n(k),A=t.classColumns=["skill","fcskill","fcalt","bab","Fort","Ref","Will","level"],C=t.raceColumns=["skill","bab","Fort","Ref","Will","hd-num"],I=t.classRows=["0","1","2","3","4","5"],x={basehp:"change:auto_calc_hp change:autohp_percent change:maxhp_lvl1",racialhp:"change:npc-hd-num change:npc-hd change:npc-hp",perClassRowhp:"change:class-REPLACE-level change:class-REPLACE-hd change:class-REPLACE-hp change:class-REPLACE-fchp"};t.recalculate=f.default.callback(function(e,t,a){var n=d.default.once(function(){f.default.info("leaving PFClassRaceGrid.recalculate"),"function"==typeof e&&e()}),r=A.length,o=d.default.after(r,function(){s(n,t)});d.default.each(A,function(e){l(e,o,t)}),i()});c()},function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={unarmedAttacksRegExp:/unarmed|strike|punch|palm|flurry|blow|touch/i,combatManeuversRegExp:/bull\s*rush|trip|disarm|dirty\s*trick|drag|grapple|overrun|reposition|steal|sunder|trip/i,primaryNaturalAttacksRegExp:/bite|claw|gore|slam|sting|talon/i,importantFeatRegExp:/Weapon Fine|^Run$|Enduran|Defensive Combat Train|Agile Maneuv|Arcane Arm|Combat Cast|Critical Focus|Skill Focus|Critical|Intimidating Prow|great fortitude|iron will|lightning reflexes/i,spAttackAttacks:/blooddrain|touch|energydrain|bleed|burn|constrict|trample|engulf|heat|powerfulcharge|swallowwhole|constrict/i,spAttackAttacksPreProcess:/rake|rend|web/i,abilitySrch:/str|dex|con|int|wis|cha/i,cmbMonsterSrch:/tongue|pull|drag|grab|push/i,cmbPlusStrsrch:/swallowwhole|engulf|constrict|swallow/i,casterDefaultAbility:{sorcerer:"cha",wizard:"int",cleric:"wis",bard:"cha",druid:"wis",paladin:"cha",ranger:"wis",oracle:"cha",witch:"int",alchemist:"int",summoner:"cha",inquisitor:"wis",magus:"int"},creatureTypeClassSkills:{aberration:["Acrobatics","Climb","Escape-Artist","Fly","Intimidate","Knowledge","Perception","Spellcraft","Stealth","Survival","Swim"],animal:["Acrobatics","Climb","Fly","Perception","Stealth","Swim"],dragon:["Appraise","Bluff","Climb","Craft","Diplomacy","Fly","Heal","Intimidate","Linguistics","Knowledge","Perception","Sense-Motive","Spellcraft","Stealth","Survival","Swim","Use-Magic-Device"],fey:["Appraise","Bluff","Climb","Craft","Diplomacy","Disguise","Escape-Artist","Fly","Knowledge-Geography","Knowledge-Local","Knowledge-Nature","Perception","Perform","Sense-Motive","Sleight-of-Hand","Stealth","Swim","Use-Magic-Device"],monstrous:["Climb","Craft","Fly","Intimidate","Perception","Ride","Stealth","Survival","Swim"],humanoid:["Climb","Craft","Handle-Animal","Heal","Profession","Ride","Survival"],magicalbeast:["Acrobatics","Climb","Fly","Perception","Stealth","Swim"],outsider:["Bluff","Craft","Knowledge-Planes","Perception","Sense-Motive","Stealth"],plant:["Perception","Stealth"],undead:["Climb","Disguise","Fly","Intimidate","Knowledge-Arcana","Knowledge-Religion","Perception","Sense-Motive","Spellcraft","Stealth"]},creatureSubtypeClassSkills:{air:["Fly"],giant:["Intimidate","Perception"],goblinoid:["Stealth"],inevitable:["Acrobatics","Diplomacy","Intimidate","Survival"],water:["Swim"],robot:["Climb","Disable-Device","Fly","Knowledge","Linguistics","Perception","Sense-Motive"]},specialAttackDCAbilityBase:{breathweapon:"CON",burn:"CON",curse:"CHA",disease:"CON",distraction:"CON",emotionaura:"CHA",energydrain:"CHA",entrap:"CON",fear:"CHA",fearaura:"CHA",fearcone:"CHA",fearray:"CHA",frightfulpresence:"CHA",gaze:"CHA",mentalstaticaura:"CHA",paralysis:"CON",poison:"CON",stench:"CON",trample:"STR",web:"CON",whirlwind:"STR"},monsterRulesPlusAttacks:["grab","trip","engulf","swallow whole"],naturalAttackRegExp:/arm|bite|claw|foreclaw|gore|hoof|kick|leg|pincer|quill|root|slam|slap|snake\s*bite|spike|spine|splinter|sting|tail|tail\s*slap|talon|tendril|tentacle|thorn|tongue|vine|wing|buffet/i,skillBonusFeatRegExp:/Acrobatic|Uncanny Alertness|Alertness|Animal Affinity|Athletic|Breadth of Experience|Brewmaster|Deceitful|Deft Hands|Deny the Reaper|Forgotten Past|Innocent Blood|Monkey Moves|Monkey Style|Monument Builder|No Name|Persuasive|Scavenger.s Eye|Sea Legs|Self.Sufficient|Sharp Senses|Stealthy|Sure and Fleet|Voice of the Sibyl/i,lessImportantCombatFeatRegExp:/Power Attack|Double Slice|Greater Weapon of the Chosen|Spell Focus|Toughness/i,monsterRules:/spells|damage reduction/i}},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function i(e){var t=_.default.once(function(){"function"==typeof e&&e()});getAttrs(["is_npc","NPC-orig_ability_header_macro","orig_ability_header_macro","mythic-adventures-show","use_traits","use_racial_traits","use_feats","use_class_features","use_spell-like-abilities"],function(e){var a=0,n=0,r=0,i=0,l=0,s=0,o="",c=0,u="",d={};try{c=parseInt(e.is_npc,10)||0,u=c?"NPC-":"",a=parseInt(e["mythic-adventures-show"],10)||0,i=parseInt(e.use_feats,10)||0,l=parseInt(e.use_class_features,10)||0,n=parseInt(e.use_traits,10)||0,r=parseInt(e.use_racial_traits,10)||0,s=parseInt(e["use_spell-like-abilities"],10)||0,o=(l?M["class-ability"]:"")+(i?M.feat.replace(/REPLACENPC/g,u):"")+(s?M["npc-spell-like-abilities"]:"")+(n?M.trait:"")+(r?M["racial-trait"].replace(/REPLACENPC/g,u):"")+(a?M.mythic:""),o&&(o="{{row01=^{original-abilities-menus}}} {{row02="+o+"}}"),o!==e[u+"orig_ability_header_macro"]&&(d[u+"orig_ability_header_macro"]=o),c&&(o=(l?M["class-ability"]:"")+(i?M.feat.replace(/REPLACENPC/g,""):"")+(s?M["npc-spell-like-abilities"]:"")+(n?M.trait:"")+(r?M["racial-trait"].replace(/REPLACENPC/g,""):"")+(a?M.mythic:""),o&&(o="{{row01=^{original-abilities-menus}}} {{row02="+o+"}}"),o!==e.orig_ability_header_macro&&(d.orig_ability_header_macro=o))}catch(e){b.default.error("PFFeatures.resetTopCommandMacro",e)}finally{_.default.size(d)>0?y.setWrapper(d,k.default.silentParams,t):t()}})}function l(e){var t=_.default.once(function(){"function"==typeof e&&e()});getAttrs(["mythic-adventures-show","use_traits","use_racial_traits","use_class_features","use_feats","use_spell-like-abilities"],function(e){var a,n=[],r=0,l=0,s=0,o=0,c=0,u=0,d=0;try{r=parseInt(e["mythic-adventures-show"],10)||0,o=parseInt(e.use_feats,10)||0,c=parseInt(e.use_class_features,10)||0,l=parseInt(e.use_traits,10)||0,s=parseInt(e.use_racial_traits,10)||0,u=parseInt(e["use_spell-like-abilities"],10)||0,o&&(n.push("feat"),d+=2),l&&(n.push("trait"),d++),s&&(n.push("racial-trait"),d+=2),r&&(n=n.concat(["mythic-ability","mythic-feat"]),d+=2),c&&(n.push("class-ability"),d++),u&&(n.push("npc-spell-like-abilities"),d++),d>0?(a=_.default.after(d,t),_.default.each(n,function(e){"npc-spell-like-abilities"!==e&&I.resetOneCommandMacro(e,!1,a),"racial-trait"!==e&&"feat"!==e&&"npc-spell-like-abilities"!==e||I.resetOneCommandMacro(e,!0,a)})):t()}catch(e){b.default.error("PFFeatures.resetCommandMacro",e),t()}finally{i()}})}function s(e,t,a){var n=_.default.once(function(){"function"==typeof t&&t()});getAttrs(["is_newsheet"],function(t){return parseInt(t.is_newsheet,10)?void n():void getSectionIDs("repeating_"+e,function(t){var a=_.default.size(t),r=_.default.after(a,n);a>0?_.default.each(t,function(t,a){var n="repeating_"+e+"_"+t;y.evaluateAndSetNumber(n+"_max-calculation",n+"_used_max",0,r,!0)}):n()})})}function o(e){var t;return/\d/.test(e)?(t=parseInt(e.match(/\d/)[0],10)||0,"@{class-"+t+"-level}"):/race/i.test(e)?"@{level}":""}function c(e,t,a){var n=_.default.once(function(t){"function"==typeof e&&e(t)}),r=_.default.once(function(){"function"==typeof t?t():n()});return a?void getSectionIDs("repeating_"+a,function(e){var t,i=0;try{if("npc-spell-like-abilities"===a&&(i=1),!_.default.size(e))return void n([]);t=y.cartesianAppend(["repeating_"+a+"_"],e,T[a].LU),t=t.concat(["is_npc","race","class-0-name","class-1-name","class-2-name","class-3-name","class-4-name","class-5-name"]),"npc-spell-like-abilities"===a&&(t=t.concat(["spellclass-0-level-total","spellclass-1-level-total","spellclass-2-level-total","spellclass-0","spellclass-1","spellclass-2","level","npc-hd-num","class-0-level","class-1-level","class-2-level","class-3-level","class-4-level","class-5-level"])),getAttrs(t,function(t){var l,s,c="",u=0,d="macro-text";try{u=parseInt(t.is_npc,10)||0,T[a].hasNPCMacro&&u&&(d="npc-macro-text"),c=T[a].classDefault||"",l=_.default.map(e,function(e){var n,r;try{return n="repeating_"+a+"_"+e+"_",r=_.default.reduce(T[a].copyAttrs,function(e,a){return e[a]=t[n+a]||"",e},{}),r["CL-basis"]=c||o(t[n+"class-number"]),r["CL-basis"]?"@{level}"===r["CL-basis"]?r["class-name"]=t.race:t[n+"class-number"]?r["class-name"]=t[t[n+"class-number"]]:r["class-name"]="":r["class-name"]="",i&&(r["abil-sr"]=t[n+"sr"]||"",t[n+"level"]&&(s=parseInt(t[n+"level"],10),isNaN(s)||(r["spell_level-misc"]=s,r["spell_level-misc-mod"]=s,r["spell_level-basis"]="0")),t[n+"range"]&&(s=parseInt(t[n+"range"],10),r.range_pick="number",isNaN(s)||(r.range_numeric=s)),t[n+"used"]&&(s=parseInt(t[n+"used"],10),isNaN(s)||(r.used_max=s,r["max-calculation"]=s))),r["macro-text"]=t[n+d]||"",r.rule_category=T[a].ruleCategory,r}catch(t){b.default.error("PFFeatures.getAbilities errorinner on "+e,t)}})}catch(e){b.default.error("PFFeatures.getAbilities errmid",e)}finally{_.default.size(l)?n(l):(b.default.warn("PFFeatures.getAbilities none generated for "+a+" even though there are ids"),r())}})}catch(e){b.default.error("PFFeatures.copyFeatsToAbilities",e),r()}}):void r()}function u(e,t,a){var n=_.default.once(function(t){var n;a&&/merge/i.test(a.sourceAttribute)&&(n={},n[a.sourceAttribute]=0,y.setWrapper(n,k.default.silentParams)),"function"==typeof e&&e(t)}),r=_.default.once(function(){P.recalculate(function(){n(),I.resetOneCommandMacro(t,!1),I.resetOneCommandMacro(t,!0)},!0,0)});c(function(e){e&&_.default.size(e)>0?P.copyToAbilities(r,e):n()},function(){b.default.error("PFFeatures ################# error trying to migrate "+t),n()},t)}function d(e,t){var a,n,r,i=_.default.once(function(){"function"==typeof e&&e()}),l={feat:"feats",trait:"traits","racial-trait":"racial-traits","mythic-ability":"mythic-abilities","mythic-feat":"mythic-feats","class-ability":"class-features","npc-spell-like-abilities":"spell-like-abilities"};r="class-abilities"===t||"npc-spell-like-abilities"===t?"1":"0",a="npc-spell-like-abilities"===t?"Sp":"not-applicable",n=l[t]||"",getSectionIDs("repeating_"+t,function(e){var l={};try{l=_.default.reduce(e,function(e,i){var l="repeating_"+t+"_"+i+"_";try{e[l+"showinmenu"]=r,e[l+"ability_type"]=a,e[l+"rule_category"]=n}catch(e){b.default.error("PFFeatures.setNewDefaults error "+t+" id "+i,e)}finally{return e}},{}),l.migrated_featurelists_defaults=1}catch(e){b.default.error("PFFeatures.setNewDefaults error setting defaults for "+t,e)}finally{_.default.size(l)>0?y.setWrapper(l,k.default.silentParams,i):i()}})}function p(e,t){var a=function(){"function"==typeof e&&e()},n=_.default.size(S),r=_.default.after(n,a);getAttrs(["migrated_featurelists_defaults"],function(e){var t=0;t=parseInt(e.migrated_featurelists_defaults,10)||0,t?a():_.default.each(S,function(e){d(r,e)})})}function f(){on("change:merge_traits_now change:merge_race_traits_now change:merge_feats_now change:merge_class_features_now change:merge_slas_now",b.default.callback(function(e){b.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||getAttrs([e.sourceAttribute],function(t){parseInt(t[e.sourceAttribute],10)&&u(null,E[e.sourceAttribute],e)})})),_.default.each(k.default.repeatingMaxUseSections,function(e){var t="change:repeating_"+e+":max-calculation";on(t,b.default.callback(function(t){b.default.debug("caught "+t.sourceAttribute+" event: "+t.sourceType),y.evaluateAndSetNumber("repeating_"+e+"_max-calculation","repeating_"+e+"_used_max")}))}),on("change:mythic-adventures-show change:use_traits change:use_racial_traits change:use_class_features change:use_feats change:use_spell-like-abilities",b.default.callback(function(e){b.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||i(null,e)})),_.default.each(S,function(e){var t="remove:repeating_"+e+" ",a="change:repeating_"+e+":";t=_.default.reduce(D.commandMacroFields,function(e,t){return e+=a+t+" "},t),on(t,b.default.callback(function(t){var a;a=y.getAttributeName(t.sourceAttribute),("player"===t.sourceType||"api"===t.sourceType||"sheetworker"===t.sourceType&&"used_max"===a)&&(b.default.debug("caught "+t.sourceAttribute+" event: "+t.sourceType),a="repeating_"+e+"_showinmenu",getAttrs([a,"is_npc"],function(t){var n=parseInt(t.is_npc,10)||0;1===parseInt(t[a],10)&&I.resetOneCommandMacro(e,n)}))}))})}Object.defineProperty(t,"__esModule",{value:!0}),t.recalculate=t.migrateMap=t.featureLists=void 0,t.resetTopCommandMacro=i,t.resetCommandMacro=l,t.convertNameToLevel=o,t.getAbilities=c,t.copyToAbilities=u,t.setNewDefaults=d,t.migrate=p;var m=a(2),_=r(m),g=(a(0),a(1)),b=r(g),h=a(3),y=n(h),v=a(4),k=r(v),w=a(5),A=(n(w),a(13)),C=(n(A),a(22)),I=n(C),x=a(24),P=n(x),S=t.featureLists=["class-ability","feat","racial-trait","trait","mythic-ability","mythic-feat","npc-spell-like-abilities"],T=t.migrateMap={feat:{copyAttrs:["name","short-description","used","used_max","showinmenu","description","max-calculation","ability_type"],LU:["_name","_short-description","_used","_used_max","_showinmenu","_description","_macro-text","_npc-macro-text","_max-calculation","_ability_type"],classDefault:"0",hasNPCMacro:!0,ruleCategory:"feats"},"racial-trait":{copyAttrs:["name","short-description","used","used_max","showinmenu","description","max-calculation","ability_type"],LU:["_name","_short-description","_used","_used_max","_showinmenu","_description","_macro-text","_npc-macro-text","_max-calculation","_ability_type"],hasNPCMacro:!0,classDefault:"@{level}",
+ruleCategory:"racial-traits"},trait:{copyAttrs:["name","short-description","used","used_max","showinmenu","description","max-calculation","ability_type"],LU:["_name","_short-description","_used","_used_max","_showinmenu","_description","_macro-text","_max-calculation","_ability_type"],classDefault:"@{level}",ruleCategory:"traits"},"class-ability":{copyAttrs:["name","short-description","used","used_max","showinmenu","description","max-calculation"],LU:["_name","_short-description","_used","_used_max","_showinmenu","_description","_macro-text","_max-calculation","_class-number"],ruleCategory:"class-features",convertClass:!0},"npc-spell-like-abilities":{copyAttrs:["name","short-description","used","used_max","showinmenu","description","max-calculation","duration","save","range"],LU:["_name","_short-description","_used","_used_max","_showinmenu","_description","_macro-text","_npc-macro-text","_max-calculation","_level","_range","_duration","_save","_sr"],hasNPCMacro:!1,classDefault:"@{level}",ruleCategory:"spell-like-abilities"}},E={merge_traits_now:"trait",merge_race_traits_now:"racial-trait",merge_feats_now:"feat",merge_class_features_now:"class-ability",merge_slas_now:"npc-spell-like-abilities",delete_traits_now:"trait",delete_race_traits_now:"racial-trait",delete_feats_now:"feat",delete_class_features_now:"class-ability",delete_slas_now:"npc-spell-like-abilities"},M={"class-ability":" [^{original-class-features-list}](~@{character_id}|class-ability_button)",mythic:" [^{mythic-abilities}](~@{character_id}|mythic-ability_button) [^{mythic-feats}](~@{character_id}|mythic-feat_button)",feat:" [^{original-feats-list}](~@{character_id}|REPLACENPCfeat_button)","racial-trait":" [^{original-racial-traits-list}](~@{character_id}|REPLACENPCracial-trait_button)",trait:" [^{original-traits-list}](~@{character_id}|trait_button)","npc-spell-like-abilities":" [^{original-spell-like-abilities-list}](~@{character_id}|npc-spell-like-abilities_button)"},D={commandMacroFields:["name","used","used_max","showinmenu"]};t.recalculate=b.default.callback(function(e,t,a){var n,r,i,o=_.default.once(function(){b.default.info("leaving PFFeatures.recalculate"),"function"==typeof e&&e()});try{n=_.default.size(k.default.repeatingMaxUseSections),r=_.default.after(n,function(){l(o)}),i=function(){_.default.each(k.default.repeatingMaxUseSections,function(e){s(e,r,t)})},p(i,a)}catch(e){b.default.error("PFFeatures.recalculate, ",e),o()}});f()},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function i(e){var t=P.default.once(function(){"function"==typeof e&&e()}),a=P.default.after(2,t);O.resetOneCommandMacro("item",!0,a,"",te),O.resetOneCommandMacro("item",!1,a,"",te)}function l(e){var t="";if(isNaN(e)&&null!==e&&void 0!==e)return"worn-"+e;if(e>1&&Q[e])try{t="worn-"+Q[e]}catch(e){T.default.error("PFInventory.getWornItemNameField",e)}return t}function s(e){var t="",a="";t=l(e),a=t+"-roll",getAttrs([t,a],function(e){var n="",r={};e[a]&&(r[a]="",n=R.getRowId(e[a]),n&&(r["repeating_item_"+n+"_location"]=J.Carried,r["repeating_item_"+n+"_old_location"]=J.Carried)),e[t]&&(r[t]=""),P.default.size(r)&&R.setWrapper(r,M.default.silentParams)})}function o(e,t,a){var n=P.default.once(function(){"function"==typeof e&&e()});try{a||(a=ae),T.default.repeating("item").attrs("item_total_weight","item-total-hp","item-total-hp_max","item-total-value").fields("item-weight","qty","qty_max","location","item-hp","item-hp_max","value").reduce(function(e,t){try{t.I.qty>0&&(0===t.I.qty_max||1===t.I.qty_max?(a.weight&&t.I.location!==J.NotCarried&&(e["item-weight"]+=t.F["item-weight"]*t.F.qty),a.value&&(e.value+=t.F.value*t.F.qty),a.hp&&(e["item-hp"]+=t.I["item-hp"]*t.I.qty,e["item-hp_max"]+=t.I["item-hp_max"]*t.I.qty)):(a.weight&&t.I.location!==J.NotCarried&&(e["item-weight"]+=t.F["item-weight"]),a.value&&(e.value+=t.F.value),a.hp&&(e["item-hp"]+=t.I["item-hp"],e["item-hp_max"]+=t.I["item-hp_max"])))}catch(e){T.default.error("PFInventory.updateRepeatingItems inner error",e)}finally{return e}},{"item-weight":0,"item-hp":0,"item-hp_max":0,value:0},function(e,t,n){a.weight&&(n.S.item_total_weight=Math.floor(100*e["item-weight"])/100),a.hp&&(n.S["item-total-hp"]=e["item-hp"],n.S["item-total-hp_max"]=e["item-hp_max"]),a.value&&(n.S["item-total-value"]=Math.floor(100*e.value)/100)}).execute(n)}catch(e){T.default.error("PFInventory.updateRepeatingItems",e),n()}}function c(e,t){var a=function(){"function"==typeof e&&e()};getAttrs(["CP","SP","GP","PP","carried-currency"],function(e){var n=parseInt(e["carried-currency"],10)||0,r={},i=0;try{i=((parseInt(e.CP,10)||0)+(parseInt(e.SP,10)||0)+(parseInt(e.GP,10)||0)+(parseInt(e.PP,10)||0))/50,n!==i?(t&&(r=M.default.silentParams),R.setWrapper({"carried-currency":i},r,a)):a()}catch(e){T.default.error("PFInventory.updateCarriedCurrency",e),a()}})}function u(e,t){var a=function(){"function"==typeof e&&e()};getAttrs(["carried-currency","item_total_weight","carried-misc","carried-total"],function(e){var t,n,r={};try{t=Math.floor(100*parseFloat(e["carried-total"],10)||0),n=Math.floor(100*(parseFloat(e["carried-currency"],10)||0)+100*(parseFloat(e.item_total_weight,10)||0)+100*(parseFloat(e["carried-misc"],10)||0)),t!==n?(n/=100,R.setWrapper({"carried-total":n},r,a)):a()}catch(e){T.default.error("PFInventory.updateCarriedTotal",e),a()}})}function d(e){var t=P.default.once(function(){"function"==typeof e&&e()}),a=P.default.once(function(){R.setWrapper({migrated_worn_equipment:"1"},{},t)}),n=["charges","weight","hp","hp_max","value"],r=function(e,t){var a=P.default.once(function(){"function"==typeof t&&t()}),r=["worn-"+e];r.push("worn-"+e+"-description"),r.push("worn-"+e+"-hardness"),P.default.each(n,function(t){r.push("worn-"+e+"-"+t)}),getAttrs(r,function(t){var n="",r={},i={},l="",s=0,o=ee.noEquipType;try{t["worn-"+e]&&(n=generateRowID(),r["repeating_item_"+n+"_name"]=t["worn-"+e],r["repeating_item_"+n+"_row_id"]=n,l=t["worn-"+e+"-description"],l&&(r["repeating_item_"+n+"_short-description"]=l),l=t["worn-"+e+"-charges"],l?(r["repeating_item_"+n+"_qty"]=l,r["repeating_item_"+n+"_qty_max"]=t["worn-"+e+"-charges_max"]||50):(i["repeating_item_"+n+"_qty"]=1,i["repeating_item_"+n+"_qty_max"]=1),l=t["worn-"+e+"-weight"],l&&(i["repeating_item_"+n+"_item-weight"]=l),l=t["worn-"+e+"-hardness"],l&&(i["repeating_item_"+n+"_hardness"]=l),l=t["worn-"+e+"-hp"],l&&(i["repeating_item_"+n+"_item-hp"]=l),l=t["worn-"+e+"-hp_max"],l&&(r["repeating_item_"+n+"_item-hp_max"]=l),l=t["worn-"+e+"-value"],l&&(i["repeating_item_"+n+"_value"]=l),r["worn-"+e+"-roll"]="@{repeating_item_"+n+"_macro-text}",s=J[e],r["repeating_item_"+n+"_location"]=s,r["repeating_item_"+n+"_old_location"]=s,s===J.NotCarried?r["repeating_item_"+n+"loctype-tab"]=J.NotCarried:s===J.Carried?r["repeating_item_"+n+"loctype-tab"]=J.Carried:s>J.NotCarried?r["repeating_item_"+n+"loctype-tab"]=J.equipped:r["repeating_item_"+n+"loctype-tab"]=-1,o=ee.OtherMagic,r["repeating_item_"+n+"_equip-type"]=o,r["repeating_item_"+n+"_equiptype-tab"]=o)}catch(e){T.default.error("PFInventory.copyWornEquipmentToNewItem",e)}finally{P.default.size(r)>0?R.setWrapper(r,M.default.silentParams,a):a(),P.default.size(i)>0&&R.setWrapper(i)}})},i=function(e,t,a){var n=P.default.once(function(e){"function"==typeof a&&a(e)}),r=[e,e+"-type"],i="",l=0,s=0;if(/armor/i.test(e))l=1;else{if(!/shield/i.test(e))return void n(0);s=1}getAttrs([e],function(a){return a[e]?(i=a[e],void getSectionIDs("repeating_item",function(a){var s=[];s=P.default.map(a,function(e){return"repeating_item_"+e+"_name"}),P.default.each(H.defenseArmorShieldColumns,function(t){r.push(e+"-"+t)}),r=r.concat(s),getAttrs(r,function(a){var r,o="",c={},u={},d=0,p="",f=!0,m=0,_=0;try{m=parseInt(a[e+"-equipped"],10)||0,d=parseInt(a[e+"-max-dex"],10),isNaN(d)&&(d=99),r=P.default.find(s,function(e){return i===a[e]}),r?(f=!1,o=R.getRowId(r)):o=generateRowID(),c["repeating_item_"+o+"_equip-type"]=ee.Armor,c["repeating_item_"+o+"_equiptype-tab"]=ee.Armor,f&&(c["repeating_item_"+o+"_name"]=i),c["repeating_item_"+o+"_qty"]=1,c["repeating_item_"+o+"_qty_max"]=1,t||1!==m?(c["repeating_item_"+o+"_location"]=J.NotCarried,c["repeating_item_"+o+"_old_location"]=J.NotCarried,c["repeating_item_"+o+"_loctype-tab"]=J.NotCarried,m&&(c[e+"-equipped"]=0)):(_=1,l?(f?(c["repeating_item_"+o+"_location"]=J.Armor,c["repeating_item_"+o+"_old_location"]=J.Armor):u["repeating_item_"+o+"_location"]=J.Armor,c["repeating_item_"+o+"_loctype-tab"]=J.equipped,c["armor3-roll"]="@{repeating_item_"+o+"_macro-text}",c.armor3=a[e]):(f?(c["repeating_item_"+o+"_location"]=J.Shield,c["repeating_item_"+o+"_old_location"]=J.Shield):u["repeating_item_"+o+"_location"]=J.Shield,c["repeating_item_"+o+"_loctype-tab"]=J.equipped,c["shield3-roll"]="@{repeating_item_"+o+"_macro-text}",c.shield3=a[e]),d>50&&(c[e+"-max-dex"]="-")),P.default.each(["acbonus","enhance","acp","spell-fail","proficiency"],function(t){p=a[e+"-"+t],p&&(c["repeating_item_"+o+"_item-"+t]=p)}),d>50?c["repeating_item_"+o+"_item-max-dex"]="-":c["repeating_item_"+o+"_item-max-dex"]=d,p=a[e+"-type"],p&&(c["repeating_item_"+o+"_item-defense-type"]=p)}catch(e){T.default.error("PFInventory.copyWornDefenseToNewItem",e)}finally{P.default.size(c)>0?R.setWrapper(c,M.default.silentParams,function(){P.default.size(u)>0?R.setWrapper(u,{},function(){n(_)}):n(_)}):n(!1)}})})):void n(0)})};getAttrs(["migrated_worn_equipment"],function(e){var n=!1,l=!1,s=P.default.after(2,function(){a()}),o=function(){T.default.debug("checking armor3"),i("armor3",n,function(e){n=n||e,T.default.debug("checking armor2, found="+n),i("armor2",n,function(e){n=n||e,T.default.debug("checking armor0, found="+n),i("armor",n,s)})}),T.default.debug("checking shield3"),i("shield3",l,function(e){l=l||e,T.default.debug("checking shield2, found="+l),i("shield2",l,function(e){l=l||e,T.default.debug("checking shield0, found="+l),i("shield",l,s)})})},c=P.default.after(P.default.size($),function(){var e,t,a;try{e=P.default.map($,function(e){return"worn-"+e+"-"}),t=R.cartesianAppend(e,["charges","weight","hp","hp_max","value","description","hardness"]),a=P.default.reduce(t,function(e,t){return e[t]="",e},{}),R.setWrapper(a,M.default.silentParams,o)}catch(e){T.default.error("PFInventory.migrateWornEquipment.doneWornRows err:",e),o()}});try{if(1===parseInt(e.migrated_worn_equipment,10))return void t();P.default.each($,function(e){r(e,c)})}catch(e){T.default.error("PFInventory.migrateWornEquipment",e),o()}})}function p(e,t,a){(!a||t<2||!t)&&"function"==typeof e&&e(),getSectionIDs("repeating_item",function(n){var r=[];return P.default.size(n)<=1?void("function"==typeof e&&e()):(P.default.each(n,function(e,t){e!==a&&r.push("repeating_item_"+e+"_location")}),void getAttrs(r,function(a){var r={};P.default.each(n,function(e,n){(parseInt(a["repeating_item_"+e+"_location"],10)||0)===t&&(r["repeating_item_"+e+"_location"]=0,r["repeating_item_"+e+"_old_location"]=0)}),P.default.size(r)>0?R.setWrapper(r,{silent:!0},e):"function"==typeof e&&e()}))})}function f(e,t,a,n){var r=P.default.once(function(){"function"==typeof t&&t()}),i=(R.getRepeatingIDStr(e),e||(n?R.getRowId(n.sourceAttribute)||"":"")),s="repeating_item_"+i+"_",o=s+"location",c=s+"loctype-tab",u=s+"name",d=s+"old_location",f=s+"macro-text";try{getAttrs([o,d,u,c],function(e){var a=0,n=0,s={},m="",_=-1,g="";try{a=parseInt(e[o],10),isNaN(a)&&(a=J.NotCarried,s[o]=a),_=parseInt(e[c]),isNaN(_)&&(_=-2),a>J.NotCarried?_!==J.equipped&&(s[c]=J.equipped):a===J.Carried?_!==a&&(s[c]=J.Carried):a===J.NotCarried?_!==a&&(s[c]=J.NotCarried):_!==-1&&(s[c]="-1"),n=parseInt(e[d],10),isNaN(n)&&(n=a),s[d]=a,a===J.Carried&&n!==J.NotCarried&&n!==a?(m=l(n),m&&(s[m]="",s[m+"-roll"]="")):a>J.NotCarried&&(m=l(a),m&&(g=e[u]||"",g?s[m]=g:s[m]="Row "+i,s[m+"-roll"]="@{"+f+"}"),n>1&&n!==a&&(m=l(n),m&&(s[m]="",s[m+"-roll"]="")))}catch(e){T.default.error("updateEquipmentLocation update location error:",e)}finally{P.default.size(s)>0?R.setWrapper(s,M.default.silentParams,function(){a>J.NotCarried&&p(t,a,i),r()}):r()}})}catch(e){T.default.error("PFInventory.updateEquipmentLocation",e),r()}}function m(e,t,a){var n=P.default.once(function(){"function"==typeof a&&a()}),r="",i="",o="",c=[],u="",d="",p="",m=["item-acbonus","item-acenhance","item-max-dex","item-acp","item-spell-fail","item-defense-type","item-proficiency","name","set-as-armor","set-as-shield","location","old_location","equip-type","acenhance"];try{i=R.getAttributeName(t),u=R.getRowId(t),p="repeating_item_"+u+"_","_"!==p.slice(-1)&&(p+="_"),d=l(e),o=p+"item-",r=e===J.Armor?"armor3":"shield3",c=P.default.map(m,function(e){return p+e}),c=P.default.reduce(H.defenseArmorShieldColumns,function(e,t){return e.push(r+"-"+t),e},c),c.push(r),c.push(d)}catch(e){return T.default.error("PFInventory.updateWornArmorAndShield error before getattrs",e),void n()}getAttrs(c,function(a){var l=0,c={},m={},_=0,g=0,b="",h="";try{if("set-as-armor"===i||"set-as-shield"===i||e===J.Armor||e===J.Shield){for(l=0;l0&&R.setWrapper(m,M.default.silentParams,function(){g!==e&&f(u,null,!0,null)}),P.default.size(c)>0?R.setWrapper(c,{},n):n()}})}function _(e){var t=P.default.once(function(){"function"==typeof e&&e()});getSectionIDs("repeating_item",function(e){var a,n=0;try{if(!e||!P.default.size(e))return void t();n=P.default.size(e),a=P.default.after(n,t),P.default.each(e,function(e){f(e,a,null,null)})}catch(e){T.default.error("PFInventory.updateLocations",e),t()}})}function g(e,t,a,n){var r=P.default.once(function(){"function"==typeof t&&t()}),i=[],l=R.getRowId(e),s=R.getRepeatingIDStr(l),o="repeating_item_"+s;i.push(o+"name"),ne.forEach(function(e){i.push(o+"item-"+e)}),i.push(o+"item-wpenhance"),i.push(o+"item-dmg-type"),i.push(o+"default_size"),getAttrs(i,function(e){var t,i={},s=0,c=0;a?N.silentParams:{};try{t=n?n:generateRowID(),e[o+"name"]&&(n||(i["repeating_weapon_"+t+"_name"]=e[o+"name"]),i["repeating_weapon_"+t+"_source-item-name"]=e[o+"name"]),ne.forEach(function(a){e[o+"item-"+a]&&(i["repeating_weapon_"+t+"_"+a]=e[o+"item-"+a])}),/melee/i.test(e[o+"item-attack-type"])?i["repeating_weapon_"+t+"_damage-ability"]="STR-mod":/ranged/i.test(e[o+"item-attack-type"])&&(i["repeating_weapon_"+t+"_isranged"]=1),s=parseInt(e[o+"item-wpenhance"],10)||0,s&&(i["repeating_weapon_"+t+"_enhance"]=s),e[o+"item-dmg-type"]&&(i["repeating_weapon_"+t+"_type"]=e[o+"item-dmg-type"]),c=parseInt(e[o+"item-proficiency"],10)||0,0!==c&&(c=-4,i["repeating_weapon_"+t+"_proficiency"]=c),e[o+"default_size"]&&(i["repeating_weapon_"+t+"_default_size"]=e[o+"default_size"]),i["repeating_weapon_"+t+"_default_damage-dice-num"]=e[o+"damage-dice-num"]||0,i["repeating_weapon_"+t+"_default_damage-die"]=e[o+"damage-die"]||0,i["repeating_weapon_"+t+"_source-item"]=l,i["repeating_weapon_"+t+"_link_type"]=K.linkedAttackType.equipment}catch(e){T.default.error("PFInventory.createAttackEntryFromRow",e)}finally{P.default.size(i)>0?(i[o+"create-attack-entry"]=0,R.setWrapper(i,M.default.silentParams,function(){K.recalcRepeatingWeapon(t,function(){X.resetCommandMacro(),j.resetOption(t),r()})})):(i[o+"create-attack-entry"]=0,R.setWrapper(i,M.default.silentParams,r))}})}function b(e,t){var a=P.default.once(function(){"function"==typeof t&&t()}),n="",r="",i="",l="",s=[],o={};try{if(!e)return void a();if(l=R.getRowId(e),n=R.getAttributeName(e),0===e.indexOf("repeating_weapon_"))return T.default.error("PFInventory.updateAssociatedAttack, called on weapon event, no longer supported!"),void a();r=n.replace("item-",""),"name"===n?r="source-item-name":"item-dmg-type"===n?r="type":"wpenhance"===n&&(r="enhance")}catch(e){return T.default.error("PFInventory.updateAssociatedAttack outer1",e),void a()}getAttrs([e],function(t){var a="";i=t[e],"undefined"==typeof i&&(i=""),"proficiency"===n&&(i=parseInt(i,10)||0,0!==i&&(i=-4)),i=String(i),getSectionIDs("repeating_weapon",function(e){s=P.default.reduce(e,function(e,t){return e=e.concat(["repeating_weapon_"+t+"_source-item","repeating_weapon_"+t+"_"+r])},[]),getAttrs(s,function(t){o={};try{P.default.each(e,function(e){var s="",c="";l===t["repeating_weapon_"+e+"_source-item"]&&(c="repeating_weapon_"+e+"_"+r,s=t[c],"proficiency"===n&&(s=parseInt(s,10)||0),s=String(s),s!==i&&(o[c]=i,"damage-die"!==a&&"damage-dice-num"!==a||(o["repeating_weapon_"+e+"_default_"+a]=i)))})}catch(e){T.default.error("PFInventory.updateAssociatedAttack inner1",e)}finally{P.default.size(o)>0&&R.setWrapper(o)}})})})}function h(e){var t,a,n=ee.noEquipType;if(!e)return n;if(t=e.toLowerCase(),a=t.match(/(?:\bwand\b|\bring\b|\brod\b|plate|sword|shield|mail|spear|potion|spellbook|smokestick|incense|scroll|alchemist|antitoxin|antidote|elixir|staff|acid|\boil\b|water|component pouch|arrow|bolt|bullet|sunrod|flask|ration|armor spike|kit|saddle|tool|spike|pole|ladder|lantern|candle|torch|rope|chain|crowbar|\bnet\b|\bram\b|tanglefoot|tinder|flint|vial)/i))switch(a[0]){case"sword":case"spear":case"armor spike":case"net":n=ee.Weapon;break;case"mail":case"plate":case"shield":n=ee.Armor;break;case"vial":case"flint":case"kit":case"tool":case"spike":case"crowbar":case"ram":case"lantern":case"candle":case"torch":case"rope":case"chain":case"saddle":case"spyglass":case"spellbook":case"tinder":case"component pouch":n=ee.Gear;break;case"ring":n=ee.OtherMagic;break;case"rod":case"wand":case"staff":n=ee.Charged;break;case"tanglefoot":case"incense":case"smokestick":case"sunrod":case"ration":case"water":case"alchemist":case"oil":case"flask":case"acid":case"potion":case"elixir":case"scroll":case"antitoxin":case"antidote":n=ee.Consumables;break;case"arrow":case"bolt":case"bullet":case"stone":n=ee.Ammo}return n}function y(e){var t=R.getRowId(e.sourceAttribute),a="repeating_item_"+t+"_",n=a+"item-",r=["default_char_size","equipment_tab",n+"category_compendium",n+"value_compendium",n+"range_compendium",n+"critical_compendium",n+"smalldamage_compendium",n+"meddamage_compendium",n+"specialtype_compendium",n+"speed20_compendium",n+"speed30_compendium",n+"weight_compendium",n+"spell-fail_compendium",n+"acbonus_compendium",n+"acp_compendium",n+"dmg-type",a+"description",n+"max-dex",a+"name"];getAttrs(r,function(e){var r,i,l={},s=0,c=0,u="",d=0,p=0,f=ee.noEquipType,m=0,_=0;try{if("Items"!==e[n+"category_compendium"])return void T.default.warn("compendium item is "+e["repeating_item_item-category_compendium"]+", INVALID");l[a+"row_id"]=t,i=e[a+"name"],N.getCompendiumIntSet(n,"range",e,l),N.getCompendiumFunctionSet(n,"value",N.getCostInGP,e,l),N.getCompendiumIntSet(n,"spell-fail",e,l),N.getCompendiumIntSet(n,"acbonus",e,l),N.getCompendiumIntSet(n,"acp",e,l),e[n+"acbonus_compendium"]&&(p=1),m=parseInt(e[n+"speed20_compendium"],10)||0,_=parseInt(e[n+"speed30_compendium"],10)||0,e[n+"max-dex"]&&(r=e[n+"max-dex"],r=r.replace(/\u2013|\u2014|-|\\u2013|\\u2014/,"-"),r!==e[n+"max-dex"]&&(l[n+"max-dex"]=r)),e[n+"specialtype_compendium"]&&(r=e[n+"specialtype_compendium"],r=r.replace(/\u2013|\u2014|-|\\u2013|\\u2014/,""),r&&(r=e[n+"item-dmg-type"]?e[n+"item-dmg-type"]+" "+e[n+"specialtype_compendium"]:e[n+"specialtype_compendium"],l[n+"item-dmg-type"]=r)),e[n+"critical_compendium"]&&(d=1,r=N.getCritFromString(e[n+"critical_compendium"]),r&&(20!==r.crit&&(l[n+"crit-target"]=r.crit),2!==r.critmult&&(l[n+"crit-multiplier"]=r.critmult))),s=parseInt(e.default_char_size,10)||0,u="meddamage_compendium",c=0,s>=1&&(c=1,u="smalldamage_compendium"),0!==s&&(l[a+"default_size"]=c),N.getCompendiumIntSet(n,"weight",e,l),s>=1&&(c=parseInt(l[n+"weight"],10)||0,c&&(c=Math.floor(c/2*100)/100,l[n+"weight"]=c)),e[n+u]&&(d=1,r=N.getDiceDieFromString(e[n+u]),r&&(r.dice&&r.die&&(l[n+"damage-dice-num"]=r.dice,l[n+"damage-die"]=r.die),r.plus&&(l[n+"damage"]=r.plus))),d?(f=ee.Weapon,e[n+"range_compendium"]&&parseInt(e[n+"range_compendium"],10)>0?l[n+"attack-type"]="@{attk-ranged}":l[n+"attack-type"]="@{attk-melee}"):p?(f=ee.Armor,i&&(u=/tower/i.test(i)?"Tower Shield":30===m&&20===_?"Light":/heavy|stone|full|half.plate|splint|banded|iron|tatami|kusari/i.test(u)?"Heavy":/medium|mountain|chainmail|breastplate|scale|kikko|steel|horn|mirror|hide|maru|armored coat/i.test(u)?"Medium":"Light",l[n+"defense-type"]=u)):f=h(i),f<0?f=ee.Other:f===ee.Weapon?l[a+"weapon-attributes-show"]=1:f===ee.Armor&&(l[a+"armor-attributes-show"]=1),f&&(l.equipment_tab=f,l[a+"equip-type"]=f,l[a+"equiptype-tab"]=f),l[a+"qty"]=1,l[a+"qty_max"]=1,l[a+"location"]=J.Carried,l[a+"old_location"]=J.Carried,l[a+"loctype-tab"]=J.Carried,l[n+"category_compendium"]="",l[n+"value_compendium"]="",l[n+"range_compendium"]="",l[n+"critical_compendium"]="",l[n+"smalldamage_compendium"]="",l[n+"meddamage_compendium"]="",l[n+"specialtype_compendium"]="",l[n+"speed20_compendium"]="",l[n+"speed30_compendium"]="",l[n+"weight_compendium"]="",l[n+"spell-fail_compendium"]="",l[n+"acbonus_compendium"]="",l[n+"acp_compendium"]=""}catch(e){T.default.error("importFromCompendium",e)}finally{P.default.size(l)>0&&R.setWrapper(l,M.default.silentParams,o)}})}function v(e){var t=P.default.once(function(){"function"==typeof e&&e()});getSectionIDs("repeating_item",function(e){var a=[];return e&&P.default.size(e)?(a=P.default.reduce(e,function(e,t){return e.push("repeating_item_"+t+"_has_uses"),e.push("repeating_item_"+t+"_qty_max"),e},[]),void getAttrs(a,function(a){var n={};try{n=P.default.reduce(e,function(e,t){var n="repeating_item_"+t+"_",r=0;try{r=parseInt(a[n+"qty_max"],10)||0,r>1?e[n+"has_uses"]="true":e[n+"has_uses"]=""}catch(e){T.default.error("PFInventory.updateUses error repeating_item id "+t,e)}finally{return e}},{})}catch(e){T.default.error("PFInventory.updateUses error setting defaults ",e)}finally{P.default.size(n)>0?R.setWrapper(n,M.default.silentParams,t):t()}})):void t()})}function k(e){var t=P.default.once(function(){"function"==typeof e&&e()});getSectionIDs("repeating_item",function(e){return e&&P.default.size(e)>0?void getAttrs(Y,function(a){var n=[],r=[],i={};try{r=P.default.map(e,function(e){return e.toLowerCase()}),n=P.default.chain(a).omit(function(e,t){return!e}).mapObject(function(e){return R.getRowId(e).toLowerCase()}).omit(function(e,t){return P.default.contains(r,e)}).value(),P.default.size(n)>0?(i=P.default.reduce(n,function(e,t,a){var n=a.slice(-5);return e[n]="",e[a]="",e},{}),R.setWrapper(i,M.default.params,t)):t()}catch(e){T.default.error("PFInventory.deleteOrphanWornRows",e),t()}}):void t()})}function w(e,t){e=e.toLowerCase(),getAttrs(Y,function(a){var n="",r="",i={};try{n=P.default.findKey(a,function(t){return!!t&&t.toLowerCase().indexOf(e)>=0}),n?(r=n.slice(0,-5),i[n]="",i[r]="",R.setWrapper(i,M.default.silent,t)):"function"==typeof t&&t()}catch(t){T.default.error("PFInventory.event delete item for attribute: "+e,t)}})}function A(e,t){var a=P.default.once(function(){"function"==typeof e&&e()});getAttrs(["migrated_itemlist_defaults"],function(e){try{if(1===parseInt(e.migrated_itemlist_defaults,10))return void a();getSectionIDs("repeating_item",function(e){var t=[];try{if(!e||!P.default.size(e))return void a();t=P.default.map(e,function(e){return["repeating_item_"+e+"_name","repeating_item_"+e+"_location","repeating_item_"+e+"_qty_max","repeating_item_"+e+"_equip-type"]}),t=P.default.flatten(t)}catch(e){return T.default.error("PFInventory.setNewDefaults miderror",e),void a()}getAttrs(t,function(t){var n={},r=0;try{n=P.default.reduce(e,function(e,a){var n="repeating_item_"+a+"_",i=0,l=n+"name",s=0,o=0;try{s=parseInt(t[n+"location"],10),isNaN(s)&&(s=J.Carried,e[n+"location"]=s),e[n+"oldlocation"]=s,s===J.NotCarried?e[n+"loctype-tab"]=J.NotCarried:s===J.Carried?e[n+"loctype-tab"]=J.Carried:s>J.NotCarried?e[n+"loctype-tab"]=J.equipped:e[n+"loctype-tab"]=-1,i=parseInt(t[n+"qty_max"],10),isNaN(i)&&(i=0,e[n+"_qty_max"]=i),i>1?e[n+"has_uses"]="true":e[n+"has_uses"]="",r=parseInt(t["repeating_item_"+a+"_equip-type"],10),r?e[n+"equiptype-tab"]=r:(t[l]&&(o=h(t[l])),o?(e[n+"equip-type"]=o,e[n+"equiptype-tab"]=o):(e[n+"equip-type"]=ee.noEquipType,e[n+"equiptype-tab"]=ee.noEquipType)),e[n+"showinmenu"]=0}catch(e){T.default.error("PFInventory.setNewDefaults error repeating_item id "+a,e)}finally{return e}},{})}catch(e){T.default.error("PFInventory.setNewDefaults error setting defaults ",e)}finally{P.default.size(n)>0?(n.migrated_itemlist_defaults=1,R.setWrapper(n,M.default.silentParams,a)):a()}})})}catch(e){T.default.error("PFInventory.setNewDefaults outererr",e),a()}})}function C(e,t){var a=P.default.once(function(){"function"==typeof e&&e()});B.migrateRepeatingItemAttributes(T.default.callback(function(){A(T.default.callback(function(){d(a)}))}))}function I(){on("change:repeating_item:item-category_compendium",T.default.callback(function(e){T.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||y(e)})),on("change:repeating_item:location",T.default.callback(function(e){T.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||getAttrs(["repeating_item_location","repeating_item_old_location"],function(t){var a=parseInt(t.repeating_item_location,10),n=parseInt(t.repeating_item_old_location,10);a===J.Armor||a===J.Shield?m(a,e.sourceAttribute,function(){f(null,null,null,e)}):f(null,null,null,e),(a!==J.NotCarried||n!==J.NotCarried&&n!==a)&&o(null,!1,{weight:1})})})),on("change:repeating_item:qty_max",T.default.callback(function(e){"player"!==e.sourceType&&"api"!==e.sourceType||(T.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),o(),getAttrs(["repeating_item_qty_max"],function(e){parseInt(e.repeating_item_qty_max,10)>1?R.setWrapper({repeating_item_has_uses:"true"},M.default.silentParams):R.setWrapper({repeating_item_has_uses:""},M.default.silentParams)}))})),on("change:repeating_item:qty",T.default.callback(function(e){"player"!==e.sourceType&&"api"!==e.sourceType||(T.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),getAttrs(["repeating_item_qty_max"],function(e){var t=parseInt(e.repeating_item_qty_max,10)||0;0!==t&&1!==t||o()}))})),on("change:repeating_item:value",T.default.callback(function(e){"player"!==e.sourceType&&"api"!==e.sourceType||(T.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),o(null,!0,{value:1}))})),on("change:repeating_item:item-weight",T.default.callback(function(e){"player"!==e.sourceType&&"api"!==e.sourceType||(T.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),getAttrs(["repeating_item_location"],function(e){parseInt(e.repeating_item_location,10)!==J.NotCarried&&o(null,!1,{weight:1})}))})),on("remove:repeating_item",T.default.callback(function(e){T.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||(o(),w(e.sourceAttribute)),K.removeLinkedAttack(null,K.linkedAttackType.equipment,R.getRowId(e.sourceAttribute))})),on("change:CP change:SP change:GP change:PP",T.default.callback(function(e){T.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),c()})),on("change:carried-currency change:item_total_weight change:carried-misc",T.default.callback(function(e){T.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),u()})),on("change:repeating_item:item-defense-type change:repeating_item:item-acbonus change:repeating_item:item-max-dex change:repeating_item:item-acp change:repeating_item:item-spell-fail change:repeating_item:item-proficiency change:repeating_item:acenhance",T.default.callback(function(e){T.default.debug("caught "+e.sourceAttribute+" event"+e.sourceType),getAttrs(["repeating_item_location"],function(t){var a=parseInt(t.repeating_item_location,10)||0;a!==J.Armor&&a!==J.Shield||m(a,e.sourceAttribute)})})),P.default.each(ne,function(e){var t="change:repeating_item:item-"+e;on(t,T.default.callback(function(e){T.default.debug("caught "+e.sourceAttribute+" event"+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||b(e.sourceAttribute)}))}),on("change:repeating_item:name change:repeating_item:item-dmg-type change:repeating_item:item-proficiency change:repeating_item:default_size change:repeating_item:wpenhance",T.default.callback(function(e){T.default.debug("caught "+e.sourceAttribute+" event"+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||b(e.sourceAttribute)})),on("change:repeating_item:create-attack-entry",T.default.callback(function(e){T.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||g(e.sourceAttribute)})),on("change:repeating_item:set-as-armor",T.default.callback(function(e){T.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||m(J.Armor,e.sourceAttribute,function(){f(null,null,null,e)})})),on("change:repeating_item:set-as-shield",T.default.callback(function(e){T.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||m(J.Shield,e.sourceAttribute,function(){f(null,null,null,e)})})),on("change:repeating_item:showinmenu change:repeating_item:equip-type change:repeating_item:name",T.default.callback(function(e){T.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||i()})),on("change:repeating_item:equip-type",T.default.callback(function(e){T.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||getAttrs(["repeating_item_equip-type","repeating_item_equiptype-tab","equipment_tab"],function(e){var t=parseInt(e["repeating_item_equip-type"],10)||0,a=parseInt(e["repeating_item_equiptype-tab"],10),n=parseInt(e.equipment_tab,10)||0,r={};(t!==a||isNaN(a))&&(r["repeating_item_equiptype-tab"]=t),t>0&&t!==n&&n<9&&(r.equipment_tab=t),P.default.size(r)&&R.setWrapper(r,M.default.silentParams)})}))}Object.defineProperty(t,"__esModule",{value:!0}),t.recalculate=void 0,t.resetCommandMacro=i,t.updateRepeatingItems=o,t.updateLocations=_,t.createAttackEntryFromRow=g,t.updateAssociatedAttack=b,t.getEquipmentTypeFromName=h,t.importFromCompendium=y,t.setNewDefaults=A,t.migrate=C;var x=a(2),P=r(x),S=(a(0),a(1)),T=r(S),E=a(4),M=r(E),D=a(3),R=n(D),F=a(5),N=n(F),L=a(13),z=(n(L),a(22)),O=n(z),W=a(6),B=n(W),q=a(12),H=n(q),U=a(11),j=n(U),G=a(8),X=n(G),V=a(7),K=n(V),$=["Belt","Body","Chest","Eyes","Feet","Hands","Head","Headband","Neck","Ring1","Ring2","Shoulders","Wrist"],Z=$.concat(["Armor3","Shield3"]),Y=(P.default.map(Z,function(e){return"worn-"+e}),P.default.map(Z,function(e){return"worn-"+e+"-roll"})),Q=["Carried","NotCarried","Armor","Belt","Body","Chest","Eyes","Feet","Hands","Head","Headband","Neck","Ring1","Ring2","Shield","Shoulders","Wrist"],J={
+Carried:0,NotCarried:1,Armor:2,Belt:3,Body:4,Chest:5,Eyes:6,Feet:7,Hands:8,Head:9,Headband:10,Neck:11,Ring1:12,Ring2:13,Shield:14,Shoulders:15,Wrist:16,equipped:2},ee={noEquipType:0,Weapon:1,Armor:2,Ammo:3,Consumables:4,OtherMagic:5,Gear:6,Other:7,Charged:8,Other2:9},te={0:"",1:"weapons",2:"armor-shield",3:"ammunition",4:"consumables",5:"other-magic-items",6:"gear-tool",7:"other-items",8:"charged-magics",9:"other-items-2"},ae={value:1,hp:1,weight:1},ne=["attack-type","range","masterwork","crit-target","crit-multiplier","damage-dice-num","damage-die","damage","precision_dmg_macro","precision_dmg_type","critical_dmg_macro","critical_dmg_type"];t.recalculate=T.default.callback(function(e,t,a){var n=P.default.once(function(){T.default.info("leaving PFInventory.recalculate"),"function"==typeof e&&e()}),r=P.default.after(2,function(){T.default.debug("PFInventory.recalculate at setTotals"),_(v),i(),k(),u(n)});try{T.default.debug("at PFInventory.recalculate"),C(function(){c(r,t),o(r,t)})}catch(e){T.default.error("PFInventory.recalculate",e),n()}});I()},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){var a="repeating_spells_"+t,n=S[t];getAttrs([a,"repeating_spells_spell_options","repeating_spells_spell_lvlstr",n,"repeating_spells_sr","repeating_spells_SP-mod","repeating_spells_savedc"],function(e){var r=e.repeating_spells_spell_options,i="",l={};if(!e.repeating_spells_spell_lvlstr&&r)try{if(i=e[a]||"",1===parseInt(e[n],10)){switch(t){case"school":r=r.replace(w.school,k.school);break;case"cast-time":r=/1\s+(?:S.A.|standard action)/i.test(i)?y.deleteOption(r,"casting_time",w):r.replace(w.casting_time,k.casting_time);break;case"components":r=r.replace(w.components,k.components);break;case"duration":r=r.replace(w.duration,k.duration);break;case"range":r=r.replace(w.range,k.range);break;case"targets":r=r.replace(w.targets,k.targets);break;case"save":r=y.shouldNotDisplayOption("saving_throw",i)?y.deleteOption(r,"saving_throw",w):r.replace(w.saving_throw,k.saving_throw);break;case"sr":r=y.shouldNotDisplayOption("sr",i)?y.deleteOption(r,"sr",w):r.replace(w.sr,k.sr);break;case"damage-macro-text":r=i?r.replace(w.spelldamage,k.spelldamage):y.deleteOption(r,"spelldamage",w);break;case"damage-type":r=i?r.replace(w.spelldamagetype,k.spelldamagetype):y.deleteOption(r,"spelldamagetype",w);break;case"sp-mod":f.default.debug("found damage type"+i),r=i?r.replace(w.spellPen,k.spellPen):y.deleteOption(r,"spellPen",w)}l.repeating_spells_spell_options=r,b.setWrapper(l,{silent:!0})}}catch(e){f.default.error("PFSpellOptions.updateSpellOption",e)}})}function l(e,t,a,n){var r="repeating_spells_"+b.getRepeatingIDStr(e),i=parseInt(n[r+"Concentration_misc"],10)||0,l=parseInt(n[r+"CL_misc"],10)||0,s=parseInt(n[r+"spellclass_number"],10),o=parseInt(n[r+"spell_level"],10),c=parseInt(n[r+"slot"],10),u=(parseInt(n[r+"casterlevel"],10),parseInt(n[r+"Concentration-mod"],10),isNaN(c)||c===o?o:c),d=15+2*u,p=parseInt(n["Concentration-"+s+"-def"],10)||0,m="{{condition_note=@{condition_spell_notes}}}",_="";return isNaN(s)||isNaN(o)?(f.default.warn("cannot set options for spell! id:"+e+" class or level are not numbers"),"{{condition_note=@{condition_spell_notes}}}"):(a.showschool&&(m+=k.school),a.showlevel&&(m+=k.spellclass,m+=k.level),a.showcasting_time&&(m+=/1 (?:S.A.|standard action)/i.test(n[r+"cast-time"])?"{{casting_time=}}":k.casting_time),a.showcomponents&&(m+=k.components),a.showsaving_throw&&(_=n[r+"save"]||"",m+=y.shouldNotDisplayOption("saving_throw",_)?"{{saving_throw=}}":k.saving_throw,m+=k.dc),a.showrange&&(m+=k.range_pick,m+=k.range,m+=k.rangetext),a.showtargets&&(m+=k.targets),a.showduration&&(m+=k.duration),a.showsr&&(_=n[r+"sr"]||"",m+=y.shouldNotDisplayOption("sr",_)?"{{sr=}}":k.sr,_=parseInt(n[r+"SP-mod"],10)||0,m+=_?k.spellPen:"{{spellPen=}}"),m+=a.showcasterlevel&&l?k.casterlevel:"{{casterlevel=}}",a.showcasterlevel_check&&(m+=k.casterlevel_chk),(a.showcasterlevel||a.showcasterlevel_check)&&(_=parseInt(n[r+"SP-mod"],10)||0,m+=0===_?"{{spellPen=}}":k.spellPen),m+=a.showconcentration&&(i||l)?k.Concentration:"{{Concentration=}}",a.showconcentration_check&&(m+=k.Concentration_chk),(a.showconcentration||a.showconcentration_check)&&(m+=p>0?k.cast_def.replace("REPLACE",p)||"":"{{cast_def=}}",m+=k.cast_defDC.replace("REPLACE",d)||""),a.showdescription&&(m+=k.description),a.showspellnotes&&(m+=k.spellnotes.replace("REPLACE","@{spell-class-"+s+"-spells-notes}")||""),a.showspell_fail_check&&parseInt(n["spell-fail"],10)>0&&(m+=k.spell_fail_check||"",m+=k.spell_fail||""),a.showdamage?(m+=n[r+"spelldamage"]?k.spelldamage:"{{spelldamage=}}",m+=n["damage-type"]?k.spelldamagetype:"{{spelldamagetype=}}"):m+="{{spelldamage=}}{{spelldamagetype=}}",m)}function s(e,t){var a,n="repeating_spells_"+b.getRepeatingIDStr(e);a=d.default.map(P,function(e){return n+e}).concat(C),getAttrs(a,function(a){var n=d.default.chain(v).reduce(function(e,t){return e["show"+t.toLowerCase().slice(13).replace("_notes","")]=parseInt(a[t],10)||0,e},{}).extend({"Concentration-0-def":parseInt(a["Concentration-0-def"],10)||0,"Concentration-1-def":parseInt(a["Concentration-1-def"],10)||0,"Concentration-2-def":parseInt(a["Concentration-2-def"],10)||0}).value(),r="",i={};r=l(e,t,n,a)||"{{condition_note=@{condition_spell_notes}}}",i["repeating_spells_"+b.getRepeatingIDStr(e)+"spell_options"]=r,b.setWrapper(i,{silent:!0})})}function o(e,t){var a=d.default.once(function(){"function"==typeof e&&e()});getAttrs(C,function(e){var n,r;try{n=I.concat(x),r=d.default.chain(v).reduce(function(t,a){return t["show"+a.toLowerCase().slice(13).replace("_notes","")]=parseInt(e[a],10)||0,t},{}).extend({"Concentration-0-def":parseInt(e["Concentration-0-def"],10)||0,"Concentration-1-def":parseInt(e["Concentration-1-def"],10)||0,"Concentration-2-def":parseInt(e["Concentration-2-def"],10)||0}).value(),getSectionIDs("repeating_spells",function(e){var i,s;return e&&0!==d.default.size(e)?(s=d.default.map(e,function(e){return"repeating_spells_"+e+"_"}),i=b.cartesianAppend(s,n),void getAttrs(i,function(n){var i={};d.default.each(e,function(e){var a="";try{a=l(e,t,r,n)||"{{condition_note=@{condition_spell_notes}}}",i["repeating_spells_"+e+"_spell_options"]=a}catch(t){f.default.error("PFSpellOptions.resetOptions error on id "+e+", innererr",t)}}),d.default.size(i)>0?b.setWrapper(i,_.default.silentParams,a):a()})):void a()})}catch(e){f.default.error("PFSpellOptions.resetOptions outererr:",e),a()}})}function c(){d.default.each(T.spellOptionEventsPlayer,function(e){var t="change:repeating_spells:"+e;on(t,f.default.callback(function(t){"player"!==t.sourceType&&"api"!==t.sourceType||(f.default.debug("caught "+t.sourceAttribute+" event: "+t.sourceType),i(t,e))}))}),d.default.each(v,function(e){on("change:"+e,f.default.callback(function(e){"player"!==e.sourceType&&"api"!==e.sourceType||(f.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),o(null,e))}))})}Object.defineProperty(t,"__esModule",{value:!0}),t.recalculate=t.optionTemplateRegexes=t.optionTemplates=t.optionToggles=void 0,t.updateSpellOption=i,t.getOptionText=l,t.resetOption=s,t.resetOptions=o;var u=a(2),d=r(u),p=a(1),f=r(p),m=(a(0),a(4)),_=r(m),g=a(3),b=n(g),h=a(5),y=n(h),v=t.optionToggles=["toggle_spell_school_notes","toggle_spell_casting_time_notes","toggle_spell_duration_notes","toggle_spell_saving_throw_notes","toggle_spell_sr_notes","toggle_spell_range_notes","toggle_spell_targets_notes","toggle_spell_description_notes","toggle_spell_concentration_notes","toggle_spell_concentration_check","toggle_spell_casterlevel_notes","toggle_spell_casterlevel_check","toggle_spell_level_notes","toggle_spell_components_notes","toggle_spell_spellnotes_notes","toggle_spell_spell_fail_check","toggle_spell_damage_notes"],k=t.optionTemplates={school:"{{school=@{school}}}",casting_time:"{{casting_time=@{cast-time}}}",components:"{{components=@{components}}}",duration:"{{duration=@{duration}}}",saving_throw:"{{saving_throw=@{save}}}",sr:"{{sr=@{sr}}}",casterlevel:"{{casterlevel=[[ @{casterlevel} ]]}}",range:"{{range=@{range_numeric}}}",targets:"{{targets=@{targets}}}",Concentration:"{{Concentration=[[ @{Concentration-mod} ]]}}",description:"{{description=@{description}}}",dc:"{{dc=[[ @{savedc} ]]}}",spellPen:"{{spellPen=[[ @{SP-mod} ]]}}",range_pick:"{{@{range_pick}=Range_pick}}",rangetext:"{{rangetext=@{range}}}",level:"{{level=@{spell_level}}}",spellclass:"{{spellclass=@{spellclass}}}",cast_def:"{{cast_def=[[ REPLACE ]]}}",cast_defDC:"{{cast_defDC=[[ REPLACE ]]}}",concentrationNote:"{{concentrationNote=REPLACE}}",spellPenNote:"{{spellPenNote=REPLACE}}",casterlevel_chk:"{{casterlevel_chk=[[ 1d20 + @{casterlevel} ]]}}",Concentration_chk:"{{Concentration_chk=[[ 1d20 + @{Concentration-mod} ]]}}",spellnotes:"{{spells_notes=REPLACE}}",spell_fail_check:"{{spell_fail_check=[[ 1d100cf<[[ @{spell-fail} ]]cs>[[ @{spell-fail}+1 ]] ]]}}",spell_fail:"{{spell_fail=@{spell-fail}}}",spelldamage:"{{spelldamage=@{damage-macro-text}}}",spelldamagetype:"{{spelldamagetype=@{damage-type}}}"},w=t.optionTemplateRegexes=y.getOptionsCompiledRegexMap(k),A=["Concentration-0-def","Concentration-1-def","Concentration-2-def","spell-fail"],C=v.concat(A),I=["school","cast-time","duration","save","sr","range_numeric","targets","description","Concentration-mod","savedc","SP-mod","range_pick","range","spell_level","spellclass","casterlevel","components","spellclass_number","damage-macro-text","damage-type"],x=["spellclass_number","SP_misc","CL_misc","Concentration_misc","slot","spell-attack-type"],P=I.concat(x),S={school:"toggle_spell_school_notes","cast-time":"toggle_spell_casting_time_notes",components:"toggle_spell_components_notes",duration:"toggle_spell_duration_notes",save:"toggle_spell_saving_throw_notes",sr:"toggle_spell_sr_notes",range:"toggle_spell_range_notes",targets:"toggle_spell_targets_notes",description:"toggle_spell_description_notes",spellnotes:"toggle_spells_notes",spell_fail_check:"toggle_spell_spell_fail_check","damage-macro-text":"toggle_spell_damage_notes","damage-type":"toggle_spell_damage_notes"},T={spellOptionEventsPlayer:["school","cast-time","components","duration","save","sr","range","targets","damage-macro-text","damage-type","sp-mod"]};t.recalculate=f.default.callback(function(e){o(e)});c()},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function i(e){return N.default.isUndefined(e)||""===e?0:parseInt(e)||0}function l(e,t){return Math.max(0,Math.floor((e+4-t)/4))}function s(e,t){return N.default.map(e,function(e){return e[t]}).join(", ")}function o(e){switch(e.toLowerCase()){case"colossal":return-8;case"gargantuan":return-4;case"huge":return-2;case"large":return-1;case"small":return 1;case"tiny":return 2;case"diminutive":return 4;case"fine":return 8;default:return 0}}function c(e){return N.default.isUndefined(e)?[]:Array.isArray(e)?e:new Array(e)}function u(e,t){e.init=i(t._total),e["init-misc"]=i(t._total)-i(t._attrtext),e["init-ability"]=t._attrname.substr(0,3).toUpperCase()+"-mod",e["init-ability-mod"]=i(t._attrtext),e.init_notes=t.situationalmodifiers._text}function d(e,t){t.forEach(function(t){var a=t._name.substr(0,3).toUpperCase(),n=i(t.attrvalue._base),r=i(t.attrvalue._modified)-n;e[a+"-base"]=n,e[a]=i(t.attrvalue._modified),e[a+"-mod"]=i(t.attrbonus._modified),r>0?(e[a+"-enhance"]=r,e[a]=i(t.attrvalue._modified)):(e[a+"-penalty"]=r,e[a]=n)})}function p(e,t){var a=0,n=t.allsaves.situationalmodifiers._text;for(a=0;a1?e[r+"_"+o+"_name"]=t._name+" x"+s:e[r+"_"+o+"_name"]=t._name,e[r+"_"+o+"_description"]=t.description,e[r+"_"+o+"_rule_category"]="feats",i.push(t._name),N.default.contains(Object.keys(n),t._name)&&(e[r+"_"+o+"_max-calculation"]=n[t._name]._max)}})}function h(e){return e.toLowerCase().indexOf("shield")!==-1||e.toLowerCase().indexOf("buckler")!==-1||e.toLowerCase().indexOf("klar")!==-1}function y(e,t,a,n,r){var l="repeating_item";getSectionIDs(l,function(s){var o=N.default.union(N.default.map(s,function(e){return l+"_"+e+"_name"}),["shield3-acp","shield3-spell-fail"]);getAttrs(o,function(s){var o=i(s["shield3-acp"]),u=i(s["shield3-spell-fail"]);N.default.isUndefined(s["shield3-acp"])||delete s["shield3-acp"],N.default.isUndefined(s["shield3-spell-fail"])||delete s["shield3-spell-fail"];var d=N.default.object(N.default.map(s,function(e,t){return[t.substring(l.length+1,t.indexOf("_name")),e]})),p=[],f={},_=N.default.map(n,function(e){return e._name}),g=N.default.map(r,function(e){return e._name}),b=["mithral","adamantine","angelskin","darkleaf","darkwood","dragonhide","eel","fire-forged","frost-forged","greenwood","paueliel"];N.default.each(e,function(e){var s=m(d,e._name);N.default.isUndefined(d[s])||delete d[s],p.push(e._name),l="repeating_item_"+s,f[l+"_name"]=e._name,f[l+"_item-weight"]=e.weight._value,f[l+"_value"]=parseFloat(e.cost._value)/parseInt(e._quantity),f[l+"_description"]=e.description,N.default.contains(Object.keys(t),e._name)&&"1"===e._quantity&&"1"!==t[e._name]._max?(f[l+"_qty"]=t[e._name]._left,f[l+"_qty_max"]=t[e._name]._max):f[l+"_qty"]=e._quantity,N.default.isUndefined(e.itempower)||N.default.each(c(e.itempower),function(e){p.push(e._name)});var y=e._name;if(e._name.toLowerCase().indexOf("shield")!==-1){var v;v=e._name.toLowerCase().indexOf(!0)?"heavy shield bash":"light shield bash",y=N.default.find(g,function(e){return e.toLowerCase().indexOf(v)!==-1})||e._name}if(N.default.contains(g,y)){var k=r[N.default.indexOf(g,y)];if("As Spell"!=k._damage){if(f[l+"_item-wpenhance"]=i(k._name.match(/\+\d+/)),N.default.isUndefined(k._typetext)||(f[l+"_item-dmg-type"]=k._typetext),(y.toLowerCase().indexOf("masterwork")!==-1||N.default.intersection(b,e._name.toLowerCase().split(" ")).length>0)&&(f[l+"_item-masterwork"]=1),!N.default.isUndefined(k._damage)){var w=k._damage.match(/\d+d\d+/);w.length>0&&(f[l+"_item-damage-dice-num"]=i(w[0].split("d")[0]),f[l+"_item-damage-die"]=i(w[0].split("d")[1]))}if(!N.default.isUndefined(k._crit)){var A=k._crit.split("/");A.length>1?f[l+"_item-crit-target"]=i(A[0].match(/\d+/)[0]):f[l+"_item-crit-target"]=20,f[l+"_item-crit-multiplier"]=i(A[A.length-1].replace(/\D/g,""))}N.default.isUndefined(k.rangedattack)||N.default.isUndefined(k.rangedattack._rangeincvalue)||(f[l+"_item-range"]=i(k.rangedattack._rangeincvalue))}}var C=e._name;if(e._name.toLowerCase().indexOf("klar")!==-1&&(C=N.default.find(_,function(e){return e.toLowerCase().indexOf("klar")!==-1})||e._name),N.default.contains(_,C)){var I=n[N.default.indexOf(_,C)];if(h(e._name)){var x=i(C.match(/\+\d+/)),P=i(I._ac)-x;f[l+"_item-acbonus"]=P,f[l+"_item-acenhance"]=x,N.default.isUndefined(I._equipped)||"yes"!==I._equipped||(f[l+"_item-acp"]=o,f[l+"_item-spell-fail"]=u,f.shield3=e._name,f["shield3-acbonus"]=P,f["shield3-enhance"]=x)}else{var x=i(e._name.match(/\+\d+/)),P=i(I._ac)-x;f[l+"_item-acbonus"]=P,f[l+"_item-acenhance"]=x,N.default.isUndefined(I._equipped)||"yes"!==I._equipped||(f["armor3-acp"]=f[l+"_item-acp"]=a.ACP-o,f["armor3-spell-fail"]=f[l+"_item-spell-fail"]=a.spellfail-u,99==a.maxDex?f["armor3-max-dex"]=f[l+"_item-max-dex"]="":f["armor3-max-dex"]=f[l+"_item-max-dex"]=a.maxDex,f.armor3=e._name,f["armor3-acbonus"]=P,f["armor3-enhance"]=x)}}}),setAttrs(f,{silent:!0})})})}function v(e,t,a,n){var r="repeating_ability";t.forEach(function(t){var i=f(a,t._name);N.default.isUndefined(a[i])||delete a[i],e[r+"_"+i+"_name"]=t._name,e[r+"_"+i+"_description"]=t.description,e[r+"_"+i+"_rule_category"]="traits",N.default.contains(Object.keys(n),t._name)&&(e[r+"_"+i+"_max-calculation"]=n[t._name]._max)})}function k(e,t,a,n){var r="repeating_ability";t.forEach(function(t){var i=f(a,t._name);N.default.isUndefined(a[i])||delete a[i],e[r+"_"+i+"_name"]=t._name,e[r+"_"+i+"_description"]=t.description,e[r+"_"+i+"_rule_category"]="spell-like-abilities",e[r+"_"+i+"_ability_type"]="Sp",N.default.contains(Object.keys(n),t._name)&&(e[r+"_"+i+"_max-calculation"]=n[t._name]._max)})}function w(e,t,a,n,r){var i=N.default.map(a,function(e){return e._name}),l=[];N.default.each(a,function(a){var s,o=a._name,u="repeating_ability",d=-1,p=o.replace(/ x[0-9]+$/,"").replace(/\(([^\)]+)\)/g,"").trim();if(!N.default.contains(l,p)){var f=N.default.filter(i,function(e){return e.replace(/\(([^\)]+)\)/g,"").trim()===p});if(f.length>1){l.push(p);var m=N.default.map(f,function(e){return e.match(/\(([^\)]+)\)/)[0].replace("(","").replace(")","")});o=o.replace(/\(([^\)]+)\)/,"("+N.default.uniq(m).join(", ")+")")}s=g(t,o),u="repeating_ability_"+s,N.default.isUndefined(t[s])?a.specsource?e[u+"_rule_category"]="class-features":e[u+"_rule_category"]="racial-traits":delete t[s],d=S(c(a.specsource),n),e[u+"_name"]=o,e[u+"_description"]=a.description,d!==-1&&(e[u+"_CL-basis"]="@{class-"+d+"-level}",e[u+"_class-name"]=Object.keys(n)[d]),N.default.contains(Object.keys(r),a._name)&&(e[u+"_max-calculation"]=r[a._name]._max),N.default.isUndefined(a._type)||(e[u+"_ability_type"]=a._type.substr(0,2))}})}function A(e,t,a){for(var n,r=new Object,i=N.default.without(N.default.map(a.split(";")[a.split(";").length-1].trim().split(/[\+\-]/),function(e){var t=e.split("d");return t.length<2?null:{dice:t[0],die:t[1]}}),null),l=0;l=5)return;l>0&&(e["class"+l+"_show"]=1),r[n._name.replace(/\(([^\)]+)\)/g,"").replace("(","").replace(")","").trim()]=n,e["class-"+l+"-name"]=n._name,e["class-"+l+"-level"]=n._level;var s=N.default.find(i,function(e){return e.dice==n._level});N.default.isUndefined(s)||(e["class-"+l+"-hd"]=s.die,i=N.default.without(i,s)),l++}return i.length>0&&(e["npc-hd"]=i[0].die),r}function C(e,t,a,n){var r,s,o,u,d,p,f,m=new Object,_=0,g=0;for(r=0;r=3)return m;var h=b._name.replace(/\(([^\)]+)\)/g,"").replace("(","").replace(")","").trim(),y=N.default.indexOf(Object.keys(a),N.default.find(Object.keys(a),function(e){return e.toLowerCase().indexOf(h.toLowerCase())!==-1}));if(y!==-1){if(d=i(a[h]._casterlevel),e["spellclass-"+g]=y,e["spellclass-"+g+"-level-misc"]=d-i(a[h]._level),e["spellclass-"+g+"-level"]=i(a[h]._level),e["spellclass-"+g+"-level-total"]=d,e["spellclass-"+g+"-name"]=a[h]._name.replace(/\(.*\)/g,"").trim(),e["spellclass-"+g+"-exists"]=1,e["spellclass-"+g+"-close"]=25+5*Math.floor(d/2),e["spellclass-"+g+"-medium"]=100+10*d,e["spellclass-"+g+"-long"]=400+40*d,N.default.isUndefined(a[h].arcanespellfailure)||(e["armor3-spell-fail"]=i(a[h].arcanespellfailure._value)),!N.default.isUndefined(a[h]._basespelldc))for(_=i(a[h]._basespelldc)-10,s=3;s0&&(o-=l(_,u)),o<0&&(o=""),e["spellclass-"+g+"-level-"+u+"-class"]=o}e["spellclass-"+g+"-level-1-bonus"]=l(_,1),e["spellclass-"+g+"-level-2-bonus"]=l(_,2),e["spellclass-"+g+"-level-3-bonus"]=l(_,3),e["spellclass-"+g+"-level-4-bonus"]=l(_,4),e["spellclass-"+g+"-level-5-bonus"]=l(_,5),e["spellclass-"+g+"-level-6-bonus"]=l(_,6),e["spellclass-"+g+"-level-7-bonus"]=l(_,7),e["spellclass-"+g+"-level-8-bonus"]=l(_,8),e["spellclass-"+g+"-level-9-bonus"]=l(_,9)}m[h]=a[Object.keys(a)[y]],g++}}return g>1&&(e.spellclasses_multiclassed=1),m}function I(e,t){var a=["Abjurer","Conjurer","Diviner","Enchanter","Evoker","Illusionist","Necromancer","Transmuter"],n="repeating_spells";getSectionIDs(n,function(r){var l=N.default.union(N.default.map(r,function(e){return n+"_"+e+"_name"}),N.default.map(r,function(e){return n+"_"+e+"_spellclass_number"}));getAttrs(l,function(r){var l={},s=Object.keys(r);N.default.each(s,function(e){var t;e.indexOf("_name")!==-1&&(t=e.substring(n.length+1,e.indexOf("_name")),N.default.isUndefined(l[t])&&(l[t]={rowID:t}),l[t].name=r[e]),e.indexOf("_spellclass_number")!==-1&&(t=e.substring(n.length+1,e.indexOf("_spellclass_number")),N.default.isUndefined(l[t])&&(l[t]={rowID:t}),l[t].spellclass=r[e])});var o=Object.keys(t),c={};N.default.each(e,function(e){var r,s,u,d,p,f;switch(f=i(e._level),n="repeating_spells_",d=e._name.replace(/\(x\d+\)/,"").trim(),""===e._class?(s=0,u=o[0]):(u=e._class,s=N.default.indexOf(o,u),s==-1&&(u=N.default.intersection(o,a)[0],s=N.default.indexOf(o,u))),r=_(l,d,s),N.default.isUndefined(r)&&(console.log("Undefined spell row ID!"),console.log(e)),n+=r,c[n+"_name"]=d,c[n+"_spell_level_r"]=c[n+"_spell_level"]=f,c[n+"_spellclass_number"]=s,c[n+"_spellclass"]=u,c[n+"_components"]=e._componenttext.replace("Divine Focus","DF").replace("Focus","F").replace("Material","M").replace("Verbal","V").replace("Somatic","S").replace(" or ","/"),c[n+"_duration"]=e._duration,c[n+"_save"]=e._save.replace(/DC \d+/,"").trim(),c[n+"_savedc"]=i(e._dc),c[n+"_cast-time"]=e._casttime,c[n+"_DC_misc"]=i(e._dc)-i(t[""!==u?u:Object.keys(t)[0]]._basespelldc)-f,c[n+"_CL_misc"]=i(e._casterlevel)-i(t[""!==u?u:Object.keys(t)[0]]._casterlevel),c[n+"_casterlevel"]=e._casterlevel,e._resist.toLowerCase().indexOf("yes")!==-1?e._resist.toLowerCase().indexOf("harmless")!==-1?c[n+"_sr"]="Yes (Harmless)":e._resist.toLowerCase().indexOf("object")!==-1?c[n+"_sr"]="Yes (Object)":c[n+"_sr"]="Yes":e._resist.toLowerCase().indexOf("no")!==-1?c[n+"_sr"]="No":c[n+"_sr"]="",e._range.toLowerCase()){case"close (25 + 5 ft./2 levels)":c[n+"_range_pick"]="close";break;case"medium (100 + 10 ft./level)":c[n+"_range_pick"]="medium";break;case"long (400 + 40 ft./level)":c[n+"_range_pick"]="long";break;case"touch":case"personal":c[n+"_range_pick"]=e._range.toLowerCase();break;default:c[n+"_range_pick"]="number",c[n+"_range"]=e._range}""!==e._area?c[n+"_targets"]=e._area:""!==e._effect?c[n+"_targets"]=e._effect:c[n+"_targets"]=e._target,p=e._schooltext,""!==e._subschooltext&&(p=p+" ("+e._subschooltext+")"),""!==e._descriptortext&&(p=p+" ["+e._descriptortext+"]"),c[n+"_school"]=p,c[n+"_description"]=e.description}),setAttrs(c,{silent:!0},function(){U.resetOptions(),G.resetCommandMacro()})})})}function x(e){for(var t=e.match(/\d+d\d/g),a=0,n=0;n6?e.custom_skill_num_show=10:y>3?e.custom_skill_num_show=6:y>2?e.custom_skill_num_show=3:y>2?e.custom_skill_num_show=2:e.custom_skill_num_show=1,_>6?e.misc_skill_num_show=10:_>3?e.misc_skill_num_show=6:_>2?e.misc_skill_num_show=3:_>2?e.misc_skill_num_show=2:e.misc_skill_num_show=1}function E(e,t){for(var a=0,n=0;n0&&(t.add_race=1,t["npc-hd-num"]=z);var O=o(e.size._name);if(t.size=O,t.default_char_size=O,t["CMD-size"]=O*-1,e.skills.skill=c(e.skills.skill),T(t,e.skills.skill,O,m),N.default.isUndefined(e.senses.special)||(e.senses.special=c(e.senses.special),t.vision=s(e.senses.special,"_shortname")),N.default.isUndefined(e.damagereduction.special)||(e.damagereduction.special=c(e.damagereduction.special),t.DR=s(e.damagereduction.special,"_shortname")),N.default.isUndefined(e.resistances.special)||(e.resistances.special=c(e.resistances.special),t.resistances=s(e.resistances.special,"_shortname")),N.default.isUndefined(e.immunities.special)||(e.immunities.special=c(e.immunities.special),t.immunities=s(e.immunities.special,"_shortname")),N.default.isUndefined(e.weaknesses.special)||(e.weaknesses.special=c(e.weaknesses.special),t.weaknesses=s(e.weaknesses.special,"_shortname")),N.default.isUndefined(e.languages.language)||(e.languages.language=c(e.languages.language),t.languages=s(e.languages.language,"_name")),t["npc-type"]=c(e.types.type)[0]._name,N.default.isUndefined(e.subtypes.subtype)||(t["npc-type"]=t["npc-type"]+" ("+s(c(e.subtypes.subtype),"_name")+")"),t.character_name=e._name,t["player-name"]=e._playername,t.deity=e.deity._name,t.race=e.race._racetext.substr(0,1).toUpperCase()+e.race._racetext.substr(1,1e3),t.alignment=e.alignment._name,t.gender=e.personal._gender,t.age=e.personal._age,t.height=e.personal.charheight._text,t.weight=e.personal.charweight._text,t.hair=e.personal._hair,t.eyes=e.personal._eyes,t.skin=e.personal._skin,t.character_description=e.personal.description,t["npc-cr"]=e.challengerating._text.replace("CR ",""),t["npc-xp"]=e.xpaward._value,t["speed-base"]=t["speed-modified"]=i(e.movement.speed._value),t.cmb=i(e.maneuvers._total),t.cmd=i(e.maneuvers._cmd),t["ff-cmd"]=i(e.maneuvers._cmdflatfooted),t["cmd-str"]=t["STR-mod"],t["cmd-misc"]=t.cmd-10-t["AC-ability-mod"]-t["cmd-str"]-t["CMD-size"]-t["AC-dodge"]-t["AC-deflect"]-t.bab,t["attk-melee"]=i(e.attack._meleeattack.split("/")[0]),t["attk-ranged"]=t["attk-melee2"]=i(e.attack._rangedattack.split("/")[0]),N.default.isUndefined(e.favoredclasses.favoredclass)||(e.favoredclasses.favoredclass=c(e.favoredclasses.favoredclass),t["class-favored"]=s(e.favoredclasses.favoredclass,"_name")),t["other-PP"]=e.money._pp,t["other-GP"]=e.money._gp,t["other-SP"]=e.money._sp,t["other-CP"]=e.money._cp,t["load-str-bonus"]=i(e.encumbrance._encumstr)-t.STR,t["load-light"]=e.encumbrance._light,t["load-medium"]=e.encumbrance._medium,t["load-heavy"]=t["lift-above-head"]=e.encumbrance._heavy,t["load-max"]=t["lift-off-ground"]=2*i(e.encumbrance._heavy),t["lift-drag-and-push"]=5*i(e.encumbrance._heavy),N.default.isUndefined(e.pathfindersociety)||(t.set_pfs=1,q.setToPFS(null)),!N.default.isUndefined(e.factions.faction)){var W=N.default.find(c(e.factions.faction),function(e){return N.default.isUndefined(e._retired)});N.default.isUndefined(W)||(t.prestige=W._cpa,t.fame=W._tpa,t.faction_notes=W._name)}setAttrs(t,{silent:!0})}function R(){on("change:herolab_import",function(e){z.default.debug("caught "+e.sourceAttribute+" event"+e.sourceType),"player"===e.sourceType&&getAttrs(["herolab_import"],function(e){var t;if(!N.default.isUndefined(e.herolab_import))try{t=JSON.parse(e.herolab_import),D(N.default.isArray(t.document.public.character)?t.document.public.character[0]:t.document.public.character),setAttrs({herolab_import:""},{silent:!0})}catch(e){console.log(e),setAttrs({herolab_import:e.message},{silent:!0})}})})}Object.defineProperty(t,"__esModule",{value:!0}),t.parseNum=i,t.bonusSpellSlots=l,t.buildList=s,t.getSizeMod=o,t.arrayify=c,t.importInit=u,t.importAbilityScores=d,t.importSaves=p,t.getOrMakeRowID=f,t.getOrMakeItemRowID=m,t.getOrMakeSpellRowID=_,t.getOrMakeClassRowID=g,t.importFeats=b,t.nameIsShield=h,t.importItems=y,t.importTraits=v,t.importSLAs=k,t.importFeatures=w,t.importClasses=A,t.importSpellClasses=C,t.importSpells=I,t.calcHitDice=x,t.buildArchetypeArray=P,t.getClassSource=S,t.importSkills=T,t.importPenalties=E,t.importAC=M,t.importCharacter=D,t.registerEventHandlers=R;var F=a(2),N=r(F),L=a(1),z=r(L),O=a(0),W=a(19),B=(n(W),a(17)),q=n(B),H=a(31),U=n(H),j=a(18),G=n(j);R(),O.PFConsole.log(" HLImport module loaded "),O.PFLog.modulecount++},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function i(e){var t,a;return e=oe.convertDashToMinus(e),e=Q.trimBoth(e),/^Init/i.test(e)||/^[\+\-]{0,1}\d+/.test(e)?t=oe.getIntFromString(e,!0):null!==(a=e.match(/[\+\-]{0,1}\d+$/))?(e=e.slice(a.index),"+"!==e[0]&&(e="-"+e),t=parseInt(e.match(/[\-\+]\d+$/),10)||0):t=oe.getIntFromString(e,!0),t}function l(e){Z.default.debug("buildImportantFeatObj is ",e);var t=K.default.chain(e).filter(function(e){return!!e}).filter(function(e){return re.default.importantFeatRegExp.test(e)}).map(function(e){return e=Q.trimBoth(e),/\b[A-Z]$/i.test(e)&&(e=e.slice(0,-2),e=Q.trimBoth(e)),e}).reduce(function(e,t){var a,n="",r={},i={},l={},s=[],o="";try{if(t.indexOf("(")>=0&&(a=/(.*?)\((.*)\)/.exec(t),Z.default.debug("looking at "+t+", split into ",a),t=a[1],n=a[2],t=Q.trimBoth(t),n=Q.trimBoth(n)),t=t.replace(/\s/g,"").toLowerCase(),"improvedcritical"===t||"criticalmastery"===t)return e;e[t]=1,t.indexOf("critical")>0?(n=t,t="criticaldamage",l=e.criticaldamage||{},l[n]=1,e.criticaldamage=l):t.indexOf("skillfocus")>=0?(o=n.replace(" ","-"),o&&(o=o[0].toUpperCase()+o.slice(1),s=e.skillfocuses||[],s.push(o),e.skillfocuses=s)):"weaponfinesse"!==t&&"improvedcritical"!==t||(r=e.attacks||{},i=r[n]||{},i[t]=1,r[n]=i,e.attacks=r)}catch(a){Z.default.error("buildImportantFeatObj error:",a),e[t]=1}finally{return e}},{}).value();return Z.default.debug("returning important feats:",t),t}function s(e,t){var a,n={hp:0,hdie1:0,hdice1:0,basehp:0,misc:0,heal:""},r=0,i=0;try{t=t||0,/^hp/i.test(e)&&(e=e.slice(2)),e=oe.replaceMissingNegatives_BadDice(e),e=oe.convertDashToMinus(e),e=e.replace("plus","+"),n.hp=parseInt(e,10)||0,e=e.slice(e.indexOf("(")+1),a=oe.getDiceDieFromString(e,!0),0!==a.dice&&(n.hdice1=a.dice,n.hdie1=a.die,r=t*n.hdice1,n.misc=a.plus-r,n.basehp=oe.getAvgHP(n.hdice1,n.hdie1),i=n.basehp+a.plus,n.hp<=0?(Z.default.warn("parseNPChp, hp is null! why!? str is:"+e),n=i):i!==n.hp&&(Z.default.warn("parseNPChp, hp not adding right, should be:"+n.hp+" but getNPCHP returns "+i,n),n.misc+=n.hp-i),e=e.slice(a.spaces+1)),e&&(e=Q.trimBoth(e.replace(/[\);]/g,"")),n.heal=e||"")}catch(e){Z.default.error("parseNPChp",e)}finally{return n}}function o(e,t,a,n){var r,i=0,l="",s={ac:10,touch:10,ff:10,armor:0,shield:0,deflect:0,dex:0,dodge:0,natural:0,misc:0,note:"",size:0,altability:"",acbuff:0,uncanny:0,cmd:10,notes:"",cmdnotes:""};a=a||0,n=n||0;try{/^ac\s/i.test(e)&&(e=e.slice(3)),s.ac=parseInt(e,10)||0,r=t.match(/(\d+)/),r&&r[1]&&(s.cmd=parseInt(r[1],10)||0,l=t.slice(r.index+r[0].length),l&&(l=Q.trimBoth(l),s.cmdnotes=l)),r=e.match(/Touch\s*?(\d+)/i),r&&r[1]&&(s.touch=parseInt(r[1],10)),r=e.match(/Flat\-footed\s*?(\d+)/i),r&&r[1]&&(s.ff=parseInt(r[1],10)),r=e.match(/([+\-]??\d+)\s*?Deflect[,\i\s]/i),r&&r[1]&&(s.deflect=parseInt(r[1],10)),r=e.match(/([+\-]??\d+)\s*?Nat[,u\s]/i),r&&r[1]&&(s.natural=parseInt(r[1],10)),r=e.match(/([+\-]??\d+)\s*?Dodge/i),r&&r[1]&&(s.dodge=parseInt(r[1],10)),r=e.match(/([+\-]??\d+)\s*?Size/i),r&&r[1]&&(s.size=parseInt(r[1],10)),s.size!==n&&(s.size=n),r=e.match(/([+\-]??\d+)\s*?armor/i),r&&r[1]&&(s.armor=parseInt(r[1],10)),r=e.match(/([+\-]??\d+)\s*?shield/i),r&&r[1]&&(s.shield=parseInt(r[1],10)),r=e.match(/\)\s*?(.*)/),r&&r[1]&&(s.note=r[1]),r=e.match(/([+\-]??\d+)\s*?Dex/i),r&&r[1]?(s.dex=parseInt(r[1],10)||0,a!==s.dex&&(s.dex=a)):(r=e.match(/([+\-]??\d+)\s*?(Wis|Int|Str|Con|Cha)/i),r&&r[1]&&r[2]&&(s.dex=parseInt(r[1],10)||0,s.altability=r[2].toUppercase())),i=s.dodge+s.dex+s.deflect+s.size+10,s.touch!==i&&(s.misc=s.touch-i),i=s.armor+s.shield+s.dodge+s.dex+s.natural+s.deflect+s.size+s.misc+10,s.ac!==i&&(s.acbuff=s.ac-i),s.ac===s.ff&&(s.dex>0||s.dodge>0)&&(s.uncanny=1)}catch(e){Z.default.error("parseNPCAC",e)}finally{return s}}function c(e){var t,a=e.split(/,\s*/);return t=K.default.reduce(a,function(e,t,a){var n,r=0;try{0===a?(r=parseInt(t.match(/(\d+)/)[1],10)||0,r&&(e.land=r)):(n=t.match(/([\w]+)\s*(\d+)/),n&&(r=parseInt(n[2],10)||0,r&&(e[n[1].toLowerCase()]=r,/fly/i.test(n[1])&&(n=t.match(/\(([\w]+)\)/),n&&n[1].length>0&&(e.flyability=n[1])))))}catch(e){Z.default.error("parseSped",e)}finally{return e}},{})}function u(e){var t=e.match(/^\s*([^\(]+)/),a="",n="",r="";return t&&t[1]&&(a=t[1],a=Q.trimBoth(a),n=a.replace(/\d+d\d+|\-\d+|\+|\d+|\//g,""),n=Q.trimBoth(n),n=n[0].toUpperCase()+n.slice(1),r=n.toLowerCase(),r=r.replace(/ray|cone|aura|mwk/gi,""),r=r.replace(/\s+/g,"")),{name:a,basename:r,abilityName:n}}function d(e){var t,a="",n=[],r=[],i={reach:5,reachNotes:"",reachExceptions:[]};if(!e)return i;try{t=e.match(/reach/i),t&&(e=e.slice(t.index+t[0].length)),e=Q.trimBoth(e),e=oe.convertDashToMinus(e),e=e.replace("21/2","2-1/2"),e=e.replace("2.5","2-1/2"),"2-1/2"===e.slice(0,5)?(i.reach=2.5,a=e.slice(5)):(i.reach=parseInt(e,10)||0,a=oe.getNoteAfterNumber(e)),a&&a.indexOf("(")>=0&&(i.reachNotes=a,a=Q.trimBoth(a.replace("(","").replace(")","").replace(/with\s/gi,"").replace(";","").replace(/ft[\.\s]*/gi,"").replace(/,\s*/g,",")),a&&(n=a.split(","),r=K.default.reduce(n,function(t,a){var n=[];try{"2-1/2"===a.slice(0,5)?(n.push(Q.trimBoth(a.slice(5))),n[0]&&(n.push(2.5),t.push(n))):(n.push(oe.getNoteAfterNumber(e)||""),n[0]&&(n.push(parseInt(e,10)||0),t.push(n)))}catch(e){Z.default.error("parseReach inner error erri:",e)}finally{return t}},[]),r&&r.length>0&&(i.reachExceptions=r)))}catch(e){Z.default.error("parseReach error:",e)}finally{return i}}function p(e){var t,a,n=e.toLowerCase().replace(/\s/g,"");try{a=K.default.find(re.default.creatureTypeClassSkills,function(e,t){var a=new RegExp(t);return a.test(n)}),a&&a.length>0&&(t=a),a=K.default.find(re.default.creatureSubtypeClassSkills,function(e,t){var a=new RegExp(t);return a.test(n)}),a&&(t=t?t.concat(a):a)}catch(e){Z.default.error("parseCreatureClassSkills",e)}finally{return t?t:[]}}function f(e){var t,a;try{if(a=K.default.filter(e,function(e){return"natural"===e.type}),K.default.size(a)<=0)return e;1===K.default.size(a)?(a[0].naturaltype="primary",(a[0].iter&&1===a[0].iter.length||isNaN(parseInt(a[0].iter,10)))&&(a[0].dmgMult=1.5)):(t=K.default.groupBy(a,function(e){return re.default.primaryNaturalAttacksRegExp.exec(e.name)}),1===K.default.size(t)?K.default.each(a,function(e){e.naturaltype="primary"}):K.default.each(a,function(e){re.default.primaryNaturalAttacksRegExp.test(e.name)?e.naturaltype="primary":e.naturaltype="secondary"}))}catch(e){Z.default.error("assignPrimarySecondary",e)}finally{return e}}function m(e,t,a,n,r){var i,l,s,o,c,d,p="",f=0,m="",_=e,g=0,b=0,h="",y=0,v={enh:0,mwk:0,name:"",basename:"",atktype:"melee",type:"",range:"",countFullBAB:1,iter:[],dmgdice:0,dmgdie:0,dmgtype:"",crit:20,critmult:2,dmgbonus:0,plus:"",plusamount:"",plustype:"",note:""};try{if(a&&(v.group="Full attack "+n),c=u(e),v.name+=c.name,v.basename=c.basename,e=Q.trimBoth(e),i=e.match(/^(\d+)\s*/),i&&i[1]&&(v.countFullBAB=parseInt(i[1],10)||1,e=e.slice(i[0].length)),i=e.match(/^([+\-]\d+|mwk)\s*/i),i&&("mwk"===i[1].toLowerCase()?v.mwk=1:v.enh=parseInt(i[1],10)||0,v.type="weapon",e=e.slice(i[0].length)),re.default.cmbPlusStrsrch.test(v.basename)?(v.atktype="cmb",v.vs="cmd",v.type="natural",b=1):"melee"===t&&re.default.combatManeuversRegExp.test(v.basename)?(v.atktype="cmb",v.vs="cmd"):re.default.cmbMonsterSrch.test(v.basename)?(v.atktype="cmb",v.type="natural",v.vs="cmd"):/web/i.test(v.basename)?(v.atktype="ranged",v.type="special",v.vs="touch",v.range=10):/touch/i.test(v.basename)?(/range/i.test(v.basename)?v.atktype="ranged":v.atktype="melee",v.vs="touch"):/special/i.test(t)?(v.atktype="special",v.type="special"):v.atktype=t,v.type||(re.default.naturalAttackRegExp.test(v.basename)?v.type="natural":re.default.unarmedAttacksRegExp.test(p)?v.type="unarmed":v.type="weapon"),v.vs||/touch|web/i.test(v.name)&&(v.vs="touch",/ranged|web/i.test(v.name)&&(v.atktype="ranged",/web/i.test(v.basename)&&(v.range=10))),i=e.match(/\s*([^0-9\/\+\-\(]+)/),i&&i[0]&&(i.index&&(y=i.index),e=e.slice(y+i[0].length)),e)for(o=e.split(/\(|\)/),l=o[0].split(/\//),/\d/.test(l[0])?v.iter=K.default.map(l,function(e,t){return/^[+\-]/.test(e)?parseInt(e,10)||0:-1*(parseInt(e,10)||0)}):"cmb"===v.atktype&&(v.iter[0]=0),o[1]&&(d=o[1].split(/,\s*/),h=K.default.reduce(d,function(e,t){return/ft\./i.test(t)?v.range=t:/D[Cc]\s\d+/.test(t)?(i=t.match(/(D[Cc]\s\d+)/),v.DC=i[1].toUpperCase(),v.DCability=re.default.specialAttackDCAbilityBase[v.basename]||"CON",r&&"CON"===v.DCability&&(v.DCability="CHA"),v.DCEquation=oe.getDCString(v.DCability,"npc-hd-num",r),i=t.match(/(Will|Fort|Ref|Fortitude|Reflex)\s*D[Cc]\s*\d+([^),.])/i),i?(i[1]&&(h=i[1][0].toUpperCase()+i[1].slice(1).toLowerCase(),v.save=h),i[2]&&(v.save+=" "+i[2])):(i=t.match(/(Will|Fort|Ref|Fortitude|Reflex)/i),i&&i[1]&&(h=i[1][0].toUpperCase()+i[1].slice(1).toLowerCase(),v.save=h))):/freq|day|constant|at.will/i.test(t)?v.frequency=t:/AC|hp/.test(t)||!/\d|plus/.test(t)?v.note+=t+", ":e+=t+" ",e},""),h=Q.trimBoth(h),s=oe.getDiceDieFromString(h,!0,!0),s&&s.dice&&(v.dmgdice=s.dice,v.dmgdie=s.die,v.dmgbonus=s.plus,m=h.slice(s.spaces)),m=Q.trimBoth(m),m&&(b&&(i=m.match(/\sac\s\d+/i),i&&(v.note+=m.slice(i.index),m=Q.trimBoth(m.slice(0,i.index)))),i=m.match(/plus(.*)/i),i&&(h=Q.trimBoth(i[1]),m=Q.trimBoth(m.slice(0,i.index)),/\d+d\d+/i.test(h)?(i=h.match(/(\d+d\d+)\s*([\w\s]*)/),v.plusamount=i[1],i[2]&&(v.plustype=i[2].replace(/^\s+|\s+$/g,""))):v.plus=h),m&&(i=m.match(/\s|\//g),i&&(g=i.length-1),i=m.match(/(x\d+)|(\/\d+\-??20)|([+\-]??\d+)/gi),K.default.each(i,function(e,t){m=m.slice(e.length),/^[+\-]/.test(e)?v.dmgbonus=parseInt(e,10)||0:/^[x\u00d7]\d+/.test(e)?(e=e.slice(1),v.critmult=parseInt(e,10)||2):/^\d+/.test(e)?v.dmgbonus=-1*(parseInt(e,10)||0):e.indexOf("20")>=0&&(e=e.replace("20","").replace("-","").replace("/",""),e&&e.length>0&&(v.crit=parseInt(e,10)||20))}),m=m.slice(g)),m&&m.length>0&&(v.dmgtype+=m)),"cmb"===v.atktype||v.iter[0]||!v.dmgtype||!v.dmgdice||!v.dmgdie||v.plusamount||v.plustype||/bludg|slash|pierc/i.test(v.dmgtype)||(v.plustype=v.dmgtype,h=String(v.dmgdice)+"d"+String(v.dmgdie),v.dmgbonus&&(h+=v.dmgbonus>0?"+"+v.dmgbonus:"-"+Math.abs(v.dmgbonus)),v.plusamount=h,v.dmgtype="",v.dmgdice=0,v.dmgdie=0)),f=2;f1&&(i=!0),r=K.default.reduce(n,function(e,n,r){var l,s;try{l=Q.splitByCommaIgnoreParens(n),l.length>1&&(i=!0),s=K.default.reduce(l,function(e,n){var l;try{l=m(n,t,i,r,a),l&&e.push(l)}catch(e){Z.default.error("parseAttacks",e)}finally{return e}},[])}catch(e){Z.default.error("parseAttacks",e)}finally{return e.concat(s)}},[])}catch(e){Z.default.error("parseAttacks",e)}return r}function g(e){var t,a=K.default.map(me.abilities,function(e){return e.toLowerCase()}),n=K.default.map(pe.allCoreSkills,function(e){return e.toLowerCase()}),r=K.default.map(pe.skillsWithSubSkills,function(e){return e.toLowerCase()}),i=pe.skillsWithSpaces,l=[],s="",o="",c="",u=!1,d="",p={},f=[],m={},_={skillmods:p,skillnotes:f,abilitymods:m};if(!e)return _;if(t=e.split(";"),t.length>1&&(e=t[0],s=t[1]),s){try{o=s.toLowerCase(),c=K.default.find(a,function(e){return o.indexOf(e)>=0}),c&&(d=K.default.find(n,function(e){return o.indexOf(e)>=0}),d&&(m[d[0].toUpperCase()+d.slice(1)]=c.toLowerCase(),u=!0))}catch(e){Z.default.error("parseSkillRacialBonuses inner",e)}u||f.push(s)}return l=e.split(/,\s*/),K.default.each(l,function(e){var l,s,o=e.toLowerCase(),u=0,_="",g="",b="",h=0,y="";try{if(s=e.match(/\s*([+\-]\d+)\s*(?:on|to)?\s*([\w]+)\s*([\w\s]+)?\s*(\([^)]*\))?/),!s)return d=K.default.find(n,function(e){return o.indexOf(e)>=0}),void(d?(c=K.default.find(a,function(e){return o.indexOf(e)>=0}),c?m[d.toLowerCase()]=c:f.push(e)):f.push(e));if(b=s[3],u=parseInt(s[1],10)||0,_=s[2],!K.default.contains(n,_.toLowerCase())){if(d=K.default.find(i,function(e){return o.indexOf(e)>=0}),!d||d.length<1)return void f.push(e);t=d.split(/\s/),t=K.default.map(t,function(e){return"of"===e?"of":e[0].toUpperCase()+e.slice(1)}),_=t.join("-"),b=b.slice(d.length-d.indexOf(" ")+1)}if(b)return void f.push(e);if(l=_[0].toUpperCase()+_.slice(1),!s[4])return void(p[l]=u);b=s[4].replace(/^\s+|\(|\)|\s+$/g,""),K.default.contains(r,_.toLowerCase())?(b=b[0].toUpperCase()+b.slice(1),l+="knowledge"===_.toLowerCase()?"-"+b:"["+b+"]",p[l]=u):(s=b.match(/([+\-]\d+)\s(.*)$/),s&&s[1]?(h=parseInt(s[1],10)||0,s[2]&&(y=s[2]),h-=u,p[l]=u,g=(h>0?"+":"")+h+" "+l+" "+y,f.push(g)):f.push(e))}catch(t){Z.default.error("parseSkillRacialBonuses outer error",t),f.push(e)}}),_}function b(e){var t=e.match(/[\w][\w\s]+\s*(?:\([\w\s,]+\))?\s*[+\-]\d+[,]??/g),a=K.default.reduce(t,function(e,t){var a,n=t.match(/^([\w][\w\s]+[\w])\s*(\([\w\s,]+\))??([+\s]+\d+)$/),r="",i=0;return n&&(i=parseInt(n[3],10)||0,r=n[1].replace(/^\s+|\s+$/g,""),r=r[0].toUpperCase()+r.slice(1),r=r.replace(/\s/g,"-"),n[2]?(a=n[2].split(/,\s*/),K.default.each(a,function(t){t=t.replace(/^\s+|,|\(|\)|\s+$/g,""),t=t[0].toUpperCase()+t.slice(1),t="Knowledge"===r?"-"+t:"["+t+"]",e[r+t]=i})):e[r]=i),e},{});return a||{}}function h(e){var t={};return t.str=me.getAbilityAndMod(e.str_compendium),t.dex=me.getAbilityAndMod(e.dex_compendium),t.con=me.getAbilityAndMod(e.con_compendium),t.wis=me.getAbilityAndMod(e.wis_compendium),t.int=me.getAbilityAndMod(e.int_compendium),t.cha=me.getAbilityAndMod(e.cha_compendium),t}function y(e,t){var a,n,r,i,l,s,o="special",c="",d=!1,p={};try{a=t,n=u(t),t.indexOf("(")>=0?re.default.spAttackAttacksPreProcess.test(n.basename)?(/rake/i.test(n.basename)?t=oe.removeUptoFirstComma(t,!0):/rend/i.test(n.basename)?t=oe.removeUptoFirstComma(t):/web/i.test(n.basename)&&(t=oe.removeUptoFirstComma(t,!0),t="web "+t,o="ranged"),d=!0):re.default.spAttackAttacks.test(n.basename)&&(d=!0):/damage|drain|dmg/i.test(n.basename)&&!/blood|energy/i.test(n.basename)&&re.default.abilitySrch.test(n.basename)&&(l=n.basename.match(/damage|drain/i),n.AbilityName="Ability "+l[0],t=n.AbilityName+" ("+t+")",d=!0),d&&(p=m(t,o,!1,0),p.specialtype="attack",p.group="Special",p.name=n.AbilityName&&"Ability"===n.AbilityName.slice(0,7)?n.AbilityName:n.name,p.basename=n.basename),d||(p.name=n.abilityName||n.name,p.basename=n.basename,p.specialtype="ability",p.rule_category="special-attacks",s=/usable\severy/i.exec(a),s&&(p.frequency="everyrounds",r=a.slice(s.index+s[0].length),i=oe.getDiceDieString(r),i&&(p.used=i,s=r.match(/rounds|days|minutes/i),s&&(p.used+=" "+s[0]))),re.default.specialAttackDCAbilityBase[p.basename]&&(p.DCability=re.default.specialAttackDCAbilityBase[p.basename],1===parseInt(e.is_undead,10)&&"CON"===p.DCability&&(p.DCability="CHA")),p.shortdesc=oe.replaceDCString(oe.replaceDiceDieString(a),p.DCability,"npc-hd-num",e.is_undead)),c=oe.getSpecialAbilityTypeFromString(t),c&&(p.ability_type=c)}catch(e){Z.default.error("parseSpecialAttack",e)}finally{return p}}function v(e,t,a){var n;return t?(n=Q.splitByCommaIgnoreParens(t),K.default.reduce(n,function(t,a){var n;try{n=y(e,a)}catch(e){Z.default.error("parseSpecialAttacks",e),n={},n.name=a,n.specialtype="ability",n.rule_category="special-attacks"}finally{return t.push(n),t}},[])):{}}function k(e){var t,a={};return a.description=[],a.specialAbilities=[],e=e.replace(/\((Ex|Sp|Su)\)\s*(?:\r\n|[\n\v\f\r\x85\u2028\u2029])/gi,"($1) "),t=e.split(/\s\s\s|\r\n|[\n\v\f\r\x85\u2028\u2029]|special abilities|\.(?=[^\.]+\((?:Ex|Sp|Su)\))/i),t=Q.trimBoth(t).filter(function(e){return e&&!/^special abilities$/i.test(e)}),a=K.default.reduce(t,function(e,t){var a,n={},r="";try{a=t.match(/\((Su|Ex|Sp)\)|^(\w+):/i),a?a[2]?(n.name=a[2],n.description=Q.trimBoth(t.slice(a[0].length+1)),e.specialAbilities.push(n)):(r=t.slice(0,a.index),n.name=r.replace(/^[^\w]+|[^\w]$/,""),n.basename=n.name.replace(/\s/g,"").toLowerCase(),n.rule_category="special-abilities",n.ability_type=a[1][0].toUpperCase()+a[1][1].toLowerCase(),n.description=Q.trimBoth(t.slice(a.index+a[0].length+1)),a=n.description.match(/(\d+d\d+) (?:points of){0,1}(.*?) damage/i),a?(a[1]&&(n.extraDamage="[["+a[1]+"]]"),a[2]&&(n.extraDamageType=a[2])):(a=n.description.match(/([a-z]) for (\d+d\d+) (rounds|minutes|hours|days)/i),a&&(a[2]&&(n.extraDamage="[["+a[2]+"]] "+a[3]||""),a[1]&&(n.extraDamageType=a[1]))),a=n.description.match(/dc is (cha|con|wis|int|str|dex)[a-zA-Z]*.based/i),a&&a[1]?(r=a[1].toUpperCase(),n.DCability=r):re.default.specialAttackDCAbilityBase[n.basename]&&(n.DCability=re.default.specialAttackDCAbilityBase[n.basename]),a=n.description.match(/DC (\d+) (Will|Fort|Ref)[a-zA-Z]* save/i),a?(a[1]&&(n.DC=a[1]),a[2]&&(r=a[2][0].toUpperCase()+a[2].slice(1).toLowerCase(),n.save=r)):(a=n.description.match(/(Will|Fort|Ref)[a-zA-Z]* DC (\d+) ([^),.])/i),a&&(a[1]&&(r=a[1][0].toUpperCase()+a[1].slice(1).toLowerCase(),n.save=r,a[3]&&(n.save+=" "+a[3])),a[2]&&(n.DC=a[2]))),e.specialAbilities.push(n)):e.description.push(t+"\r\n")}catch(e){Z.default.error("parseSpecialAbilities error parsing: "+t+" error is"+e)}finally{return e}},a)}function w(e){var t,a,n=[];return e?(t=e.match(/^SQ[\s:]*/i),t&&(e=e.slice(t[0].length)),a=Q.splitByCommaIgnoreParens(e),K.default.each(a,function(e){var t={},a="";t.name=e,a=oe.getSpecialAbilityTypeFromString(e),a&&(t.ability_type=a),t.rule_category="special-qualities",n.push(t)}),n):null}function A(e){var t,a="",n={};try{n.spellLikeAbilities=[],n.CL=0,n.concentration=0,n.classname="",t=e.split(/\r\n|[\n\v\f\r\x85\u2028\u2029]/),K.default.each(t,function(e){var t,r,i,l,s="",o="",c={},u=0,d="",p="",f=0,m=0,_=0,g=0,b=0;try{if(/CL\s*\d+/i.test(e)||/concentrat/i.test(e)||/psychic\smagic/i.test(e)||/spell.like.abilit/i.test(e)?m=1:/\u2013|\u2014|-/.test(e)&&(_=1),m)/CL\s*\d+/i.test(e)&&(t=e.match(/CL\s*(\d+)/i),t[1]&&(n.CL=parseInt(t[1],10)||0)),/concentrat/i.test(e)&&(t=e.match(/concentrat[\w]*\s*[+\-]??(\d+)/i),t[1]&&(n.concentration=parseInt(t[1],10)||0)),/psychic\smagic/i.test(e)?n.classname="Psychic Magic":n.classname="Spell-like abilities";else{if(!_)return void Z.default.warn("Cannot parse "+e);t=e.match(/\u2013|\u2014|\-/),o=e.slice(t.index+1),s=Q.trimBoth(e.slice(0,t.index)).toLowerCase(),t=s.match(/constant|will|day|month/i),t&&t[0]?(p=t[0].toLowerCase(),c.type=p,"day"!==p&&"month"!==p||(b=1,t=s.match(/\d+/),t&&t[0]&&(f=parseInt(t[0],10)||0,c.perDay=f))):(l=s.split("/"),l.length>=2&&(b=1,t=l[0].match(/\d+/),t&&t[0]&&(f=parseInt(t[0],10)||0,c.perDay=f),p="other",c.type=p,c.otherPer=l[1])),i=Q.splitByCommaIgnoreParens(o),r=K.default.reduce(i,function(e,n){var r={};try{r.type=p,b&&f>0&&(r.perDay=f),t=n.match(/level\s*(\d+)/i),t&&(t[1]&&(r.spell_level=parseInt(t[1],10)||0,g=1),n=n.replace(t[0],"")),t=n.match(/D[Cc]\s*\d+/),t&&(d=n.replace(t[0],""),a=t[0].match(/\d+/),u=parseInt(a,10)||0,r.DC=u,t=d.match(/\b(fortitude|willpower|reflex|fort|will|ref)\b([^,]+,)/i),t&&(r.save=t[0])),n.indexOf("(")>0?(r.name=n.slice(0,n.indexOf("(")-1),a=n.slice(n.indexOf("(")-1),r.shortdesc=a):r.name=n,r.spell_level&&/^summon/i.test(r.name)&&(r.name+=" Level "+String(r.spell_level)),e.push(r)}catch(t){Z.default.error("parseSLAs, error reducing to SLAArray for: "+n,t),r.name?r.description=n:r.name=n,e.push(r)}finally{return e}},[]),r&&K.default.size(r)>0&&(c.type=p,b&&f>0&&(c.perDay=f),c.SLAs=r,n.spellLikeAbilities.push(c))}}catch(t){Z.default.error("parseSLAs error parsing"+e,t)}})}catch(e){Z.default.error("parseSLAs",e)}finally{return n.spellLikeAbilities&&K.default.size(n.spellLikeAbilities)>0?n:null}}function C(e){var t,a={};return e?(a.classLevel=-1,a.concentration=-1,a.classname="",a.spellsByLevel=[],a.spellnotes="",t=e.split(/\r\n|[\n\v\f\r\x85\u2028\u2029]/),a=K.default.reduce(t,function(e,t){var a,n,r,i,l,s,o,c=[],u={};try{/C[Ll]\s*\d+/i.test(t)?e.classLevel===-1&&(a=t.match(/C[Ll]\s*(\d+)/i),a&&a[1]&&(e.classLevel=parseInt(a[1],10)||0),a=t.match(/concentrat[\w]*\s*[+\-]??(\d+)/i),a&&a[1]&&(e.concentration=parseInt(a[1],10)||0),a=t.match(/([\w\s]*)spells\s(?:known|prepared)/i),a&&a[1]?(e.classname=a[1].replace(/^\s|\s$/g,""),e.classname=e.classname.toLowerCase()):/spells\sprepared/i.test(t)?e.classname="cleric":e.classname="sorcerer"):/opposition schools|domains/i.test(t)?(o=t.match(/opposition schools/i),o?(s=t.slice(o.index+o[0].length),e.oppositionschools=Q.trimBoth(s)):(a=t.match(/domains/i),t=t.slice(a.index+a[0].length),r=t.split(","),c=r.map(function(e){return Q.trimBoth(e)}),e.domains=c)):/\u2013|\u2014|-/.test(t)?(u.perDay=-1,u.spellLevel=-1,r=t.split(/\u2013|\u2014|-/),r&&r[0]&&(a=r[0].match(/^(\d+)/),a&&a[1]&&(u.spellLevel=parseInt(a[1],10)||0,a=r[0].match(/(\d+)\/day/i),a&&a[1]&&(u.perDay=parseInt(a[1],10)||0))),r&&r[1]&&(i=r[1].split(","),n=K.default.reduce(i,function(n,r){var i={};try{a=r.split(/\(dc/i),i.name=a[0].replace(/^\s|\s$/g,""),a[1]&&(l=a[1],a=l.match(/\d+/),a&&a[0]&&(i.DC=parseInt(a[0],10)||0)),"D"===i.name.slice(-1)&&(i.name=Q.trimBoth(i.name.slice(0,-1)),i.isDomain=1,e.classname&&"cleric"===e.classname||(e.classname="cleric")),n.push(i)}catch(e){Z.default.error("PFNPCParser.parseSpells errinner on spell: "+r+" on line"+t,e)}finally{return n}},[])),u.spellLevel>=0&&n&&n.length>0&&(u.spells=n,e.spellsByLevel.push(u))):e.spellnotes+=t}catch(e){Z.default.error("PFNPCParser.parseSpells error on line "+t,e)}finally{return e}},a)):null}function I(e){var t,a,n=e;try{t=e.match(/\s*(\d*\.?\d*)?/),t&&(a=parseFloat(t[1]),isNaN||(n=String(a)))}finally{return n}}function x(e,t,a,n,r){var i={};if(!e||!t||!a)return null;try{Z.default.debug("getCasterObj spellObj,abilities,health are:",e,t,a),i.abilityMod=0,i.CL=0,i.concentrationBonus=0,r?(i.classname="Cleric",i.ability="WIS",i.abilityMod=t.wis.mod):n||!e.classname?(i.classname=n?"Spell-like abilities":"Sorcerer",i.ability="CHA",i.abilityMod=t.cha.mod):(i.classname=e.classname[0].toUpperCase()+e.classname.slice(1).toLowerCase(),re.default.casterDefaultAbility[e.classname]&&t[re.default.casterDefaultAbility[e.classname]]?(i.ability=re.default.casterDefaultAbility[e.classname].toUpperCase(),i.abilityMod=t[re.default.casterDefaultAbility[e.classname]].mod):(i.ability="CHA",i.abilityMod=t.cha.mod)),e.classLevel?i.CL=e.classLevel:i.CL=a.hdice1,e.concentration&&(i.concentrationBonus=e.concentration-i.abilityMod-i.CL),e.oppositionschools&&(i.oppositionschools=e.oppositionschools,e.oppositionschools=null),e.spellnotes&&(i.spellnotes=e.spellnotes,e.spellnotes=null),e.domains&&(i.domains=e.domains,e.domains=null)}catch(e){Z.default.error("getCasterObj error trying to create obj returning null",e),i=null}finally{return i}}function P(e,t,a,n){var r=!1,i=0;try{n=n||{},t=t||0,t<0&&(t=0),a&&(a["spellclass-"+t+"-name"]||a["spellclass-"+t+"-level"])&&(parseInt(a["spellclass-"+t+"-level"],10)!==parseInt(e.CL,10)||oe.findAbilityInString(a["Concentration-"+t+"-ability"])!==e.ability.toUpperCase()?t++:r=!0),t>2?(Z.default.error("Could not setCasterFields, 0,1,2 spellclasses already defined:"),e.pageClassIdx=-1):r?(n["spellclass-"+t+"-name"]=n["spellclass-"+t+"-name"]+" and "+e.classname,e.pageClassIdx=t):(n["spellclass-"+t+"-name"]=e.classname,n["spellclass-"+t+"-level"]=e.CL,n["spellclass-"+t+"-level-total"]=e.CL,/wizard|cleric|druid|paladin|ranger|investigator|shaman|witch|alchemist|warpriest/i.test(e.classname)?n["spellclass-"+t+"-casting_type"]=2:n["spellclass-"+t+"-casting_type"]=1,e.ability&&(n["Concentration-"+t+"-ability"]=e.ability+"-mod"),n["Concentration-"+t+"-mod"]=e.abilityMod,e.concentrationBonus&&(n["Concentration-"+t+"-misc"]=e.concentrationBonus),e.pageClassIdx=t,e.oppositionschools&&(n["spellclass-"+t+"-oppositionschool-0"]=e.oppositionschools),e.spellnotes&&(n["spellclass-"+t+"-notes"]=e.spellnotes),e.domains&&(n["spellclass-"+t+"-domains-show"]=1,i=0,K.default.each(e.domains,function(e){n["spellclass-"+t+"-domain-"+i]=e,n["spellclass-"+t+"-domaintype-"+i]="Domain",i++,i>1&&(n["domain0"+i+"_show"]=1)})))}catch(e){Z.default.error("setCasterFields",e)}finally{return n}}function S(e,t,a){var n="spells";return a=a||{},e&&t?(K.default.each(e.spellsByLevel,function(e){var r=parseInt(e.spellLevel,10)||0,i=0,l="";try{l="spellclass-"+t.pageClassIdx+"-level-"+r,e.perDay&&(a[l+"-class"]=e.perDay,a[l+"-spells-per-day_max"]=e.perDay,a[l+"-spells-per-day"]=e.perDay),i=10+r+(parseInt(t.abilityMod,10)||0)}catch(e){Z.default.error("createSpellEntries error setting spells per day",e)}a=K.default.reduce(e.spells,function(e,l){var s=generateRowID(),o=0,c="repeating_"+n+"_"+s+"_";try{a[c+"name"]=l.name[0].toUpperCase()+l.name.slice(1),a[c+"classnumber"]=t.pageClassIdx,a[c+"spell_class_r"]=t.pageClassIdx,a[c+"spellclass"]=t.classname,a[c+"spell_level"]=r,a[c+"spell_level_r"]=r,l.DC&&(o=parseInt(l.DC,10)||0,o!==i&&(a[c+"DC_misc"]=o-i),a[c+"savedc"]=o),t.concentration&&(a[c+"Concentration-mod"]=t.concentration),l.isDomain&&(a[c+"isDomain"]=1)}catch(e){Z.default.error("createSpellEntries error setting spell :",l,e)}finally{return a}},a)}),a):a}function T(e,t,a,n,r){var i="ability";return r=r||{},e&&t?(n=n||0,K.default.each(e.spellLikeAbilities,function(l){var s=parseInt(l.perDay,10)||0,o=l.type;r=K.default.reduce(l.SLAs,function(r,l){var c,u,d="repeating_"+i+"_"+c+"_",p="",f=0,m=0;try{switch(c=generateRowID(),d="repeating_"+i+"_"+c+"_",r[d+"name"]=l.name[0].toUpperCase()+l.name.slice(1),r[d+"ability_type"]="Sp",r[d+"rule_category"]="spell-like-abilities",r[d+"showinmenu"]="1",t.ability?(u=t.ability,r[d+"ability-basis"]="@{"+t.ability+"-mod}"):(u="CHA",r[d+"ability-basis"]="@{CHA-mod}"),r[d+"CL-basis"]="@{npc-hd-num}",r[d+"CL-basis-mod"]=n,a&&(r[d+"class-name"]=a),t.CL?(f=n||0,f>0&&(r[d+"CL-misc"]=t.CL-f,r[d+"CL-misc-mod"]=t.CL-f),m=t.CL):m=n,r[d+"casterlevel"]=m,l.spell_level?l.spell_level===n?r[d+"spell_level-basis"]="@{casterlevel}":l.spell_level===Math.floor(n/2)?r[d+"spell_level-basis"]="floor(@{casterlevel}/2)":(r[d+"spell_level-basis"]="0",r[d+"spell_level-misc"]=l.spell_level):r[d+"spell_level-basis"]="floor(@{casterlevel}/2)",o){case"day":r[d+"frequency"]="perday",r[d+"used"]=s,r[d+"used_max"]=s,r[d+"max-calculation"]=s,r[d+"hasfrequency"]="1",r[d+"hasuses"]="1";break;case"will":r[d+"frequency"]="atwill",r[d+"hasfrequency"]="1";break;case"constant":r[d+"frequency"]="constant",r[d+"hasfrequency"]="1";break;case"month":r[d+"frequency"]="permonth",r[d+"used"]=s,r[d+"used_max"]=s,r[d+"max-calculation"]=s,r[d+"hasfrequency"]="1",r[d+"hasuses"]="1";break;case"everyrounds":r[d+"frequency"]="everyrounds",r[d+"hasfrequency"]="1",r[d+"rounds_between"]=l.used||"";break;case"other":r[d+"frequency"]="other",r[d+"used"]=s,r[d+"used_max"]=s,r[d+"max-calculation"]=s,r[d+"hasfrequency"]="1",r[d+"hasuses"]="1",e.otherPer&&(p="Frequency per :"+e.otherPer);break;default:r[d+"frequency"]="not-applicable",r[d+"used"]=0,r[d+"used_max"]=0,r[d+"max-calculation"]="",r[d+"hasfrequency"]="",r[d+"hasuses"]=""}if(l.save&&(r[d+"save"]=l.save),l.DC)try{l.save||(r[d+"save"]="See Text"),t.abilityMod&&(f=0,f=l.spell_level?10+t.abilityMod+l.spell_level:10+t.abilityMod+Math.floor(m/2),f!==l.DC&&(r[d+"spell_level-misc"]=l.DC-f,r[d+"spell_level-misc-mod"]=l.DC-f))}catch(e){Z.default.error("createSLAentries, error trying to calculate DC: "+l,e)}l.description&&(r[d+"description"]=l.description),l.shortdesc&&(p=p?l.shortdesc+", "+p:l.shortdesc),p&&(r[d+"short-description"]=p)}catch(e){Z.default.error("createSLAEntries error setting SLA :",l,e)}finally{return r}},r)}),r):r}function E(e,t,a,n,r,i,l,s){return s=s||{},e&&0!==K.default.size(e)?s=K.default.reduce(e,function(e,s){var o,c="",u="",d=!1,p=!1,f=0,m=0,_=0,g=0,b=1,h=0,y=0,v="",k="",w=NaN;try{if(c=generateRowID(),u="repeating_weapon_"+c+"_",y=Math.max(s.enh,s.mwk),k=s.basename,v+=s.name,s.plus&&(v+=" Plus "+s.plus),e[u+"name"]=v,e[u+"default_size"]=l.size,"ranged"===s.atktype?(_=t.ranged,e[u+"attack-type"]="attk-ranged",e[u+"attack-type-mod"]=t.ranged,e[u+"isranged"]=1):re.default.cmbPlusStrsrch.test(k)?(_=t.cmb,e[u+"attack-type"]="CMB",e[u+"attack-type-mod"]=t.cmb,d=!0,b=1.5,p=!0):"cmb"===s.atktype?(_=t.cmb,e[u+"attack-type"]="CMB",e[u+"attack-type-mod"]=t.cmb):"special"===s.atktype?(_=0,e[u+"attack-type-mod"]=0,e[u+"total-attack"]=0,"trample"===s.basename&&(d=!0,b=1.5,Z.default.debug("CREATEATTACKS trample the attack is : ",s))):(d=!0,n.weaponfinesse?(_=t.melee2,e[u+"attack-type"]="attk-melee2",e[u+"attack-type-mod"]=t.melee2):(_=t.melee,e[u+"attack-type"]="attk-melee",e[u+"attack-type-mod"]=t.melee),"natural"===s.type&&("secondary"===s.naturaltype?b=.5:s.dmgMult&&1.5===s.dmgMult&&(e[u+"damage_ability_mult"]="1.5",b=1.5))),(d||p)&&(p&&0===s.dmgbonus?(e[u+"damage-ability"]="0",h=0):(e[u+"damage-ability"]="STR-mod",1!==b?(h=Math.floor(b*a.str.mod),e[u+"damage_ability_mult"]=b):h=a.str.mod),e[u+"damage-ability-mod"]=h),s.enh&&(e[u+"enhance"]=s.enh),s.mwk&&(e[u+"masterwork"]="1"),!p&&s.iter&&s.iter.length>0?w=parseInt(s.iter[0],10):p&&(w=_),isNaN(w)?"cmb"===s.atktype?/swallowwhole|pin/i.test(s.basename)?(e[u+"attack"]=5,e[u+"attack-mod"]=5,e[u+"total-attack"]=t.cmb+5):e[u+"total-attack"]=t.cmb:e[u+"total-attack"]=0:p?(e[u+"attack"]=0,e[u+"attack-mod"]=0,e[u+"total-attack"]=_):(e[u+"attack"]=w-y-_,e[u+"attack-mod"]=w-y-_,e[u+"total-attack"]=w),20!==s.crit&&(e[u+"crit-target"]=s.crit),2!==s.critmult&&s.critmult&&(e[u+"crit-multiplier"]=s.critmult),n.criticalfocus&&(e[u+"crit_conf_mod"]=4),e[u+"total-attack"]||(e[u+"total-attack"]=0),Z.default.debug("Create attack e6 "+s.name+", enhance:"+s.enh+" dmg from attack:"+s.dmgbonus+", from str:"+h),e[u+"damage-dice-num"]=s.dmgdice,e[u+"default_damage-dice-num"]=s.dmgdice,e[u+"damage-die"]=s.dmgdie,e[u+"default_damage-die"]=s.dmgdie,e[u+"damage"]=s.dmgbonus-s.enh-h,e[u+"damage-mod"]=s.dmgbonus-s.enh-h,e[u+"total-damage"]=s.dmgbonus,s.note?e[u+"notes"]="("+s.type+") "+s.note:e[u+"notes"]="("+s.type+")",s.iter.length>1)for(f=1;f1)for(f=1;f0?(o=K.default.filter(i,function(e){return k.indexOf(e[0])>=0}),o&&o[0]&&o[0][1]?e[u+"range"]=o[0][1]:r&&(e[u+"range"]=r)):r&&(e[u+"range"]=r)),s.vs&&!/tongue/i.test(s.name)&&(e[u+"vs"]=s.vs),s.group&&(e[u+"group"]=s.group),s.DC&&(Z.default.debug("PFNPCParser has attack dc",s),e[u+"notes"]=e[u+"notes"]+" "+(s.save||"")+" "+s.DC+s.DCEquation?" "+s.DCEquation:"")}catch(e){Z.default.error("createattacks error on:",s,e)}finally{return e}},s):s}function M(e,t,a,n,r,i,l){var s="DEX",o=t.dex.mod,c=0,u=0;try{if(l=l||{},e.altability&&(s=e.altability.toUpperCase(),"DEX"!==s)){switch(l["AC-ability"]=s+"-mod",l["CMD-ability2"]=s+"-mod",e.altability.toLowerCase()){case"wis":o=t.wis.mod;break;case"int":o=t.int.mod;break;case"cha":o=t.cha.mod;break;case"con":o=t.con.mod;break;default:o=t.dex.mod}l["AC-ability-mod"]=o}e.uncanny&&(l["FF-ability"]=s+"-mod",l["FF-ability-mod"]=o,l["CMD-ability"]=s+"-mod",l["CMD-ability"]=o,l.uncanny_dodge=1,l.uncanny_cmd_dodge=1),u=r,a.defensivecombattraining&&(l.hd_not_bab=1,u=Math.max((n.hdice1||0)+(n.hdice2||0),i||0));try{c=10+u+t.str.mod+o+-1*e.size,isNaN(e.cmd)||c===e.cmd?l.CMD=c:(l.CMD=e.cmd,l["CMD-misc"]=e.cmd-c,l["CMD-misc-mod"]=e.cmd-c)}catch(e){Z.default.error("createACEntries error trying to calculate CMD",e)}l.AC=e.ac,l.Touch=e.touch,l["Flat-Footed"]=e.ff,l["AC-deflect"]=e.deflect,l["AC-dodge"]=e.dodge,l["AC-misc"]=e.misc,l["AC-misc-mod"]=e.misc,l["AC-natural"]=e.natural,e.armor&&(l["armor3-equipped"]="1",l["armor3-acbonus"]=e.armor,l.armor3="Armor bonus",l["AC-armor"]=e.armor),e.shield&&(l["shield3-equipped"]="1",l["shield3-acbonus"]=e.shield,l.shield3="Shield bonus",l["AC-shield"]=e.shield),e.notes&&(l["defense-notes"]=e.notes),e.cmdnotes&&(l["cmd-notes"]=e.cmdnotes)}catch(e){}finally{return l}}function D(e,t,a,n,r,i,l,s){var o=0,c=pe.coreSkillAbilityDefaults,u="";try{s=s||{},Z.default.info("PFNPC createSkillEntries sizemap is: ",e,t,a,n,r,i,l),t&&(t.abilitymods&&K.default.size(t.abilitymods)>0&&(c=K.default.extend({},pe.coreSkillAbilityDefaults,t.abilitymods)),t.skillmods&&K.default.size(t.skillmods)>0&&K.default.each(t.skillmods,function(e,t){"Knowledge"===t?K.default.each(pe.knowledgeSkills,function(t){s[t+"-racial"]=e}):K.default.contains(pe.coreSkillsWithFillInNames,t)?K.default.each(pe.allFillInSkillInstances[t],function(t){s[t+"-racial"]=e}):s[t+"-racial"]=e}),t.skillnotes&&t.skillnotes.length>0&&(u="",K.default.each(t.skillnotes,function(e){u+=e+", "}),u.replace(/,\s$/,""),u&&(s["Skill-notes"]=u))),n&&K.default.size(n)>0&&(n.intimidatingprowess&&(s["Intimidate-feat"]=a.str.mod),n.skillfocuses&&K.default.each(n.skillfocuses,function(e){"Knowledge"===e?K.default.each(pe.knowledgeSkills,function(e){s[e+"-feat"]=3}):K.default.contains(pe.coreSkillsWithFillInNames,e)?K.default.each(pe.allFillInSkillInstances[e],function(e){s[e+"-feat"]=3}):s[e+"-feat"]=3})),r&&K.default.size(r)>0&&K.default.each(r,function(e){try{"Knowledge"===e?K.default.each(pe.knowledgeSkills,function(e){s[e+"-cs"]=3}):K.default.contains(pe.coreSkillsWithFillInNames,e)?K.default.each(pe.allFillInSkillInstances[e],function(e){s[e+"-cs"]=3}):s[e+"-cs"]=3}catch(e){Z.default.error("createSkillEntries",e)}}),K.default.each(e,function(e,n){var r="",l=0,u=0;try{e=parseInt(e,10)||0,c[n]?(r=c[n],l=a[r]?a[r].mod:0,s[n+"-ability"]=r.toUpperCase()+"-mod",s[n+"-ability-mod"]=l,s[n]=e,u=e,"Stealth"===n&&Z.default.debug("skilltot 1:"+u),u-=l,"Stealth"===n&&Z.default.debug("skilltot 2 minus "+l+" =:"+u),"Stealth"===n?(0!==i.skillSize&&(u-=2*i.skillSize),Z.default.debug("skilltot 3 minus "+2*i.skillSize+" =:"+u)):"Fly"===n&&0!==i.skillSize&&(u-=i.skillSize),t&&t.skillmods&&t.skillmods[n]&&(u-=parseInt(t.skillmods[n],10)||0,"Stealth"===n&&Z.default.debug("skilltot 4 minus "+(parseInt(t.skillmods[n],10)||0)+" =:"+u)),parseInt(s[n+"-feat"],10)>0&&(u-=3,"Stealth"===n&&Z.default.debug("skilltot 5 minus 3 =:"+u)),u>0&&parseInt(s[n+"-cs"],10)>0&&(u-=3,"Stealth"===n&&Z.default.debug("skilltot 6 minus 3 =:"+u)),"Stealth"===n&&Z.default.debug("skilltot 7 final ranks are :"+u),s[n+"-ranks"]=u,u<0&&(s[n+"-note"]="Ranks less than 0, possible parse error or error in statblock"),o++):(Z.default.warn("createSkillEntries, skill "+n+" not found"),s[n+"-note"]=(s[n+"-note"]||"")+", "+n+":"+e)}catch(e){Z.default.error("createSkillEntries inner reduce",e)}})}catch(e){Z.default.error("at createskillEntries OUTER error",e)}finally{return Z.default.info("leaving creaeskills:",s),s}}function R(e,t,a,n){var r=0;try{n=n||{},r=e-t.dex.mod,n.init=e,n["init-misc"]=r,n["init-misc-mod"]=r,n["init-ability-mod"]=t.dex.mod}catch(e){Z.default.error("createInitEntries",e)}finally{return n}}function F(e,t,a){try{a=a||{},t||"-"===e.con.base?(a["HP-ability"]="CHA-mod",a["HP-ability-mod"]=e.cha.mod):a["HP-ability-mod"]=e.con.mod}finally{return a}}function N(e,t,a,n){try{n=n||{},n["npc-hd-num"]=a.hdice1,n.level=a.hdice1,n["npc-hd"]=a.hdie1,n.HP=a.hp,n.HP_max=a.hp,n["non-lethal-damage_max"]=a.hp,n.auto_calc_hp="1",n.both_whisper_show="1",a.basehp&&(n["NPC-HP"]=a.basehp),a.misc&&(n["HP-formula-macro-text"]=a.misc,n["HP-formula-mod"]=a.misc),a.heal&&(n["npc-heal-conditions"]=a.heal)}catch(e){Z.default.error("createHealthEntries",e)}finally{return n}}function L(e,t,a){var n="";try{a=a||{},K.default.each(e,function(e,t){switch(t){case"land":a["speed-base"]=e,a["speed-modified"]=e;break;case"fly":a["speed-fly"]=e;break;case"climb":a["speed-climb"]=e;break;case"swim":a["speed-swim"]=e;break;case"flyability":a["speed-fly-maneuverability"]=e;break;default:a["speed-misc"]=e,n.length>0&&(n+=", "),n+=t+" "+e}}),n&&(a["speed-notes"]=n),t.run&&(a["run-mult"]=5)}catch(t){Z.default.error("parseAndSetSpeed error, speedMap",e,t)}finally{return a}}function z(e,t,a,n,r,i){var l,s,o,c="",u="";try{i=i||{},l=a.baseFort-e.con.mod,s=a.baseRef-e.dex.mod,o=a.baseWill-e.wis.mod,t||"-"===e.con.base?(l=a.baseFort-e.cha.mod,i["Fort-ability"]="CHA-mod",i["Fort-ability-mod"]=e.cha.mod):i["Fort-ability-mod"]=e.con.mod,r.greatfortitude&&(i["Fort-misc"]=2,i["Fort-misc-mod"]=2,l-=2),i["total-Fort"]=l,i["npc-Fort"]=l,i.Fort=a.baseFort,c="",u=oe.getNoteAfterNumber(n.fort_compendium),u&&(c+="Fortitude "+u),r.lightningreflexes&&(i["Ref-misc"]=2,i["Ref-misc-mod"]=2,s-=2),i["total-Ref"]=s,i["npc-Ref"]=s,i.Ref=a.baseRef,0!==e.dex.mod&&(i["Ref-ability-mod"]=e.dex.mod),u=oe.getNoteAfterNumber(n.ref_compendium),u&&(c+="Reflex "+u),r.ironwill&&(i["Will-misc"]=2,i["Will-misc-mod"]=2,o-=2),i["total-Will"]=o,i["npc-Will"]=o,i.Will=a.baseWill,0!==e.wis.mod&&(i["Will-ability-mod"]=e.wis.mod),u=oe.getNoteAfterNumber(n.will_compendium),u&&(c+=u),c&&(i.saves_notes=c,i.toggle_save_notes="1")}catch(e){Z.default.error("createSaveEntries",e)}finally{return i}}function O(e,t){try{t=t||{},t["STR-base"]=e.str.base,t["DEX-base"]=e.dex.base,t["CON-base"]=e.con.base,t["WIS-base"]=e.wis.base,t["INT-base"]=e.int.base,t["CHA-base"]=e.cha.base,t.STR=e.str.base,t.DEX=e.dex.base,t.CON=e.con.base,t.WIS=e.wis.base,t.INT=e.int.base,t.CHA=e.cha.base,t["STR-mod"]=e.str.mod,t["DEX-mod"]=e.dex.mod,t["CON-mod"]=e.con.mod,t["WIS-mod"]=e.wis.mod,t["INT-mod"]=e.int.mod,t["CHA-mod"]=e.cha.mod}catch(e){Z.default.error("createAbilityScoreEntries",e)}finally{return t}}function W(e,t,a,n,r,i,l){var s,o,c="",u=0,d={},p=0,f=0;try{l=l||{},d.melee=e.str.mod+n+t.size,l.bab=n,l["npc-bab"]=n,l["melee-ability-mod"]=e.str.mod,l["attk-melee"]=d.melee,l["melee-ability"]="STR-mod",l["melee-ability-mod"]=e.str.mod,l.melee_bab="bab",l["melee_bab-mod"]=n,d.melee2=e.dex.mod+n+t.size,l["melee2-ability"]="DEX-mod",l["melee2-ability-mod"]=e.dex.mod,l["attk-melee2"]=d.melee2,l.attk_melee2_note="Weapon Finesse",l.melee2_bab="bab",l["melee2_bab-mod"]=n,d.ranged=e.dex.mod+n+t.size,d.ranged2=d.ranged,l["ranged-ability"]="DEX-mod",l["ranged-ability-mod"]=e.dex.mod,l["attk-ranged"]=d.ranged,l.ranged_bab="bab",l["ranged_bab-mod"]=n,l["ranged2-ability"]="DEX-mod",l["ranged2-ability-mod"]=e.dex.mod,l["attk-ranged2"]=d.ranged,l.ranged2_bab="bab",l["ranged2_bab-mod"]=n,a.defensivecombattraining?(l.cmb_bab="level",l["cmb_bab-mod"]=r,l.cmb2_bab="level",l["cmb2_bab-mod"]=r,u=r):(l.cmb_bab="bab",l["cmb_bab-mod"]=n,l.cmb2_bab="bab",l["cmb2_bab-mod"]=n,u=n),a.agilemaneuvers?(l["CMB-ability"]="DEX-mod",l["CMB-ability-mod"]=e.dex.mod,l["CMB2-ability"]="DEX-mod",l["CMB2-ability-mod"]=e.dex.mod,f=e.dex.mod+u-t.size,l.cmb_desc="Agile Maneuvers"):(l["CMB-ability"]="STR-mod",l["CMB-ability-mod"]=e.str.mod,l["CMB2-ability"]="STR-mod",l["CMB2-ability-mod"]=e.str.mod,f=e.str.mod+u-t.size),o=f,i&&(s=i.match(/\d+/),s&&(o=parseInt(s[0],10),c=i.slice(s.index+s[0].length),c&&(d.cmbnotes=c,l["CMB-notes"]=c))),l.CMB=o,d.cmb=o,l.CMB2=o,d.cmb2=o,p=o-f,p&&(l["attk-CMB-misc"]=p,l["attk-CMB-misc-mod"]=p,l["attk-CMB2-misc"]=p,l["attk-CMB2-misc-mod"]=p),a.criticalfocus&&(l.cmb_crit_conf=4,l.ranged_crit_conf=4,l.melee_crit_conf=4,l.cmb2_crit_conf=4,l.ranged2_crit_conf=4,l.melee2_crit_conf=4)}catch(e){Z.default.error("parseAndCreateAttackGrid error creating CMB attack types",e)}finally{return d}}function B(e,t,a,n,r,i,l,s,o){var c=[];try{if(o=o||{},l)try{c=_(l,"melee"),f(c),E(c,r,e,a,i.reach,i.reachExceptions,t,o)}catch(e){Z.default.error("parseAndCreateAttacks error creating melee attacks",e)}if(s)try{c=_(s,"ranged"),E(c,r,e,a,null,null,t,o)}catch(e){Z.default.error("parseAndCreateAttacks error creating ranged attacks",e)}}catch(e){Z.default.error("parseAndCreateAttacks",e)}finally{return o}}function q(e,t,a,n){return K.default.reduce(e,function(e,n){var r=generateRowID(),i="repeating_ability_"+r+"_";return e[i+"name"]=n,e[i+"rule_category"]="feats",e[i+"showinmenu"]="1",e[i+"CL-basis"]="@{npc-hd-num}",e[i+"CL-basis-mod"]=a||0,t&&(e[i+"class-name"]=t),e[i+"row_id"]=r,e[i+"frequency"]="not-applicable",e[i+"ability_type"]="",e},n)}function H(e){return"feats"===e.slice(0,5).toLowerCase()&&(e=e.slice(5)),Q.splitByCommaIgnoreParens(e)}function U(e,t,a,n,r){var i={},l="",s=0,o=0,c=0,u=0,d=0;try{u=Math.floor(n/2),l=a,i=K.default.chain(e).map(function(e){var t;try{e.description=e.description||"",e.note&&(e.description&&(e.description+=", "),e.description+=e.note.replace(/,\s$/,"")),e.other&&(e.description&&(e.description+=", "),e.description+=e.other.replace(/,\s$/,""),e.other=null),e.ability_type||e.name&&(t=oe.getSpecialAbilityTypeFromString(e.name),t&&(e.ability_type=t,e.name=e.name.replace(/\b(Su|Ex|Sp)\b/i,"").replace("()","")))}catch(e){Z.default.error("createFeatureEntries err3",e)}finally{return e}}).filter(function(e){return!!e.name}).reduce(function(e,a){var n,i;try{n=generateRowID(),i="repeating_ability_"+n+"_",e[i+"name"]=a.name,e[i+"row_id"]=n,e[i+"showinmenu"]="1",a.shortdesc&&(e[i+"short-description"]=a.shortdesc),a.description&&(e[i+"description"]=a.description),a.used?a.frequency&&"everyrounds"===a.frequency?(e[i+"frequency"]=a.frequency,e[i+"rounds_between"]=a.used,e[i+"hasfrequency"]="1",e[i+"used"]=0,e[i+"used_max"]=0,e[i+"max-calculation"]=""):(a.frequency?(e[i+"frequency"]=a.frequency,e[i+"hasfrequency"]=a.frequency):(e[i+"frequency"]="perday",e[i+"hasfrequency"]="perday"),e[i+"hasuses"]="1",e[i+"used"]=a.used,e[i+"used_max"]=a.used,e[i+"max-calculation"]=a.used):(e[i+"frequency"]="not-applicable",e[i+"used"]=0,e[i+"used_max"]=0,e[i+"max-calculation"]="",e[i+"hasfrequency"]="",e[i+"hasuses"]=""),a.dmgtype&&(e[i+"damage-type"]=a.dmgtype),a.rule_category&&(e[i+"rule_category"]=a.rule_category),a.ability_type?e[i+"ability_type"]=a.ability_type:e[i+"ability_type"]="",e[i+"CL-basis"]="@{npc-hd-num}",e[i+"CL-basis-mod"]=r.level||0,l&&(e[i+"class-name"]=l),a.save&&(e[i+"save"]=a.save),a.DCability?(e[i+"ability-basis"]="@{"+a.DCability.toUpperCase()+"-mod}",c=t[a.DCability.toLowerCase()].mod):"Sp"===a.ability_type||r.is_undead?(e[i+"ability-basis"]="@{CHA-mod}",c=t.cha.mod):(e[i+"ability-basis"]="@{CON-mod}",c=t.con.mod),a.extraDamage&&(e[i+"damage-macro-text"]=a.extraDamage),
+a.extraDamageType&&(e[i+"damage-type"]=a.extraDamageType),e[i+"spell_level-basis"]="floor(@{casterlevel}/2)",a.DC&&(o=parseInt(a.DC,10)||0,d=c+u+10,s=o-d,0!==s&&(e[i+"spell_level-misc"]=s,e[i+"spell_level-misc-mod"]=s))}catch(e){Z.default.error("createFeatureEntries",e)}finally{return e}},{}).value(),r=K.default.extend(r,i)}catch(e){Z.default.error("createFeatureEntries",e)}finally{return r}}function j(e,t){var a;return a=K.default.map(e,function(e){var a;try{a=K.default.findWhere(t,{name:e.name}),a&&K.default.each(K.default.keys(a),function(t){"description"===t?e.description=(e.description?e.description+", ":"")+(a.description||""):"shortdesc"===t?e.shortdesc=(e.shortdesc?e.shortdesc+", ":"")+(a.shortdesc||""):!e[t]&&a[t]&&(e[t]=a[t])})}catch(e){Z.default.error("combineSpecialAbilities err1",e)}finally{return e}}),t=K.default.reject(t,function(t){return!!K.default.findWhere(e,{name:t.name})}),a=K.default.union(a,t)}function G(e,t,a){var n=0,r=0,i=0,l=!1;try{if(a=a||{},n=a.level||0,e.CL&&e.classname){for(r=0;r<7;r++)if((t["class-"+r+"-name"]||t["class-"+r+"-level"]>0)&&(i=r,t["class-"+r+"-name"].toLowerCase()===e.classname.toLowerCase())){l=!0;break}i>=6?Z.default.warning("too many classes, cannot add "+e.classname):(a["class-"+i+"-name"]=e.classname||"",a["class-"+i+"-level"]=e.CL||0),e.CL&&(n+=e.CL||0),(a.level||0)!==n&&(a.level=n)}}catch(e){Z.default.error("createClassEntries",e)}finally{return a}}function X(e,t,a){var n=function(e){Z.default.info("##############################################"),Z.default.info("Leaving importFromCompendium"),e&&ae.checkForUpdate(!0),"function"==typeof t&&t()},r=K.default.once(function(){Z.default.warn("Leaving importFromCompendium NOTHING DONE"),"function"==typeof a&&a()}),u=ge.concat(["is_npc","alignment","npc_parse_no_recalc"]);getAttrs(u,function(e){var t,a,u,f,m,_,y,X,V,$={},Y={},J={},te={},ae={},ne={},re={},ie={},se={},oe={},ce={},de=0,pe=0,fe=0,me=0,_e=[],ge=0,be=!1,he=!1,ye={},ve="",ke="",we=0,Ae=null,Ce=0,Ie=-1,xe={},Pe={},Se=[],Te=0,Ee={};try{de=parseInt(e.fort_compendium,10)||0,pe=parseInt(e.ref_compendium,10)||0,fe=parseInt(e.will_compendium,10)||0,me=parseInt(e.bab_compendium,10)||0,$.level=0,parseInt(e.npc_parse_no_recalc,10)||(Te=1),$.is_npc="1",$.is_v1="1",$.PFSheet_Version=String(ee.default.version.toFixed(2)),$["max-dex-source"]=3,le.getAllMigrateFlags($),e.xp_compendium&&($["npc-xp"]=e.xp_compendium),e.cr_compendium&&(t=e.cr_compendium.replace(/\s*cr\s*/i,""),t=Q.trimBoth(t),$["npc-cr"]=t),$["PC-Whisper"]="/w gm",e.type_compendium&&($["npc-type"]=e.type_compendium),be=/undead/i.test(e.type_compendium)||/undead/i.test(e.character_name),be&&($.is_undead="1"),e.character_name&&($.race=e.character_name),e.class_compendium&&($.add_class=1,we=0,m=e.class_compendium.split(","),K.default.each(m,function(t){var a,n=0,r="";try{a=t.match(/\d+/),a&&(n=parseInt(a[0],10)||0,r=Q.trimBoth(t.replace(/\s*\d+\s*/," "))),G({classname:r,CL:n},{},$),we++}catch(t){Z.default.error("PFNPCparser error trying to parse class"+e.class_compendium)}}),we>1&&($.multiclassed=1,$.class1_show=1),we=0,ge=$.level),Y=h(e,be),O(Y,$),J=ue.setSize(e.size_compendium,$),_e=H(e["npc-feats-text"]),re=l(_e),Ce=i(e.init_compendium),R(Ce,Y,re,$),e.dr_compendium&&($.DR=e.dr_compendium),e.sr_compendium&&($.SR=e.sr_compendium,$["SR-macro-text"]=e.sr_compendium),Ee={baseFort:de,baseRef:pe,baseWill:fe},z(Y,be,Ee,e,re,$),F(Y,be,$),a=parseInt($["HP-ability-mod"],10),ae=s(e.npc_hp_compendium,a),ge+=ae.hdice1||0,$.level=ge,N(Y,be,ae,$),ne=o(e.ac_compendium,e.cmd_compendium,Y.dex.mod,J.size),M(ne,Y,re,ae,me,ge,$),e.senses_compendium||(m=e.init_compendium.match(/senses/i),m&&m[0]&&(e.senses_compendium=Q.trimBoth(e.init_compendium.slice(m.index+7)))),e.senses_compendium&&(m=e.senses_compendium.match(/perception/i),m?$.vision=e.senses_compendium.slice(0,m.index-1):$.vision=e.senses_compendium),e.speed_compendium&&(te=c(e.speed_compendium),L(te,re,$)),e.alignment&&($.alignment=e.alignment.toUpperCase()),e.space_compendium&&($.space=I(e.space_compendium)),ie=d(e.reach_compendium),ie?($.reach=ie.reach,ie.reachNotes&&($["reach-notes"]=ie.reachNotes)):(ie={},ie.reach=5,ie.reachExceptions=[]),ce=W(Y,J,re,me,ge,e.cmb_compendium,$),K.default.extend(Pe,$),Q.setWrapper($,ee.default.silentParams,function(){Z.default.notice("saved 1")}),$={},q(_e,Pe.race,Pe.level,$),K.default.size($)&&(K.default.extend(Pe,$),Q.setWrapper($,ee.default.silentParams,function(){Z.default.notice("saved 2")}),$={}),B(Y,J,re,me,ce,ie,e["npc-melee-attacks-text"],e["npc-ranged-attacks-text"],$),K.default.size($)&&(K.default.extend(Pe,$),Q.setWrapper($,ee.default.silentParams,function(){Z.default.notice("saved 3")}),$={}),e["npc-spells-prepared_compendium"]?(ke=e["npc-spells-prepared_compendium"],he=!0):e["npc-spells-known-text"]&&(ke=e["npc-spells-known-text"]),ke&&(Ie=0,$.use_spells=1,u=C(ke),u&&($.use_spells=1,f=x(u,Y,ae,!1,he),P(f,Ie,Pe,$),S(u,f,$),K.default.size($)&&(K.default.extend(Pe,$),Q.setWrapper($,ee.default.silentParams,function(){Z.default.notice("saved 4")}),$={}))),e["npc-spellike-ability-text"]&&(X=A(e["npc-spellike-ability-text"]),X&&(f=x(X,Y,ae,!0),$=T(X,f,Pe.race,Pe.level,$),K.default.size($)&&(K.default.extend(Pe,$),Q.setWrapper($,ee.default.silentParams,function(){Z.default.notice("saved 5")}),$={}))),y=v($,e["npc-special-attacks"],ce.cmb),y&&y.length>0&&(V=K.default.groupBy(y,"specialtype"),E(V.attack,ce,Y,re,null,null,J,$),xe=V.ability,K.default.size($)&&(K.default.extend(Pe,$),Q.setWrapper($,ee.default.silentParams,function(){Z.default.notice("saved 6")}),$={})),e.content_compendium&&(ye=k(e.content_compendium),ye?(ye.description&&K.default.size(ye.description)>0&&(ve=K.default.reduce(ye.description,function(e,t){return e+=" ",e+=t},""),$.character_description=ve),ye.specialAbilities&&(xe=j(xe,ye.specialAbilities))):$.character_description=e.content_compendium),e.SQ_compendium&&(Se=w(e.SQ_compendium),Se&&(xe=j(xe,Se))),xe&&K.default.size(xe)>0&&(U(xe,Y,Pe.race,Pe.level,$),Ae=K.default.find(xe,function(e){return/sneak.attack/i.test(e.name)}),Ae&&($.global_precision_dmg_macro="[[[[floor((@{level}+1)/2)]]d6]]",$.global_precision_dmg_type=Ae.name),K.default.size($)&&(K.default.extend(Pe,$),Q.setWrapper($,ee.default.silentParams,function(){Z.default.notice("saved 7")}),$={})),e.skills_compendium&&(oe=b(e.skills_compendium),_=p(e.type_compendium),e.racial_mods_compendium&&(se=g(e.racial_mods_compendium)),oe&&K.default.size(oe)>0&&D(oe,se,Y,re,_,J,be,$))}catch(e){Z.default.error("importFromCompendium outer at end",e)}finally{K.default.size($)||K.default.size(Pe)?($.npc_import_now=0,$["npc-compimport-show"]=0,$.modify_dmg_by_size=1,$.use_buff_bonuses=1,Te&&($.is_newsheet=1,$.recalc1=1),Q.setWrapper($,ee.default.silentParams,function(){Z.default.notice("##### finished settings now done"),n(Te)})):($.npc_import_now=0,$["npc-compimport-show"]=0,Q.setWrapper($,ee.default.silentParams,r))}})}Object.defineProperty(t,"__esModule",{value:!0}),t.importFromCompendium=X;var V=a(2),K=r(V),$=(a(0),a(1)),Z=r($),Y=a(3),Q=n(Y),J=a(4),ee=r(J),te=a(19),ae=n(te),ne=a(28),re=r(ne),ie=a(6),le=n(ie),se=a(5),oe=n(se),ce=a(14),ue=n(ce),de=a(15),pe=n(de),fe=a(10),me=n(fe),_e=a(25),ge=(n(_e),["npc-spellike-ability-text","npc-spells-known-text","character_name","cr_compendium","xp_compendium","alignment","size_compendium","type_compendium","init_compendium","senses_compendium","npc-aura","ac_compendium","npc_hp_compendium","fort_compendium","ref_compendium","will_compendium","dr_compendium","sr_compendium","npc-defensive-abilities","immunities","resistances","weaknesses","speed_compendium","space_compendium","reach_compendium","npc-melee-attacks-text","npc-ranged-attacks-text","npc-special-attacks","str_compendium","dex_compendium","con_compendium","int_compendium","wis_compendium","cha_compendium","bab_compendium","cmb_compendium","cmd_compendium","class_compendium","npc-feats-text","skills_compendium","racial_mods_compendium","environment","organization","other_items_treasure","languages","SQ_compendium","content_compendium","npc-spells-prepared_compendium"]);on("change:npc_import_now",Z.default.callback(function(e){"player"!==e.sourceType&&"api"!==e.sourceType||(Z.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),getAttrs(["npc_import_now"],function(t){1===parseInt(t.npc_import_now,10)&&X(e)}))})),on("sheet:compendium-drop",Z.default.callback(function(e){"player"===e.sourceType&&(Z.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),X(e,function(){getAttrs(["vision"],function(e){var t,a={},n=0;a.bar1_link="HP",a.light_hassight=1,e.vision&&(t=e.vision.match(/darkvision (\d+)/i),t&&t[1]&&(n=parseInt(t[1],10)||60,a.light_radius=n,a.light_dimradius=n)),setDefaultToken(a)})}))}))},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function i(e){"giant"===e?getAttrs(["npc-type","size","AC-natural","is_undead","npc-cr","STR-base","STR","STR-mod","CON-base","CON","CON-mod","DEX-base","DEX","DEX-mod"],function(e){var t={},a="",n=0;a=d.getTranslated("giant"),t["npc-type"]=a+" "+e["npc-type"],t=_.modifyAbility("STR",4,e,t),t=_.modifyAbility("DEX",-2,e,t),t=parseInt(e.is_undead,10)?_.modifyAbility("CHA",4,e,t):_.modifyAbility("CON",4,e,t),n=parseInt(e["AC-natural"],10)||0,n+=3,t["AC-natural"]=n,n=parseInt(e["npc-cr"],10)||0,n++,t["npc-cr"]=n,t=b.updateSize(1,e,null,t),d.setWrapper(t,f.default.silentParams,y.recalculate)}):"giantremove"===e?getAttrs(["npc-type","size","AC-natural","is_undead","npc-cr","STR-base","STR","STR-mod","CON-base","CON","CON-mod","DEX-base","DEX","DEX-mod"],function(e){var t={},a="",n=0;a=d.getTranslated("giant")+" ",e["npc-type"]&&(t["npc-type"]=e["npc-type"].replace(a,"")),t=_.modifyAbility("STR",-4,e,t),t=_.modifyAbility("DEX",2,e,t),t=parseInt(e.is_undead,10)?_.modifyAbility("CHA",-4,e,t):_.modifyAbility("CON",-4,e,t),n=parseInt(e["AC-natural"],10)||0,n-=3,t["AC-natural"]=n,n=parseInt(e["npc-cr"],10)||0,n--,t["npc-cr"]=n,t=b.updateSize(-1,e,null,t),d.setWrapper(t,f.default.silentParams,y.recalculate)}):"young"===e?getAttrs(["npc-type","size","AC-natural","is_undead","npc-cr","STR-base","STR","STR-mod","CON-base","CON","CON-mod","DEX-base","DEX","DEX-mod"],function(e){var t={},a="",n=0;a=d.getTranslated("young"),t["npc-type"]=a+" "+e["npc-type"],t=_.modifyAbility("STR",-4,e,t),t=_.modifyAbility("DEX",4,e,t),t=parseInt(e.is_undead,10)?_.modifyAbility("CHA",-4,e,t):_.modifyAbility("CON",-4,e,t),n=parseInt(e["AC-natural"],10)||0,n=Math.max(0,n-2),t["AC-natural"]=n,n=parseInt(e["npc-cr"],10)||0,n--,n<=0&&(n=".5"),t["npc-cr"]=n,t=b.updateSize(-1,e,null,t),d.setWrapper(t,f.default.silentParams,y.recalculate)}):"youngremove"===e?getAttrs(["npc-type","size","AC-natural","is_undead","npc-cr","STR-base","STR","STR-mod","CON-base","CON","CON-mod","DEX-base","DEX","DEX-mod"],function(e){var t={},a="",n=0;a=d.getTranslated("young")+" ",e["npc-type"]&&(t["npc-type"]=e["npc-type"].replace(a,"")),t=_.modifyAbility("STR",4,e,t),t=_.modifyAbility("DEX",-4,e,t),t=parseInt(e.is_undead,10)?_.modifyAbility("CHA",4,e,t):_.modifyAbility("CON",4,e,t),n=parseInt(e["AC-natural"],10)||0,n+=2,t["AC-natural"]=n,n=parseInt(e["npc-cr"],10)||0,n++,t["npc-cr"]=n,t=b.updateSize(1,e,null,t),d.setWrapper(t,f.default.silentParams,y.recalculate)}):"advanced"===e?getAttrs(["npc-type","size","is_undead","AC-natural","npc-cr","STR-base","STR","STR-mod","CON-base","CON","CON-mod","DEX-base","DEX","DEX-mod","INT-base","INT","INT-mod","WIS-base","WIS","WIS-mod","CHA-base","CHA","CHA-mod"],function(e){var t={},a="",n=0;a=d.getTranslated("advanced"),t["npc-type"]=a+" "+e["npc-type"],t=_.modifyAbility("STR",4,e,t),parseInt(e.is_undead,10)||(t=_.modifyAbility("CON",4,e,t)),t=_.modifyAbility("DEX",4,e,t),parseInt(e["INT-base"])>2&&(t=_.modifyAbility("INT",4,e,t)),t=_.modifyAbility("WIS",4,e,t),t=_.modifyAbility("CHA",4,e,t),n=parseInt(e["AC-natural"],10)||0,n+=2,t["AC-natural"]=n,n=parseInt(e["npc-cr"],10)||0,n++,t["npc-cr"]=n,d.setWrapper(t,f.default.silentParams,y.recalculate)}):"degenerate"===e?getAttrs(["npc-type","size","is_undead","AC-natural","npc-cr","STR-base","STR","STR-mod","CON-base","CON","CON-mod","DEX-base","DEX","DEX-mod","INT-base","INT","INT-mod","WIS-base","WIS","WIS-mod","CHA-base","CHA","CHA-mod"],function(e){var t={},a="",n=0;a=d.getTranslated("degenerate"),t["npc-type"]=a+" "+e["npc-type"],t=_.modifyAbility("STR",-4,e,t),parseInt(e.is_undead,10)||(t=_.modifyAbility("CON",-4,e,t)),t=_.modifyAbility("DEX",-4,e,t),t=_.modifyAbility("INT",-4,e,t),t=_.modifyAbility("WIS",-4,e,t),t=_.modifyAbility("CHA",-4,e,t),n=parseInt(e["AC-natural"],10)||0,n-=2,t["AC-natural"]=n,n=parseInt(e["npc-cr"],10)||0,n--,n<=0&&(n=".5"),t["npc-cr"]=n,d.setWrapper(t,f.default.silentParams,y.recalculate)}):"celestial"!==e&&"fiendish"!==e&&"entropic"!==e&&"resolute"!==e||getAttrs(["npc-type","npc-cr","npc-hd","DR","SR-macro-text","SR","resistances","vision","CHA-mod"],function(t){var a={},n="",r="",i="",l=0,s=0,o=0,c="",u="";n=d.getTranslated(e),a["npc-type"]=n+" "+t["npc-type"],s=parseInt(t["npc-hd"],10)||0,/darkvision/i.test(t.vision)||(n=d.getTranslated("darkvision"),n=n+" 60"+getTranslationByKey("feet-abbrv"),t.vision&&(n=n+" "+t.vision),a.vision=n),"celestial"===e?(i="Evil",r="good",n="Resist Cold, Acid, Electricity "):"fiendish"===e?(i="Good",r="evil",n="Resist Cold and Fire "):"entropic"===e?(i="Lawful",r="chaos",n="Resist Acid and Fire "):"resolute"===e&&(i="chaotic",r="law",n="Resist Acid, Cold, and Fire "),n+=s<5?" 5;":s>=5&&s<=10?" 10;":" 15;",a.resistances=n+(t.resistances||""),n="",s>=5&&s<=10?n="5/"+i+";":s>10&&(n="10/"+i+";"),n&&(a.DR=n+(t.DR||"")),l=parseInt(t["npc-cr"],10)||0,s>=5&&(l++,a["npc-cr"]=o),o=parseInt(t.SR,10)||0,o=)|(<=)|(<<)|(>>)|(\*\*)|[?:|\^&=><%!~])/))?t("extoperator",a):(a=e.match(/^[\-+*\/td]/))?t("baseoperator",a):(a=e.match(/^\[([^\]]+)\]/))?t("label",a):(a=e.match(/^\$\{([^'"\($\}][^}]*)\}/))?t("variable",a):(a=e.match(/^\$\{/),a?t("openvariable",a):{type:"raw",text:e.charAt(0)}):e}function n(e){return e.tok=a(e.s),e.tok&&(e.s=e.s.substring(e.tok.text.length)),e}function i(e,t){function a(e){return e.replace(/\\n/g,"\n").replace(/\\r/g,"\r").replace(/\\t/g,"\t").replace(/\\/g,"")}for(var r,i=-1,l=i;0===(i-l&1);){if(i=e.s.indexOf(t,i+1),i<0)return;for(l=i-1;l>=0&&"\\"===e.s.charAt(l);)l--}return r=e.s.substring(0,i).split("\\\\").map(a).join("\\"),e.s=e.s.substring(i),n(e),r}function l(){var e,t,a,n=v.pop(),r=k.pop();return n.unary?void k.push({type:"baseoperator"===n.type?"unop":"unopex",datatype:r.datatype,operator:n.text,operand:r}):(e=k.pop(),":"!==n.text?("d"===n.text||"t"===n.text?a="number":e.datatype===r.datatype?a=e.datatype:"string"!==e.datatype&&"string"!==r.datatype||(a="string"),void k.push({type:"baseoperator"===n.type?"binop":"binopex",datatype:a,operator:n.text,left:e,right:r,mods:n.mods,label:n.label})):(n=v.pop(),"?"!==n.text?"Error: Expected ? but got "+n.text:(t=k.pop(),void k.push({type:"cond",cond:t,left:e,right:r,datatype:e.datatype===r.datatype?e.datatype:void 0}))))}function s(e){var t;for(e.precedence=(e.unary?h[e.text]:b[e.text])||0;v[v.length-1].precedence>=e.precedence;)if(t=l())return t;v.push(e)}function c(e){return","===e||")"===e}function u(){var t,a,l,o,d,p,f,m,_,b,v,w;if(n(e),!e.tok)return"Error: Unrecognized token: "+e.s.split(" ",1)[0];for(;"whitespace"===e.tok.type;)if(n(e),!e.tok)return"Error: Unrecognized token: "+e.s.split(" ",1)[0];switch(e.tok.type){case"function":if(a=e.tok.match[1],l=g[a],void 0===l)return"Error: Unrecognized function: "+a;for(Array.isArray(l)?(o=l[0],d=l[1]):(o=l,d=l),f=[];e.tok&&")"!==e.tok.text;){if(m=r(e,c),"string"==typeof m)return m;if(f.push(m),!e.tok)return"Error: Unterminated function: "+a;if(!c(e.tok.text))return"Error: Expected ',' or ')' to continue/close '"+a+"(', but got '"+e.tok.text+"'"}return o<0&&(o=f.length),(isNaN(d)||d<0)&&(d=f.length),f.lengthd?"Error: Function '"+a+"' requires at most "+d+" argument(s)":void k.push({type:"function",datatype:"number",function:a,args:f});case"number":return void k.push({type:"number",datatype:"number",value:parseFloat(e.tok.text)});case"variable":return void k.push({type:"variable",value:e.tok.match[1]});case"quote":return p=i(e,e.tok.text),"string"!=typeof p?"Error: Unterminated string":void k.push({type:"string",datatype:"string",value:p});case"opengroup":if(_=e.tok.text,b=y[_],v=r(e,b),"string"==typeof v)return v;if(k.push(v),e.tok.text!==b)return"Error: Expected '"+b+"' to close '"+_+"', but got '"+e.tok.text+"'";return;case"openvariable":return w=r(e,"}"),"string"==typeof w?w:"}"!==e.tok.text?"Error: Expected '}' to close '${', but got '"+e.tok.text+"'":void k.push({type:"variable",value:w});case"extoperator":case"baseoperator":return h[e.tok.text]?(e.tok.unary=!0,t=s(e.tok),t?t:u()):"Error: "+e.tok.text+" is not a unary operator"}return"Error: Unrecognized token: "+e.tok.text+("raw"===e.tok.type?e.s.split(" ",1)[0]:"")}var d,p,f,m,_="function"==typeof t?t:function(e){return e==t},g={abs:1,ceil:1,floor:1,round:1,max:[1],min:[1]},b={"?":1,":":2,"||":3,"&&":4,"|":5,"^":6,"&":7,"=":8,"==":8,"!=":8,">=":9,">":9,"<":9,"<=":9,"<<":10,">>":10,"+":11,"-":11,"*":12,"/":12,"%":12,"**":14,t:98,d:99},h={"!":13,"~":13,"-":13},y={"(":")","{":"}"},v=[{precedence:0}],k=[];if("string"==typeof e&&(e={s:e}),f=u())return f;for(n(e);e.tok&&!_(e.tok.text)&&(t||"raw"!==e.tok.type);n(e))switch(e.tok.type){case"extoperator":case"baseoperator":if(o="d"===e.tok.text?e.tok:null,f=s(e.tok))return f;if(o&&"F"===e.s.charAt(0))k.push({type:"rollspec",value:"F"}),e.s=e.s.substring(1);else if("t"===e.tok.text){if("["!==e.s.charAt(0))return"Error: 't' operator requires '[table]' argument";if(p=e.s.match(/^\[([^'"$(\]][^\]]*)\]/))d=p[1],e.s=e.s.substring(p[0].length);else{if(e.s=e.s.substring(1),d=r(e,"]"),"string"==typeof d)return d;if("]"!==e.tok.text)return"Error: Expected ']' to close 't[', but got '"+e.tok.text+"'"}k.push({type:"tablename",value:d})}else if(f=u())return f;o&&(p=e.s.match(/^[acdfhkloprs0-9<=>!]+/),p&&(o.mods=p[0],e.s=e.s.substring(p[0].length)));break;case"label":if(v.length>0&&"d"===v[v.length-1].text){v[v.length-1].label=e.tok.match[1];break}m=k.pop(),m&&(m.label=e.tok.match[1],k.push(m))}for(;v.length>1;)if(f=l())return f;return k.pop()}function i(e){p.default.debug("EXEXP:"+e)}function l(e,t,a,n){function r(e,t,a,n,i,l){var s,o,c,d=[],p=0;switch(e.label&&(t[e.label]=e),e.type){case"number":case"rollspec":return e.baseValid=!0,e;case"string":return e;case"tablename":if("string"!=typeof e.value){if(s=r(e.value,t,a,n,i,!0),"string"==typeof s)return s;if("number"===s.type&&(s.value=String(s.value),s.type="string"),"string"!==s.type)return e.baseValid&&(e.baseValid=!1),n.push(e.value),e;e.value=s.value}return e.baseValid=!0,e;case"function":for(p=0;p=":function(e,t){return e>=t},">":function(e,t){return e>t},"<":function(e,t){return e>":function(e,t){return e>>t},"+":function(e,t){return e+t},"-":function(e,t){return e-t},"*":function(e,t){return e*t},"/":function(e,t){return e/t},"%":function(e,t){return e%t},"**":Math.pow,d:function(e,t){var a=0,n=0;for(n=0;n0;){if(g=r(w.shift(),n,k,w,A,!0),"string"==typeof g)return d(m);"string"===g.type||"number"===g.type?I=!0:x.push(g)}w=x}for(C=t.length-1;C>=0;C--)(t[C].baseValid||"number"===t[C].type||"string"===t[C].type)&&(w.length>0&s(t[C])||e.splice(C,2,(e[C]||"")+c(t.splice(C,1)[0])+(e[C+1]||"")));return A.length>0?(p.default.error("Cannot evaluate"),""):t.length>0&&(1!==t.length||"binop"!==t[0].type)?l(e,t,[],n):b=e.join("")}function s(e){var t,a,n,s=[],o=[];return e=e.replace(/\s/g,"").replace(/^-/,"0-").replace(/\(-/g,"(0-").replace(/^\+/,"").replace(/\(\+/g,"(0+"),t=e,a={s:t},n=r(a,null),"string"==typeof n?(i("could not parse"+e),""):(o.push(n),a.s=a.tok?a.tok.text+a.s:a.s,s.push(a.s),l(s,o,[],{}))}Object.defineProperty(t,"__esModule",{value:!0}),t.write=i,t.handleExpression=s;var o,c=a(2),u=n(c),d=(a(0),a(1)),p=n(d)},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){var a=function(){"function"==typeof e&&e()};getAttrs(B,function(e){var n={},r={};n=g.default.reduce(O,function(t,a){var n=parseInt(e["buff_"+a+"-total"],10)||0,r=parseInt(e["buff_"+a+"_exists"],10)||0;return n&&(t["buff_"+a+"-total"]=0),r&&(t["buff_"+a+"_exists"]=0),t},{}),n=g.default.reduce(I.abilities,function(t,a){var n=parseInt(e["buff_"+a+"-total_penalty"],10)||0,r=parseInt(e["buff_"+a+"_penalty_exists"],10)||0;return n&&(t["buff_"+a+"-total_penalty"]=0),r&&(t["buff_"+a+"_penalty_exists"]=0),t},n),g.default.size(n)?(t&&(r=w.default.silentParams),v.setWrapper(n,r,a)):a()})}function l(e){getSectionIDs("repeating_buff",function(t){var a,n;return t&&g.default.size(t)?(n=v.cartesianAppend(["_buff-"],O,["_macro-text","","-show"]),n=n.concat(["_buff-enable_toggle","_buff-name","_buff-notes"]),a=v.cartesianAppend(["repeating_buff_"],t,n),void getAttrs(a,function(a){e(t,a)})):e(null,null)})}function s(e){var t,a=g.default.once(function(){"function"==typeof e&&e()});try{t=v.cartesianAppend(["buff_"],O,["-total","_exists"]).concat(v.cartesianAppend(["buff_"],I.abilities,["-total_penalty","_penalty_exists"]))}catch(e){return h.default.error("PFBuffsOld.resetStatuspanel error creating field array, abort:",e),void a()}getAttrs(t,function(e){var t={},n=function(t,a){var n,r;return a=a||"",n=parseInt(e[t+"-total"+a],10)||0,r=parseInt(e[t+a+"_exists"],10)||0,0===n||r?0===n&&r?0:void 0:1};try{t=g.default.reduce(O,function(e,t){var a,r;try{a="buff_"+t,r=n(a,""),(r||0===r)&&(e[a+"_exists"]=r)}catch(e){}finally{return e}},t),t=g.default.reduce(I.abilities,function(e,t){var a,r;try{a="buff_"+t,r=n(a,"_penalty"),(r||0===r)&&(e[a+"_penalty_exists"]=r)}catch(e){}finally{return e}},t)}catch(e){h.default.error("PFBuffsOld.resetStatuspanel error inside calculate exists",e)}finally{g.default.size(t)>0?v.setWrapper(t,{silent:!0},a):a()}})}function o(e,t,a,n){var r=0,i={sum:0,pen:0},l=e,s=[];try{n=n||{},W[e]&&(l=W[e]),h.default.notice("Updating "+e+" the total is "+l,W,a),r=I.abilities.indexOf(e)>=0&&e.indexOf("skill")<9,t=t.filter(function(t){var n="repeating_buff_"+t+"_buff-";return 0!==(parseInt(a[n+e+"-show"],10)||0)&&0!==(parseInt(a[n+e],10)||0)}),h.default.debug("updating "+e+" there are "+g.default.size(t)+" rows"),g.default.size(t)>0&&(s=t.map(function(t){return parseInt(a["repeating_buff_"+t+"_buff-"+e],10)||0}),h.default.debug("PFBuffsOld ROWS NOW:",s),"HP-temp"===e?i.sum=s.filter(function(e){return e>0}).reduce(function(e,t){return e+=t},0):"size"===e?(i=s.reduce(function(e,t){return t>0?e.sum=Math.max(e.sum,t):t<0&&(e.pen=Math.min(e.pen,t)),e},i),i.sum+=i.pen,i.pen=0):r?i=s.reduce(function(e,t){return t<0?e.pen+=t:t>0&&(e.sum+=t),e},i):(h.default.debug("now calculating sum for "+e),i.sum=s.reduce(function(t,a){return h.default.debug("ADDING "+a+" to m for "+e+" is "+a),t+=a},0),h.default.debug("calcuatling "+e+" sum is "+i.sum))),(parseInt(a["buff_"+l+"-total"],10)||0)!==i.sum&&(n["buff_"+l+"-total"]=i.sum),i.sum?n["buff_"+l+"_exists"]=1:1===(parseInt(a["buff_"+l+"_exists"],10)||0)&&(n["buff_"+l+"_exists"]=0),r&&((parseInt(a["buff_"+l+"-total_penalty"],10)||0)!==i.pen&&(n["buff_"+l+"-total_penalty"]=i.pen),i.pen?n["buff_"+l+"_penalty_exists"]=1:1===(parseInt(a["buff_"+l+"_penalty_exists"],10)||0)&&(n["buff_"+l+"_penalty_exists"]=0))}catch(e){h.default.error("PFBuffsOld.updateBuffTotal",e)}finally{return n}}function c(e,t,a){var n=g.default.once(function(){"function"==typeof t&&t()}),r=I.abilities.indexOf(e)>=0&&e.indexOf("skill")<9;getSectionIDs("repeating_buff",function(t){var i,l,s=e;t?(W[e]&&(s=W[e]),i=v.cartesianAppend(["repeating_buff_"],t,["_buff-"+e,"_buff-"+e+"-show","_buff-enable_toggle"]),l=["buff_"+s+"-total","buff_"+s+"_exists"],r&&(l=l.concat(["buff_"+s+"-total_penalty","buff_"+s+"_penalty_exists"])),i=i.concat(l),getAttrs(i,function(r){var i={},l={};try{t=t.filter(function(e){var t="repeating_buff_"+e+"_buff-";return parseInt(r[t+"enable_toggle"],10)||0}),l=o(e,t,r,l),W[e]&&(l["buff_"+e+"-total"]=0,l["buff_"+e+"_exists"]=0,l["buff_"+e+"-total_penalty"]=0,l["buff_"+e+"_penalty_exists"]=0)}catch(t){h.default.error("PFBuffsOld.updateBuffTotalAsync errrou on col "+e,t)}finally{g.default.size(l)?(h.default.debug("######################","PFBuffsOld setting ",l),a&&(i=w.default.silentParams),v.setWrapper(l,i,n)):n()}})):n()})}function u(e,t){var a=g.default.once(function(){"function"==typeof e&&e()});h.default.debug("PFBuffsOld.updateAllBuffTotalsAsync"),getSectionIDs("repeating_buff",function(e){var n;return e&&0!==g.default.size(e)?(n=v.cartesianAppend(["repeating_buff_"],e,["_buff-"],O,["","-show"]),n=n.concat(v.cartesianAppend(["repeating_buff_"],e,["_buff-enable_toggle"])),n=n.concat(B),n.push("use_buff_bonuses"),h.default.debug("############ BUFF FIELDS ARE:",n),void getAttrs(n,function(n){var r=!1,l={},s={};try{
+if(h.default.debug("PFBuffsOld.updateAllBuffTotalsAsync found:",n),r=parseInt(n.use_buff_bonuses,10)||0,e=e.filter(function(e){return parseInt(n["repeating_buff_"+e+"_buff-enable_toggle"],10)}),!e||0===g.default.size(e))return h.default.debug("there are no ids with enable toggle checked"),void i(a,t);g.default.each(O,function(t){s=o(t,e,n,s,r)})}catch(e){h.default.error("PFBuffsOld.updateAllBuffTotalsAsync errrou on col ",e)}finally{g.default.size(s)?(h.default.debug("######################","PFBuffsOldsetting ",s),t&&(l=w.default.silentParams),v.setWrapper(s,l,a)):a()}})):void i(a,t)})}function d(e,t,a,n){var r=function(){"function"==typeof a&&a()},i=v.getRepeatingIDStr(e),l="repeating_buff_"+i+"buff-"+t;return"size"===t?void r():void v.evaluateAndSetNumber(l+"_macro-text",l,0,function(e,a,i){i?c(t,r,n):r()},!0,r)}function p(e,t){var a=g.default.once(function(){s(),"function"==typeof e&&e()}),n=g.default.size(O),r=g.default.after(n,function(){u(a,t)}),l=function(e,t){var a,n=g.default.size(e);if(h.default.debug("PFBuffsOld.recalculateBuffColumn:"+t),"size"===t)return void r();a=g.default.after(n,function(){r()});try{if("size"===t)return void r();g.default.each(e,function(e){try{getAttrs(["repeating_buff_"+e+"_buff-enable_toggle","repeating_buff_"+e+"_buff-"+t+"-show"],function(n){parseInt(n["repeating_buff_"+e+"_buff-enable_toggle"],10)&&parseInt(n["repeating_buff_"+e+"_buff-"+t+"-show"],10)?v.evaluateAndSetNumber("repeating_buff_"+e+"_buff-"+t+"_macro-text","repeating_buff_"+e+"_buff-"+t,0,a,!0):a()})}catch(n){h.default.error("PFBuffsOld.recalculate_recalculateBuffColumn:"+t+", rowid"+e,n),a()}})}catch(e){h.default.error("PFBuffsOld.recalculate_recalculateBuffColumn OUTER error:"+t,e),r()}};getSectionIDs("repeating_buff",function(e){try{g.default.size(e)>0?g.default.each(O,function(t){l(e,t)}):i(a)}catch(e){h.default.error("PFBuffsOld.recalculate.recalculateAll",e),a()}})}function f(e){var t=g.default.once(function(){"function"==typeof e&&e()}),a=function(e){var t=g.default.once(function(){"function"==typeof e&&e()}),a=function(){v.setWrapper({migrated_buffs_rangeddmg_abiilty:1},w.default.silentParams,t)};getAttrs(["migrated_buffs_rangeddmg_abiilty"],function(e){var n=parseInt(e.migrated_buffs_rangeddmg_abiilty,10)||0;return n?void t():void getSectionIDs("repeating_buff",function(e){var t;g.default.size(e)?(t=v.cartesianAppend(["repeating_buff_"],e,["_buff-DMG_macro-text","_buff-DMG","_buff-DMG-show","_buff-DMG_ranged_macro-text","_buff-DMG_ranged","_buff-Melee_macro-text","_buff-Melee","_buff-Melee-show","_buff-CMB_macro-text","_buff-CMB_ranged","_buff-Check_macro-text","_buff-Check","_buff-Check-show","_buff-check_skills_macro-text","_buff-check_skills"]),t=t.concat(["buff_Check-total","buff_check_skills-total","buff_Melee-total","buff_DMG-total","buff_DMG_ranged-total","buff-CMB-total"]),getAttrs(t,function(t){var n={},r=!1,i=0;try{e.forEach(function(e){var a="repeating_buff_"+e+"_buff-";t[a+"DMG_macro-text"]&&!t[a+"DMG_ranged_macro-text"]&&(n[a+"DMG_ranged_macro-text"]=t[a+"DMG_macro-text"],n[a+"DMG_ranged"]=parseInt(t[a+"DMG"],10)||0,parseInt(t[a+"DMG-show"],10)&&(n[a+"DMG_ranged-show"]=1)),t[a+"Check_macro-text"]&&!t[a+"check_skills_macro-text"]&&(n[a+"check_skills_macro-text"]=t[a+"Check_macro-text"],n[a+"check_skills"]=parseInt(t[a+"Check"],10)||0,r=!0,parseInt(t[a+"Check-show"],10)&&(n[a+"check_skills-show"]=1)),t[a+"Melee_macro-text"]&&!t[a+"CMB_macro-text"]&&(n[a+"CMB_macro-text"]=t[a+"Melee_macro-text"],n[a+"CMB"]=parseInt(t[a+"Melee"],10)||0,r=!0,parseInt(t[a+"Melee-show"],10)&&(n[a+"CMB-show"]=1))}),i=parseInt(t["buff_DMG-total"],10)||0,i&&(n["buff_DMG_ranged-total"]=i+parseInt(t["buff_DMG_ranged-total"],10)||0),i=parseInt(t["buff_Check-total"],10)||0,i&&(n["buff_check_skills-total"]=i+parseInt(t["buff_check_skills-total"],10)||0),i=parseInt(t["buff_Melee-total"],10)||0,i&&(n["buff_CMB-total"]=i+parseInt(t["buff_CMB-total"],10)||0)}catch(e){h.default.error("PFBuffsOld.migrateDmgAbility",e)}finally{g.default.size(n)?(v.setWrapper(n,w.default.silentParams,a),r&&(D.applyConditions(),F.updateInitiative())):a()}})):a()})})};a(t)}function m(){g.default.each(O,function(e){var t="change:repeating_buff:buff-"+e;"size"!==e&&on(t+"_macro-text",h.default.callback(function(t){h.default.debug("caught "+t.sourceAttribute+" for column "+e+", event: "+t.sourceType),d(null,e)})),on(t+"-show",h.default.callback(function(t){"player"!==t.sourceType&&"api"!==t.sourceType||(h.default.debug("caught "+t.sourceAttribute+" event: "+t.sourceType),h.default.debug("we updated "+e+"!!!!!!!!!!!!!!!!!!!!!!!!!!!!"),getAttrs(["repeating_buff_buff-"+e,"repeating_buff_buff-enable_toggle"],function(t){parseInt(t["repeating_buff_buff-enable_toggle"],10)&&parseInt(t["repeating_buff_buff-"+e],10)&&(h.default.debug("Show or don't show update "+e),c(e))}))}))}),on("change:repeating_buff:buff-size",h.default.callback(function(e){"player"!==e.sourceType&&"api"!==e.sourceType||(h.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),c("size"))})),on("remove:repeating_buff",h.default.callback(function(e){h.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"===e.sourceType&&u()})),on("change:repeating_buff:buff-enable_toggle",h.default.callback(function(e){var t;"player"!==e.sourceType&&"api"!==e.sourceType||(h.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),t=O.map(function(e){return"repeating_buff_buff-"+e}),t=t.concat(t.map(function(e){return e+"-show"})),getAttrs(t,function(e){g.default.each(O,function(t){parseInt(e["repeating_buff_buff-"+t+"-show"],10)&&parseInt(e["repeating_buff_buff-"+t],10)&&c(t)})}))}))}Object.defineProperty(t,"__esModule",{value:!0}),t.recalculate=t.buffTotFields=t.buffToTotExceptions=t.buffColumns=void 0,t.getAllRowAttrs=l,t.reEvaluateCustomMacros=p,t.migrate=f;var _=a(2),g=r(_),b=(a(0),a(1)),h=r(b),y=a(3),v=n(y),k=a(4),w=r(k),A=a(5),C=(n(A),a(10)),I=n(C),x=a(23),P=(n(x),a(8)),S=(n(P),a(7)),T=(n(S),a(12)),E=(n(T),a(17)),M=(n(E),a(20)),D=n(M),R=a(21),F=n(R),N=a(16),L=(n(N),a(14)),z=(n(L),a(15)),O=(n(z),t.buffColumns=["Ranged","Melee","CMB","DMG","DMG_ranged","AC","Touch","CMD","flat-footed","speed","initiative","size","check_skills","HP-temp","Fort","Will","Ref","Check","CasterLevel","STR","DEX","CON","INT","WIS","CHA","STR_skills","DEX_skills","CON_skills","INT_skills","WIS_skills","CHA_skills"]),W=t.buffToTotExceptions={Check:"check_ability",DMG:"dmg_melee"},B=t.buffTotFields=g.default.chain(O).map(function(e){var t=I.abilities.indexOf(e)>=0&&e.indexOf("skill")<1;return t?["buff_"+e+"-total","buff_"+e+"_exists","buff_"+e+"-total_penalty","buff_"+e+"_penalty_exists"]:["buff_"+e+"-total","buff_"+e+"_exists"]}).flatten().value().concat(["buff_check_ability-total","buff_dmg_melee-total"]);t.recalculate=h.default.callback(function(e,t,a){var n=g.default.once(function(){"function"==typeof e&&e()});getAttrs(["use_buff_bonuses"],function(e){parseInt(e.use_buff_bonuses,10)?(h.default.debug("USING NEW BUFFS"),n()):(h.default.debug("USING OLD BUFFS"),f(function(){p(n,t)}))})});m()},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t,a){M.updateAbilityScore("DEX"),M.updateAbilityScore("STR"),z.applyConditions(null,null,a)}function l(e,t,a){M.updateAbilityScore("DEX"),z.applyConditions(null,null,a)}function s(e,t,a){M.applyConditions(function(){N.applyConditions(),z.applyConditions()},null,a),P.applyConditions()}function o(e,t,a){getAttrs(["condition-Pinned","condition-Grappled"],function(e){parseInt(e["condition-Pinned"],10)&&parseInt(e["condition-Grappled"],10)?A.setWrapper({"condition-Pinned":"0"},k.default.silentParams,function(){s(a)}):s(a)})}function c(e,t,a){getAttrs(["condition-Pinned","condition-Grappled"],function(e){parseInt(e["condition-Pinned"],10)&&parseInt(e["condition-Grappled"],10)?A.setWrapper({"condition-Grappled":"0"},k.default.silentParams,function(){s(a)}):s(a)})}function u(e){M.applyConditions(null,null,e),N.applyConditions(null,null,e),G.updateModifiedSpeed()}function d(e,t,a){getAttrs(["condition-Fatigued","condition-Exhausted"],function(e){e=b.default.mapObject(e,function(e,t){return parseInt(e,10)||0}),e["condition-Fatigued"]&&e["condition-Exhausted"]?A.setWrapper({"condition-Exhausted":"0"},k.default.silentParams,function(){u(a)}):u(a)})}function p(e,t,a){getAttrs(["condition-Fatigued","condition-Exhausted"],function(e){e=b.default.mapObject(e,function(e,t){return parseInt(e,10)||0}),e["condition-Fatigued"]&&e["condition-Exhausted"]?A.setWrapper({"condition-Fatigued":"0"},k.default.silentParams,function(){u(a)}):u(a)})}function f(e,t,a){var n=b.default.once(function(){"function"==typeof e&&e()});getAttrs(["condition-Drained","condition_is_drained"],function(e){var t=parseInt(e["condition-Drained"],10)||0,a=parseInt(e.condition_is_drained,10)||0;0!==t&&0===a?A.setWrapper({condition_is_drained:1},k.default.silentParams,n):0===t&&0!==a?A.setWrapper({condition_is_drained:0},k.default.silentParams,n):n()})}function m(e,t){getAttrs(["migrated_fatigue_conditions","condition-Fatigued"],function(t){var a={};parseInt(t.migrate_fatigued_conditions,10)?"function"==typeof e&&e():(3===parseInt(t["condition-Fatigued"],10)&&(a["condition-Fatigued"]=0,a["condition-Exhausted"]=3),a.migrate_fatigued_conditions=1,A.setWrapper(a,k.default.silentParams,e))})}function _(){b.default.each(X.conditionEventsPlayer,function(e,t){b.default.each(e,function(e){on(t,y.default.callback(function(t){"player"!==t.sourceType&&"api"!==t.sourceType||(y.default.debug("caught "+t.sourceAttribute+" event: "+t.sourceType),e(null,null,t))}))})}),b.default.each(X.conditionEventsEither,function(e,t){b.default.each(e,function(e){on(t,y.default.callback(function(t){y.default.debug("caught "+t.sourceAttribute+" event: "+t.sourceType),e(null,null,t)}))})}),on("change:Perception-cond",y.default.callback(function(e){y.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),T.verifyHasSkill("Perception",function(t){t?T.updateSkillAsync("Perception",e):T.updateSkillAsync("CS-Perception",e)})}))}Object.defineProperty(t,"__esModule",{value:!0}),t.recalculate=void 0,t.setParalyzed=i,t.setHelpless=l,t.migrate=m;var g=a(2),b=r(g),h=(a(0),a(1)),y=r(h),v=a(4),k=r(v),w=a(3),A=n(w),C=a(21),I=n(C),x=a(26),P=n(x),S=a(15),T=n(S),E=a(10),M=n(E),D=a(23),R=n(D),F=a(8),N=n(F),L=a(12),z=n(L),O=a(17),W=n(O),B=a(20),q=n(B),H=a(7),U=n(H),j=a(16),G=n(j),X=(t.recalculate=y.default.callback(function(e,t,a){m(function(){f(e)})}),{conditionEventsEither:{"change:condition-wounds change:has_endurance_feat change:wounds_gritty_mode":[q.applyConditions,R.applyConditions,N.applyConditions,z.applyConditions]},conditionEventsPlayer:{"change:condition-grappled":[o],"change:condition-pinned":[c],"change:condition-Fatigued":[d],"change:condition-Exhausted":[p],"change:condition-sickened":[U.updateRepeatingWeaponDamages,q.applyConditions,R.applyConditions,N.applyConditions],"change:condition-stunned":[z.updateDefenses,z.applyConditions],"change:condition-flat-footed":[z.updateDefenses],"change:condition-deafened":[I.updateInitiative,P.applyConditions,q.applyConditions],"change:condition-fascinated":[q.applyConditions],"change:condition-entangled":[M.applyConditions,N.applyConditions,G.updateModifiedSpeed],"change:condition-drained":[f,W.updateMaxHPLookup,q.applyConditions,R.applyConditions,N.applyConditions,z.applyConditions],"change:condition-fear":[q.applyConditions,R.applyConditions,N.applyConditions],"change:condition-blinded":[q.applyConditions,z.applyConditions],"change:condition-cowering":[z.applyConditions],"change:condition-invisible":[z.updateDefenses,N.applyConditions,q.applyConditions,z.applyConditions],"change:condition-dazzled":[N.applyConditions,q.applyConditions],"change:condition-prone":[z.applyConditions,N.recalculateMelee],"change:condition-paralyzed":[i],"change:condition-helpless":[l]}});_()},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){getAttrs(["customd1","customd2","customd3","customd4","customd5","customd6","customd1-name","customd2-name","customd3-name","customd4-name","customd5-name","customd6-name","allcustom_macro","NPC-allcustom_macro"],function(t){var a="",n="",r="";try{t.customd1&&(r="["+(h.escapeForChatLinkButton(t["customd1-name"])||"customd1")+"](~@{character_id}|",a+=r+"customd1_roll) ",n+=r+"NPC-customd1_roll) "),t.customd2&&(r="["+(h.escapeForChatLinkButton(t["customd2-name"])||"customd2")+"](~@{character_id}|",a+=r+"customd2_roll) ",n+=r+"NPC-customd2_roll) "),t.customd3&&(r="["+(h.escapeForChatLinkButton(t["customd3-name"])||"customd3")+"](~@{character_id}|",a+=r+"customd3_roll) ",n+=r+"NPC-customd3_roll) "),t.customd4&&(r="["+(h.escapeForChatLinkButton(t["customd4-name"])||"customd4")+"](~@{character_id}|",a+=r+"customd4_roll) ",n+=r+"NPC-customd4_roll) "),t.customd5&&(r="["+(h.escapeForChatLinkButton(t["customd5-name"])||"customd5")+"](~@{character_id}|",a+=r+"customd5_roll) ",n+=r+"NPC-customd5_roll) "),t.customd6&&(r="["+(h.escapeForChatLinkButton(t["customd6-name"])||"customd6")+"](~@{character_id}|",a+=r+"customd6_roll) ",n+=r+"NPC-customd6_roll) "),(a||n)&&(a="{{roll20=^{custom}}} {{roll21="+a+" }}",n="{{roll20=^{custom}}} {{roll21="+n+" }}")}catch(e){g.default.error("PFCustom.resetCommandMacro ",e)}finally{a!==t.allcustom_macro||n!==t["NPC-allcustom_macro"]?h.setWrapper({allcustom_macro:a,"NPC-allcustom_macro":n},v.default.silentParams,e):"function"==typeof e&&e()}})}function l(){h.setWrapper({extra_fields_attacks_show:1,extra_fields_skills_show:1,extra_fields_saves_show:1,extra_fields_spells_show:1,extra_fields_defense_show:1,extra_fields_caster_show:1,extra_fields_abilities_show:1,extra_fields_init_show:1,extra_fields_speeds_show:1,extra_fields_conditions_show:1},v.default.silentParams)}function s(){h.setWrapper({extra_fields_attacks_show:0,extra_fields_skills_show:0,extra_fields_saves_show:0,extra_fields_spells_show:0,extra_fields_defense_show:0,extra_fields_caster_show:0,extra_fields_abilities_show:0,extra_fields_init_show:0,extra_fields_speeds_show:0,extra_fields_conditions_show:0},v.default.silentParams)}function o(e,t,a){var n=m.default.size(v.default.equationMacros),r=m.default.once(function(){"function"==typeof e&&e()}),i=m.default.after(n,r);try{m.default.each(v.default.equationMacros,function(e,a){try{h.evaluateAndSetNumber(a,e,0,i,t)}catch(e){g.default.error("PFSheet.recalcExpressions",e),i()}})}catch(e){g.default.error("PFSheet.recalcExpressions OUTER wtf how did this happen?",e)}finally{r()}}function c(e,t,a){var n=m.default.size(v.default.abilityScoreManualDropdowns),r=m.default.size(v.default.levelPlusBABManualDropdowns),i=m.default.once(function(){"function"==typeof e&&e()}),l=m.default.after(2,i),s=m.default.after(n,l),o=m.default.after(r,l);try{m.default.each(v.default.abilityScoreManualDropdowns,function(e,a){try{C.setDropdownValue(a,e,s,t)}catch(e){g.default.error("PFSheet.recalcDropdowns",e),s()}}),m.default.each(v.default.levelPlusBABManualDropdowns,function(e){try{C.setDropdownValue(e,e+"-mod",o,t)}catch(e){g.default.error("PFSheet.recalcDropdowns",e),o()}})}catch(e){g.default.error("PFSheet.recalcDropdowns OUTER wtf how did this happen?",e)}finally{i()}}function u(e,t,a){var n,r=m.default.size(v.default.customEquationMacros),i=m.default.once(function(){"function"==typeof e&&e()}),l=m.default.after(r,i);try{n=m.default.reduce(v.default.customEquationMacros,function(e,t,a){return e=e.concat([a,t,"buff_"+x.buffToTot[a]+"-total"])},[]),getAttrs(n,function(e){m.default.each(v.default.customEquationMacros,function(a,n){h.evaluateAndAdd(l,t,e[n],a,e[a],e["buff_"+x.buffToTot[n]+"-total"])})})}catch(e){g.default.error("PFCustom.recalculate OUTER wtf how did this happen?",e)}finally{i()}}function d(e,t){var a=m.default.once(function(){"function"==typeof e&&e()}),n=m.default.after(4,function(){setAttrs({migrated_ability_dropdowns4:1},v.default.silentParams,a)}),r=function(){var e,t;return e=Object.keys(v.default.repeatingAttackTypeManualDropdowns),m.default.size(e)?(t=m.default.after(m.default.size(e),n),void e.forEach(function(e){getSectionIDs("repeating_"+e,function(a){var n,r="";return a&&0!==m.default.size(a)?(r="_"+v.default.repeatingAttackTypeManualDropdowns[e],n=a.map(function(t){return"repeating_"+e+"_"+t+r}),void getAttrs(n,function(a){var n,r="";n=Object.keys(a).reduce(function(t,n){try{a[n]&&"0"!==a[n][0]&&(r=a[n].replace("@{","").replace("}",""),r!==a[n]&&(t[n]=r))}catch(t){g.default.error("PFSheet.migrate repeating attacktype dropdowns for: "+e,t)}finally{return t}},{}),m.default.size(n)>0?(g.default.debug("Migrate attack dropdowns setting:",n),setAttrs(n,v.default.silentParams,t)):t()})):(g.default.warn("migrate repeating attacktype Dropdowns, there are no rows for "+e),void t())})})):void n()},i=function(){getSectionIDs("repeating_weapon",function(e){var t;return e&&0!==m.default.size(e)?(t=h.cartesianAppend(["repeating_weapon_"],e,["_damage-ability"]),void getAttrs(t,function(e){var t;try{t=Object.keys(e).reduce(function(t,a){var n="";return e[a]&&"0"!==e[a]&&(n=e[a].replace("@{","").replace("}",""),n!==e[a]&&(t[a]=n)),t},{})}catch(e){g.default.error("PFSheet.migrate repeating ability dropdowns ",e)}finally{m.default.size(t)?(g.default.debug("Migrate repeatingweapon ability dropdowns setting:",t),setAttrs(t,v.default.silentParams,n)):n()}})):void n()})},l=function(){var e=Object.keys(v.default.abilityScoreManualDropdowns);getAttrs(e,function(t){var a={};try{a=e.reduce(function(e,a){var n="";if(t[a])switch(a){case"concentration-0-ability":case"concentration-1-ability":case"concentration-2-ability":case"FF-ability":case"CMD-ability":case"sanity-ability":case"selected-ability-psionic-power":case"melee2-ability":case"ranged2-ability":case"cmb2-ability":n=w.findAbilityInString(t[a])||"0";break;default:n=w.findAbilityInString(t[a])}return!n&&v.default.manualDropdownDefaults[a]&&(n=v.default.manualDropdownDefaults[a]),n&&n!==t[a]&&(e[a]=n),e},{})}catch(e){g.default.error("PFSheet.migrate AbilityModDropdowns ",e)}finally{m.default.size(a)?(g.default.debug("Migrate ability dropdowns setting:",a),setAttrs(a,v.default.silentParams,n)):n()}})},s=function(){var e=E.allTheSkills.map(function(e){return e+"-ability"});getAttrs(e,function(t){var a={};try{a=e.reduce(function(e,a){var n,r="",i="";try{if(t[a]&&t[a].indexOf("@{")>=0)r=t[a].replace("@{","").replace("}","");else if(!/misc/i.test(a)&&(!t[a]||S.abilitymods.indexOf(t[a])<0)){if(n=a.match(/Perform|Profession|Craft|Lore|Artistry|Knowledge/i))switch(n[0]){case"Perform":r="CHA-mod";break;case"Craft":case"Knowledge":case"Profession":case"Artistry":case"Lore":r="INT-mod"}r||(i=a.slice(0,-8),r=E.coreSkillAbilityDefaults[i],r||(r=E.consolidatedSkillAbilityDefaults[i]),r&&(r=r.toUpperCase()+"-mod"))}r&&r!==t[a]&&(e[a]=r)}catch(e){g.default.error("Migrate Skill dropdowns error skillerri on "+a,e)}finally{return e}},{})}catch(e){g.default.error("PFSheet.migrate Skills dropdowns ",e)}finally{m.default.size(a)?setAttrs(a,v.default.silentParams,n):(g.default.warn("Migrate skill dropdowns, there was nothing to set!"),n())}})};getAttrs(["migrated_ability_dropdowns4"],function(e){parseInt(e.migrated_ability_dropdowns4,10)?a():(i(),l(),r(),s())})}function p(){on("change:customd1 change:customd2 change:customd3 change:customd4 change:customd5 change:customd6 change:customd1-name change:customd2-name change:customd3-name change:customd4-name change:customd5-name change:customd6-name",g.default.callback(function(e){"player"===e.sourceType&&(g.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),i(e))})),on("change:use_advanced_options",g.default.callback(function(e){"player"!==e.sourceType&&"api"!==e.sourceType||(g.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),getAttrs(["use_advanced_options"],function(e){parseInt(e.use_advanced_options,10)?l():s()}))})),m.default.each(v.default.abilityScoreManualDropdowns,function(e,t){on("change:"+t,g.default.callback(function(a){"player"!==a.sourceType&&"api"!==a.sourceType||(g.default.debug("caught "+a.sourceAttribute+" event: "+a.sourceType),C.setDropdownValue(t,e))}))}),m.default.each(v.default.equationMacros,function(e,t){on("change:"+t,g.default.callback(function(a){g.default.debug("caught "+a.sourceAttribute+" event: "+a.sourceType),h.evaluateAndSetNumber(t,e)}))}),m.default.each(v.default.customEquationMacros,function(e,t){on("change:"+t,g.default.callback(function(a){g.default.debug("caught "+a.sourceAttribute+" event: "+a.sourceType),h.evaluateAndAddAsync(null,null,t,e,"buff_"+t+"-total")}))}),on("change:kineticist_level",g.default.callback(function(e){"player"===e.sourceType&&(g.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),C.setDropdownValue("kineticist_level","kineticist_level-mod"))}))}Object.defineProperty(t,"__esModule",{value:!0}),t.recalculate=void 0,t.resetCommandMacro=i,t.migrate=d;var f=a(2),m=r(f),_=(a(0),a(1)),g=r(_),b=a(3),h=n(b),y=a(4),v=r(y),k=a(5),w=n(k),A=a(9),C=n(A),I=a(25),x=n(I),P=a(10),S=n(P),T=a(15),E=n(T);t.recalculate=g.default.callback(function(e,t,a){d(function(){c(function(){o(function(){u(function(){i(e)},t,a)},t,a)},t,a)},a)});p()},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function i(e){var t=function(){"function"==typeof e&&e()};getAttrs(["use_horror_adventures","sanity_threshold","sanity-ability-mod","sanity_threshold_misc-mod"],function(e){var a=0,n=0,r={};try{parseInt(e.use_horror_adventures,10)&&(a=parseInt(e.sanity_threshold,10)||0,n=(parseInt(e["sanity-ability-mod"],10)||0)+(parseInt(e["sanity_threshold_misc-mod"],10)||0),n=Math.max(1,n),a!==n&&(r.sanity_threshold=n))}catch(e){d.default.error("PFHorror.setSanityThreshold error",e)}finally{c.default.size(r)?_.setWrapper(r,f.default.silentParams,t):t()}})}function l(e){var t=function(){"function"==typeof e&&e()};getAttrs(["use_horror_adventures","sanity_score_max","sanity_edge","sanity_score_misc-mod","WIS","INT","CHA","WIS-damage","INT-damage","CHA-damage","WIS-penalty","INT-penalty","CHA-penalty","buff_WIS-total_penalty","buff_INT-total_penalty","buff_CHA-total_penalty"],function(e){var a=0,n=0,r=0,i={};try{parseInt(e.use_horror_adventures,10)&&(a=parseInt(e.sanity_score_max,10)||0,n=(parseInt(e["sanity_score_misc-mod"],10)||0)+(parseInt(e.WIS,10)||0)+(parseInt(e.INT,10)||0)+(parseInt(e.CHA,10)||0)+(parseInt(e["WIS-damage"],10)||0)+(parseInt(e["INT-damage"],10)||0)+(parseInt(e["CHA-damage"],10)||0)+(parseInt(e["WIS-penalty"],10)||0)+(parseInt(e["INT-penalty"],10)||0)+(parseInt(e["CHA-penalty"],10)||0)+(parseInt(e["buff_WIS-total_penalty"],10)||0)+(parseInt(e["buff_INT-total_penalty"],10)||0)+(parseInt(e["buff_CHA-total_penalty"],10)||0),a!==n&&(r=Math.floor(n/2),i.sanity_score_max=n,i.sanity_edge=r))}catch(e){d.default.error("PFHorror.setSanityScore error",e)}finally{c.default.size(i)?_.setWrapper(i,f.default.silentParams,t):t()}})}function s(){on("change:sanity_score_misc-mod change:WIS change:INT change:CHA change:buff_WIS-total_penalty change:buff_INT-total_penalty change:buff_CHA-total_penalty",d.default.callback(function(e){d.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"sheetworker"!==e.sourceType&&"api"!==e.sourceType||l()})),on("change:WIS-damage change:INT-damage change:CHA-damage change:WIS-penalty change:INT-penalty change:CHA-penalty",d.default.callback(function(e){d.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||l()})),on("change:sanity-ability-mod change:sanity_threshold_misc-mod",d.default.callback(function(e){d.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"sheetworker"!==e.sourceType&&"api"!==e.sourceType||i()})),on("change:use_horror_adventures",d.default.callback(function(e){getAttrs(["use_horror_adventures"],function(e){parseInt(e.use_horror_adventures,10)&&(l(),i())})}))}Object.defineProperty(t,"__esModule",{value:!0}),t.recalculate=void 0;var o=a(2),c=r(o),u=(a(0),a(1)),d=r(u),p=a(4),f=r(p),m=a(3),_=n(m);t.recalculate=d.default.callback(function(e){l(),i(),"function"==typeof e&&(d.default.info("Leaving PFHorror.recalculate"),e())});s()},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){var a=u.default.once(function(){"function"==typeof e&&e()});getAttrs(["mythic-tier","mythic-hp","total-mythic-hp"],function(e){var n=0,r=0,i={},l={};try{n=(parseInt(e["mythic-tier"],10)||0)*(parseInt(e["mythic-hp"],10)||0),r=parseInt(e["total-mythic-hp"],10)||0,r!==n&&(i["total-mythic-hp"]=n)}catch(e){p.default.error("PFMythic.updateTierMythicPower error",e)}finally{u.default.size(i)>0?(t&&(l=g.default.silentParams),m.setWrapper(i,l,a)):a()}})}function l(e,t){var a=u.default.once(function(){"function"==typeof e&&e()});getAttrs(["tier-mythic-power","mythic-tier"],function(e){var n,r,i={},l={};try{n=3+2*(parseInt(e["mythic-tier"],10)||0),r=parseInt(e["tier-mythic-power"],10)||0,r!==n&&(i["tier-mythic-power"]=n)}catch(e){p.default.error("PFMythic.updateTierMythicPower error",e)}finally{u.default.size(i)>0?(t&&(l=g.default.silentParams),m.setWrapper(i,l,a)):a()}})}function s(e){"function"==typeof e&&e()}function o(){on("change:mythic-tier change:mythic-hp",p.default.callback(function(e){p.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||(i(),l())})),on("change:mythic-hp",p.default.callback(function(e){p.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||i()})),on("change:misc-mythic-power change:tier-mythic-power",p.default.callback(function(e){p.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),("player"===e.sourceType||"api"===e.sourceType||"sheetworker"===e.sourceType||"api"===e.sourceType&&"tier-mythic-power"===e.sourceAttribute)&&m.updateRowTotal(["mythic-power_max","tier-mythic-power","misc-mythic-power"])}))}Object.defineProperty(t,"__esModule",{value:!0}),t.recalculate=void 0,t.migrate=s;var c=a(2),u=r(c),d=(a(0),a(1)),p=r(d),f=a(3),m=n(f),_=a(4),g=r(_);t.recalculate=p.default.callback(function(e,t,a){var n=u.default.once(function(){p.default.info("leaving PFMythic.recalculate"),"function"==typeof e&&e()});getAttrs(["mythic-adventures-show"],function(e){try{1===parseInt(e["mythic-adventures-show"],10)?(i(n,t),l()):n()}catch(e){p.default.error("PFMythic.recalculate",e),n()}})});o()},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){var a=c.default.once(function(){"function"==typeof e&&e()});getAttrs(["npc-hd","PFSheet_Version","npc-hd-num","level","hp","hp_max","is_newsheet","npc-type"],function(e){parseInt(e.is_newsheet,10)||0===(parseInt(e.PFSheet_Version,10)||0)||!(e["npc-type"]||parseInt(e["npc-hd"],10)||parseInt(e["npc-hd-num"],10)||parseInt(e.level,10)||parseInt(e.hp,10)||parseInt(e.hp_max,10))?b.setWrapper({auto_calc_hp:1,autohp_percent:1,maxhp_lvl1:0,normal_macro_show:1,"max-dex-source":3,both_whisper_show:1,use_traits:0,use_racial_traits:0,tab:8,is_v1:1,"npc-compimport-show":1},f.default.silentParams,a):a()})}function l(e){_.migrateNPC(e)}function s(){on("change:is_npc",d.default.callback(function(e){d.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||getAttrs(["is_npc"],function(t){1===parseInt(t.is_npc,10)&&i(e)})}))}Object.defineProperty(t,"__esModule",{value:!0}),t.recalculate=void 0,t.setToNPC=i,t.migrate=l;var o=a(2),c=r(o),u=(a(0),a(1)),d=r(u),p=a(4),f=r(p),m=a(6),_=n(m),g=a(3),b=n(g);t.recalculate=d.default.callback(function(e,t,a){var n=c.default.once(function(){d.default.info("leaving PFNPC.recalculate"),"function"==typeof e&&e()});l(n)});s()},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t,a){getAttrs(["kineticist_level-mod","kineticist_ability-mod","kineticblast_dc"],function(t){var a={},n=0,r=0;n=parseInt(t.kineticblast_dc,10)||0,r=10+(parseInt(t["kineticist_ability-mod"],10)||0)+Math.floor((parseInt(t["kineticist_level-mod"],10)||0)/2),n!==r?(a.kineticblast_dc=r,m.setWrapper(a,g.default.silentParams,e)):"function"==typeof e&&e()})}function l(e){getAttrs(["kineticblast_attack_type","kineticblast_type","kineticblast_damage_type","use_devastating_infusion"],function(e){var t="",a="",n="",r=0,i=0,l="6",s={};r=parseInt(e.use_devastating_infusion,10)||0,"composite"===e.kineticblast_type&&(i=1),!r||"ranged"!==e.kineticblast_attack_type&&"energy"!==e.kineticblast_damage_type?(t="@{kineticblast_attack-mod}+@{buff_kineticblast-total}",r?(l="8",n="@{kineticist_level-mod}"):n="floor((@{kineticist_level-mod}+1)/2)",i&&(n="2*"+n),a="[[ "+n+" ]]d"+l,r?a+="+ @{kineticist_ability-mod}":"physical"===e.kineticblast_damage_type?a=a+"+ [[ "+n+" ]] + @{kineticist_ability-mod}":a+="+ [[ floor(@{kineticist_ability-mod}/2) ]]",a+="+@{kineticblast_dmg-mod}","ranged"===e.kineticblast_attack_type&&(a+="+@{buff_dmg_kineticblast-total}")):(a="INVALID",t="INVALID"),s.kineticblast_tempattack=t,s.kineticblast_tempdmg="[[ "+a+" ]]",s.create_kineticblast_macro=0,m.setWrapper(s,g.default.silentParams)})}function s(e){getAttrs(["adv_macro_show","create_kineticblast_attack","kineticblast_attack_type","kineticblast_type","kineticblast_damage_type","kineticblast_tempattack","kineticblast_tempdmg"],function(e){var t="",a="",n={},r="",i="";if(parseInt(e.create_kineticblast_attack,10))try{a=generateRowID(),t="repeating_weapon_"+a+"_",r=e.kineticblast_type+"-"+e.kineticblast_damage_type+"-",r+="ranged"===e.kineticblast_attack_type?"blast":"blade",r=m.getTranslated(r),r=r.replace("-"," "),n[t+"name"]=r,"physical"===e.kineticblast_damage_type?(n[t+"vs"]="AC",i=m.getTranslated("physical")):(n[t+"vs"]="touch",i=m.getTranslated("energy")),parseInt(e.adv_macro_show)?n[t+"attack_macro_insert"]=e.kineticblast_tempattack:n[t+"attack"]=e.kineticblast_tempattack,"ranged"===e.kineticblast_attack_type?(n[t+"attack-type"]="attk-ranged",n[t+"range"]="@{kineticblast_range}",n[t+"isranged"]=1):n[t+"attack-type"]="attk-melee",n[t+"precision_dmg_macro"]=e.kineticblast_tempdmg,n[t+"precision_dmg_type"]=i,n[t+"critical_dmg_macro"]=e.kineticblast_tempdmg,n[t+"critical_dmg_type"]=i,n[t+"notes"]="DC [[@{kineticblast_dc}]] (if applicable)",n[t+"default_damage-dice-num"]=0,n[t+"default_damage-die"]=0,n[t+"damage-dice-num"]=0,n[t+"damage-die"]=0,n[t+"size_affects"]=0,n[t+"damage-ability"]="0"}catch(t){p.default.error("PFAttacks.createAttack err creating "+e.kineticblast_attack_type,t)}finally{u.default.size(n)?(n.create_kineticblast_attack=0,m.setWrapper(n,g.default.silentParams,function(){h.recalcRepeatingWeapon(a,function(){v.resetCommandMacro(),w.resetOption(a)})})):m.setWrapper({create_kineticblast_attack:0},g.default.silentParams)}})}function o(e){getAttrs(["non-lethal-damage","kineticistburn","oldkineticistburn","level"],function(e){var t=0,a=0,n=0,r=0,i=0,l=0,s=0,o={};try{a=parseInt(e.oldkineticistburn,10)||0,n=parseInt(e.kineticistburn,10)||0,a!==n&&(o.oldkineticistburn=n,t=parseInt(e["non-lethal-damage"],10)||0,r=n-a||0,i=parseInt(e.level,10)||0,l=r*i,p.default.debug("PFOccult.change:kineticistburn level:"+i+", newdmg:"+l+", curr nld:"+t,e),
+s=t+l,s<0&&(s=0),o["non-lethal-damage"]=s)}catch(e){p.default.error("PFOccult.change:kineticistburn kineticburn",e)}finally{u.default.size(o)&&m.setWrapper(o,g.default.silentParams)}})}Object.defineProperty(t,"__esModule",{value:!0}),t.recalculate=void 0,t.updateNLDamageFromBurn=o;var c=a(2),u=r(c),d=(a(0),a(1)),p=r(d),f=a(3),m=n(f),_=a(4),g=r(_),b=a(7),h=n(b),y=a(8),v=n(y),k=a(11),w=n(k),A=t.recalculate=p.default.callback(function(e,t,a){getAttrs(["use_burn"],function(t){parseInt(t.use_burn,10)&&i(),"function"==typeof e&&(p.default.info("leaving PFOccult.recalculate"),e())})});on("change:create_kineticblast_macro",p.default.callback(function(e){"player"!==e.sourceType&&"api"!==e.sourceType||(p.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),getAttrs(["create_kineticblast_macro"],function(t){parseInt(t.create_kineticblast_macro,10)&&l(e)}))})),on("change:kineticist_level-mod change:kineticist_ability-mod",p.default.callback(function(e){"sheetworker"!==e.sourceType&&"api"!==e.sourceType||(p.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),i(null,null,e))})),on("change:use_burn",p.default.callback(function(e){"player"!==e.sourceType&&"api"!==e.sourceType||(p.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),A())})),on("change:create_kineticblast_attack",p.default.callback(function(e){"player"!==e.sourceType&&"api"!==e.sourceType||(p.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),s(e))})),on("change:kineticistburn",p.default.callback(function(e){"player"!==e.sourceType&&"api"!==e.sourceType||(p.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),o(e))}))},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){var a=c.default.once(function(){"function"==typeof e&&e()});f.getDropdownValue("selected-ability-psionic-power",null,function(e){getAttrs(["psionic-level-total","ability-psionic-power"],function(n){var r=0,i=0,l=0,s={};try{r=parseInt(e,10)||0,i=parseInt(n["ability-psionic-power"],10)||0,l=Math.floor(r*(parseInt(n["psionic-level-total"],10)||0)*.5),d.default.debug("PFSIONIC ability="+r,"newTotal="+l,"currentTotal="+i),i!==l&&(t&&(s=_.default.silentParams),f.setWrapper({"ability-psionic-power":l},s,a))}catch(e){d.default.error("PFPsionic.updatePsionicBonusPower",e)}finally{a()}})})}function l(e){"function"==typeof e&&e()}function s(){on("change:psionic-level change:psionic-level-misc",d.default.callback(function(e){d.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),"player"!==e.sourceType&&"api"!==e.sourceType||f.updateRowTotal(["psionic-level-total","psionic-level","psionic-level-misc"])})),on("change:class-psionic-power change:ability-psionic-power change:misc-psionic-power",d.default.callback(function(e){d.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),("player"===e.sourceType||"api"===e.sourceType||"sheetworker"===e.sourceType||"api"===e.sourceType&&"ability-psionic-power"===e.sourceAttribute)&&f.updateRowTotal(["psionic-power_max","class-psionic-power","ability-psionic-power","misc-psionic-power"])})),on("change:selected-ability-psionic-power change:psionic-level-total",d.default.callback(function(e){d.default.debug("caught "+e.sourceAttribute+" event: "+e.sourceType),i()}))}Object.defineProperty(t,"__esModule",{value:!0}),t.recalculate=void 0,t.migrate=l;var o=a(2),c=r(o),u=(a(0),a(1)),d=r(u),p=a(3),f=n(p),m=a(4),_=r(m);t.recalculate=d.default.callback(function(e,t,a){var n=c.default.once(function(){d.default.info("Leaving PFPsionic.recalculate"),"function"==typeof e&&e()});getAttrs(["psionics-show"],function(e){try{1===parseInt(e["psionics-show"],10)?i(n,t):n()}catch(e){d.default.error("PFPsionic.recalculate",e),n()}})});s()},function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t.default=e,t}function r(e){return e&&e.__esModule?e:{default:e}}var i=a(1),l=r(i),s=a(0),o=a(4),c=r(o),u=a(19),d=(n(u),a(32)),p=(n(d),a(33)),f=(n(p),a(34));n(f);l.default.config({logging:{info:!1,debug:!1}}),s.PFConsole.log(" ,## /## "),s.PFConsole.log(" /#/ / ## "),s.PFConsole.log(" / / / ## "),s.PFConsole.log(" | ##___#/ "),s.PFConsole.log(" | ## athfinder "),s.PFConsole.log(" # | ## sheet version "),s.PFConsole.log(" ### / "+("0000"+c.default.version.toFixed(2)).slice(-5)+" "),s.PFConsole.log(" ")}]);
\ No newline at end of file