!function n(r,t,e){function i(o,f){if(!t[o]){if(!r[o]){var s="function"==typeof require&&require;if(!f&&s)return s(o,!0);if(u)return u(o,!0);var a=new Error("Cannot find module '"+o+"'");throw a.code="MODULE_NOT_FOUND",a}var c=t[o]={exports:{}};r[o][0].call(c.exports,function(n){var t=r[o][1][n];return i(t?t:n)},c,c.exports,n,r,t,e)}return t[o].exports}for(var u="function"==typeof require&&require,o=0;o2?e[2]:"",o=[],f=s.ranks.indexOf(e[1]);f>=s.ranks.indexOf(i[1]);f--)o.push(e[0]+""+s.ranks[f]+u);return o}function t(n){"+"==n[2]&&(n=n.slice(0,2)+"-AA");for(var r=s.ranks.indexOf(n[0]),t=s.ranks.indexOf(n[3]),e=[],i=r;i>=t;i--)i in s.ranks&&e.push(s.ranks[i]+""+s.ranks[i]);return e}return/[\+-]+/.test(n)?n[0]==n[1]?t(n):r(n):[n]}function i(n){return n[0]!=n[1]&&2==n.length?[n+"s",n+"o"]:n}function u(n){var r,t,e=[];if(2==n.length){for(r=0;r=0){if(r=s.ranks.indexOf(n[0]),t=s.ranks.indexOf(n[2]),r>t)return n.slice(2,4)+n.slice(0,2)}else if(r=s.ranks.indexOf(n[0]),t=s.ranks.indexOf(n[1]),r>t)return n[1]+n[0]+n.slice(2);return n}function f(n,r){"undefined"==typeof r&&(r=1);var t=n.split(/[ ,]+/).map(o);return t=a.flatMap(t,e),3>r&&(t=a.flatMap(t,i)),2>r&&(t=a.flatMap(t,u)),t}var s=n("./model"),a=n("./util");r.exports=f},{"./model":2,"./util":5}],4:[function(n,r,t){function e(n){return n.split("").map(function(n){return/[akqtj]/.test(n)?n.toUpperCase():n}).join("")}function i(n){function r(n,r){var t=r[0]+""+r[2];t in n?n[t].push(r):n[t]=[r]}function t(n,r,t){for(var e in n)n[e].length==r?o.push(e+t):o=o.concat(n[e])}var e={},i={},u={},o=[];return a.unique(n).forEach(function(n){n.length<=3||/[\+-]+/.test(n)?o.push(n):n[0]==n[2]?r(u,n):n[1]==n[3]?r(e,n):r(i,n)}),t(e,4,"s"),t(i,12,"o"),t(u,6,""),o}function u(n){var r={},t=[];n.forEach(function(n){if("s"==n[2]||"o"==n[2]){var e=n.slice(0,2);e in r?r[e].push(n):r[e]=[n]}else t.push(n)});for(var e in r)t.push(2==r[e].length?e:r[e][0]);return t}function o(n){function r(n,r,t){r.push(n.length>1?t(n[0],n[n.length-1]):n[0])}function t(t,e){var i=n.filter(t).sort(function(n,r){return s.ranks.indexOf(r[1])-s.ranks.indexOf(n[1])});if(i.length>0){for(var u=[i[0]],o=1;o2&&(n=u(n)),r>3&&(n=o(n)),n.map(e).join(" ")}var s=n("./model"),a=n("./util");r.exports=f},{"./model":2,"./util":5}],5:[function(n,r,t){var e=function(n){return"[object Array]"===toString.call(n)},i=function(n){return"[object Arguments]"===toString.call(n)},u=Math.pow(2,53)-1,o=function(n){var r=n&&n.length;return"number"==typeof r&&r>=0&&u>=r},f=function(n){for(var r,t=[],u=0,s=0,a=n&&n.length;a>s;s++)if(r=n[s],o(r)&&(e(r)||i(r))){r=f(r);var c=0,l=r.length;for(t.length+=l;l>c;)t[u++]=r[c++]}else t[u++]=r;return t},s={flatten:f,shuffle:function(n){for(var r,t,e=n.length;e;r=Math.floor(Math.random()*e),t=n[--e],n[e]=n[r],n[r]=t);return n},unique:function(n){return n.filter(function(n,r,t){return t.indexOf(n)==r})},flatMap:function(n,r){return Array.prototype.concat.apply([],n.map(r))},copy:function(n){return _.isObject(n)?_.isArray(n)?n.slice():_.extend({},n):n}};r.exports=s},{}]},{},[1]);