Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Loading…

554 word frequency for replies v2 #566

Closed
wants to merge 1 commit into from

2 participants

@mwilkie

cleaned up a bit, and added word stemmer

@mwilkie

Issue #554: Improved Top 20 Words

  • Added word stemming using Snowball JS library
  • Stripping parentheses and quotes
  • Closed by 0bec25a
@ginatrapani
Owner

I'm still seeing words starting with quotation marks separate from the same one without; see an example here:

http://smarterware.org/thinkup/post/?t=27882935889690624&n=twitter

@unruthless unruthless referenced this pull request from a commit in unruthless/ThinkUp
@mwilkie mwilkie Issue #554: Improved Top 20 Words
* Added word stemming using Snowball JS library
* Stripping parentheses and quotes
* Closes #566
0bec25a
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Commits on Jan 23, 2011
  1. @mwilkie
This page is out of date. Refresh to see the latest.
View
1  webapp/_lib/view/post.index.tpl
@@ -108,6 +108,7 @@
</div>
{if $post->reply_count_cache > $top_20_post_min}
{include file="_post.word-frequency.tpl"}
+ <script src="{$site_root_path}assets/js/Snowball.stemmer.min.js" type="text/javascript"></script>
<script src="{$site_root_path}assets/js/word_frequency.js" type="text/javascript"></script>
{/if}
{if !$logged_in_user && $private_reply_count > 0}
View
50 webapp/assets/html/test/word_frequency.html
@@ -0,0 +1,50 @@
+<html>
+<head><title>word frequency test</title></head>
+
+<link rel="shortcut icon" type="image/x-icon" href="../../img/favicon.png">
+<link type="text/css" rel="stylesheet" href="../../assets/css/base.css">
+<link type="text/css" rel="stylesheet" href="../../assets/css/positioning.css">
+<link type="text/css" rel="stylesheet" href="../../assets/css/style.css">
+<link type="text/css" rel="stylesheet" href="../../assets/css/jquery-ui-1.7.1.custom.css">
+
+<!-- jquery -->
+<link type="text/css" rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css">
+<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
+<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>
+<script type="text/javascript" src="../../js/Snowball.stemmer.min.js"></script>
+
+<script type="text/javascript" src="../../js/word_frequency.js"></script>
+
+<body>
+
+<div class="word-frequency"></div>
+<div id="word-frequency-close"></div>
+<div id="word-frequency-spinner"></div>
+<div id="word-frequency-posts-div"></div>
+<div id="word-frequency-posts-close"></div>
+
+<div id="word-frequency-list" style="display: none;">
+ Top 20 Word list:
+ <div class="word-frequency-div" id="word-frequency-words">
+ </div>
+</div>
+
+<div id="word-frequency-posts" style="border: solid green 1px; padding: 10px; margin: 10px;"></div>
+
+<div style="border: solid black 1px; padding: 10px; margin: 10px;">
+<div class="reply_text" id="reply_text-1">I have some text here I like to reply with. #stuff also tweet sign "sign"</div><br />
+<div class="reply_text" id="reply_text-2">I have some more text here, I like it likes. #stuff</div><br />
+<div class="reply_text" id="reply_text-3">(apples and apple) and rest and "rested" and I tweeted and log</div><br />
+<div class="reply_text" id="reply_text-4">I like eating and to eat "and i ate." and I like texting when i am texted and tweeting</div><br />
+<div class="reply_text" id="reply_text-5">when i am "eating" I like to reply to texts when I am replying to texts I have texted to when texted and texting. ("also, I like eats.")</div><br />
+<div class="reply_text" id="reply_text-6">I use "log" when I actually log in the database the act. When I an just granting access it's "sign". Many years of govt work.</div><br />
+<div class="reply_text" id="reply_text-7">"how many tweets do you eat?" have you replied to those eats?</div><br />
+</div>
+
+<script type="text/javascript">
+
+
+tu_word_freq.find_words();
+</script>
+</body>
+</html>
View
163 webapp/assets/js/Snowball.stemmer.min.js
@@ -0,0 +1,163 @@
+/*!
+ * Snowball JavaScript Library v0.3
+ * http://code.google.com/p/urim/
+ * http://snowball.tartarus.org/
+ *
+ * Copyright 2010, Oleg Mazko
+ * http://www.mozilla.org/MPL/
+ */
+function Snowball(N){function a(v,n,q,m){this.s_size=v.length;this.s=this.toCharArray(v);this.substring_i=n;this.result=q;this.method=m}function G(){var v;return{b:0,k:0,l:0,c:0,lb:0,s_c:function(n){v=n;this.c=0;this.l=n.length;this.lb=0;this.b=this.c;this.k=this.l},g_c:function(){var n=v;v=null;return n},i_g:function(n,q,m){if(this.c<this.l){var s=v.charCodeAt(this.c);if(s<=m&&s>=q){s-=q;if(n[s>>3]&1<<(s&7)){this.c++;return true}}}return false},i_g_b:function(n,q,m){if(this.c>this.lb){var s=v.charCodeAt(this.c-
+1);if(s<=m&&s>=q){s-=q;if(n[s>>3]&1<<(s&7)){this.c--;return true}}}return false},o_g:function(n,q,m){if(this.c<this.l){var s=v.charCodeAt(this.c);if(s>m||s<q){this.c++;return true}s-=q;if(!(n[s>>3]&1<<(s&7))){this.c++;return true}}return false},o_g_b:function(n,q,m){if(this.c>this.lb){var s=v.charCodeAt(this.c-1);if(s>m||s<q){this.c--;return true}s-=q;if(!(n[s>>3]&1<<(s&7))){this.c--;return true}}return false},e_s:function(n,q){if(this.l-this.c<n)return false;for(var m=0;m<n;m++)if(v.charCodeAt(this.c+
+m)!=q.charCodeAt(m))return false;this.c+=n;return true},e_s_b:function(n,q){if(this.c-this.lb<n)return false;for(var m=0;m<n;m++)if(v.charCodeAt(this.c-n+m)!=q.charCodeAt(m))return false;this.c-=n;return true},f_a:function(n,q){for(var m=0,s=q,z=this.c,w=this.l,i=0,x=0,j=false;;){for(var y=m+(s-m>>1),A=0,B=i<x?i:x,g=n[y],h=B;h<g.s_size;h++){if(z+B==w){A=-1;break}if(A=v.charCodeAt(z+B)-g.s[h])break;B++}if(A<0){s=y;x=B}else{m=y;i=B}if(s-m<=1){if(m>0||s==m||j)break;j=true}}for(;;){g=n[m];if(i>=g.s_size){this.c=
+z+g.s_size;if(!g.method)return g.result;m=g.method();this.c=z+g.s_size;if(m)return g.result}m=g.substring_i;if(m<0)return 0}},f_a_b:function(n,q){for(var m=0,s=q,z=this.c,w=this.lb,i=0,x=0,j=false;;){for(var y=m+(s-m>>1),A=0,B=i<x?i:x,g=n[y],h=g.s_size-1-B;h>=0;h--){if(z-B==w){A=-1;break}if(A=v.charCodeAt(z-1-B)-g.s[h])break;B++}if(A<0){s=y;x=B}else{m=y;i=B}if(s-m<=1){if(m>0||s==m||j)break;j=true}}for(;;){g=n[m];if(i>=g.s_size){this.c=z-g.s_size;if(!g.method)return g.result;m=g.method();this.c=z-
+g.s_size;if(m)return g.result}m=g.substring_i;if(m<0)return 0}},r_s:function(n,q,m){var s=m.length-(q-n),z=v.substring(0,n),w=v.substring(q);v=z+m+w;this.l+=s;if(this.c>=q)this.c+=s;else if(this.c>n)this.c=n;return s},s_ch:function(){if(this.b<0||this.b>this.k||this.k>this.l||this.l>v.length)throw"faulty slice operation";},s_f:function(n){this.s_ch();this.r_s(this.b,this.k,n)},s_d:function(){this.s_f("")},i_:function(n,q,m){q=this.r_s(n,q,m);if(n<=this.b)this.b+=q;if(n<=this.k)this.k+=q},s_t:function(){this.s_ch();
+return v.substring(this.b,this.k)},e_v_b:function(n){return this.e_s_b(n.length,n)}}}a.prototype.toCharArray=function(v){for(var n=v.length,q=Array(n),m=0;m<n;m++)q[m]=v.charCodeAt(m);return q};return new ({DanishStemmer:function(){function v(){var y=j.l-j.c,A;if(j.c>=i){A=j.lb;j.lb=i;j.k=j.c;if(j.f_a_b(q,4)){j.b=j.c;j.lb=A;j.c=j.l-y;if(j.c>j.lb){j.c--;j.b=j.c;j.s_d()}}else j.lb=A}}var n=[new a("hed",-1,1),new a("ethed",0,1),new a("ered",-1,1),new a("e",-1,1),new a("erede",3,1),new a("ende",3,1),
+new a("erende",5,1),new a("ene",3,1),new a("erne",3,1),new a("ere",3,1),new a("en",-1,1),new a("heden",10,1),new a("eren",10,1),new a("er",-1,1),new a("heder",13,1),new a("erer",13,1),new a("s",-1,2),new a("heds",16,1),new a("es",16,1),new a("endes",18,1),new a("erendes",19,1),new a("enes",18,1),new a("ernes",18,1),new a("eres",18,1),new a("ens",16,1),new a("hedens",24,1),new a("erens",24,1),new a("ers",16,1),new a("ets",16,1),new a("erets",28,1),new a("et",-1,1),new a("eret",30,1)],q=[new a("gd",
+-1,-1),new a("dt",-1,-1),new a("gt",-1,-1),new a("kt",-1,-1)],m=[new a("ig",-1,1),new a("lig",0,1),new a("elig",1,1),new a("els",-1,1),new a("l\u00f8st",-1,2)],s=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,48,0,128],z=[239,254,42,3,0,0,0,0,0,0,0,0,0,0,0,0,16],w,i,x,j=new G;this.setCurrent=function(y){j.s_c(y)};this.getCurrent=function(){return j.g_c()};this.stem=function(){var y=j.c;a:{var A;A=j.c+3;i=j.l;if(0<=A&&A<=j.l){for(w=A;;){A=j.c;if(j.i_g(s,97,248)){j.c=A;break}j.c=A;if(A>=j.l)break a;j.c++}for(;!j.o_g(s,
+97,248);){if(j.c>=j.l)break a;j.c++}i=j.c;if(i<w)i=w}}j.lb=y;j.c=j.l;if(j.c>=i){A=j.lb;j.lb=i;j.k=j.c;y=j.f_a_b(n,32);j.lb=A;if(y){j.b=j.c;switch(y){case 1:j.s_d();break;case 2:j.i_g_b(z,97,229)&&j.s_d()}}}j.c=j.l;v();j.c=j.l;y=j.l-j.c;j.k=j.c;if(j.e_s_b(2,"st")){j.b=j.c;j.e_s_b(2,"ig")&&j.s_d()}j.c=j.l-y;if(j.c>=i){A=j.lb;j.lb=i;j.k=j.c;y=j.f_a_b(m,5);j.lb=A;if(y){j.b=j.c;switch(y){case 1:j.s_d();y=j.l-j.c;v();j.c=j.l-y;break;case 2:j.s_f("l\u00f8s")}}}j.c=j.l;if(j.c>=i){y=j.lb;j.lb=i;j.k=j.c;if(j.o_g_b(s,
+97,248)){j.b=j.c;x=j.s_t(x);j.lb=y;j.e_v_b(x)&&j.s_d()}else j.lb=y}return true}},DutchStemmer:function(){function v(o){d.c=o;if(o>=d.l)return true;d.c++;return false}function n(){for(;!d.i_g(B,97,232);){if(d.c>=d.l)return true;d.c++}for(;!d.o_g(B,97,232);){if(d.c>=d.l)return true;d.c++}return false}function q(){return k<=d.c}function m(){var o=d.l-d.c;if(d.f_a_b(x,3)){d.c=d.l-o;d.k=d.c;if(d.c>d.lb){d.c--;d.b=d.c;d.s_d()}}}function s(){var o;t=false;d.k=d.c;if(d.e_s_b(1,"e")){d.b=d.c;if(r<=d.c){o=
+d.l-d.c;if(d.o_g_b(B,97,232)){d.c=d.l-o;d.s_d();t=true;m()}}}}function z(){var o;if(r<=d.c){o=d.l-d.c;if(d.o_g_b(B,97,232)){d.c=d.l-o;if(!d.e_s_b(3,"gem")){d.c=d.l-o;d.s_d();m()}}}}var w=[new a("",-1,6),new a("\u00e1",0,1),new a("\u00e4",0,1),new a("\u00e9",0,2),new a("\u00eb",0,2),new a("\u00ed",0,3),new a("\u00ef",0,3),new a("\u00f3",0,4),new a("\u00f6",0,4),new a("\u00fa",0,5),new a("\u00fc",0,5)],i=[new a("",-1,3),new a("I",0,2),new a("Y",0,1)],x=[new a("dd",-1,-1),new a("kk",-1,-1),new a("tt",
+-1,-1)],j=[new a("ene",-1,2),new a("se",-1,3),new a("en",-1,2),new a("heden",2,1),new a("s",-1,3)],y=[new a("end",-1,1),new a("ig",-1,2),new a("ing",-1,1),new a("lijk",-1,3),new a("baar",-1,4),new a("bar",-1,5)],A=[new a("aa",-1,-1),new a("ee",-1,-1),new a("oo",-1,-1),new a("uu",-1,-1)],B=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],g=[1,0,0,17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],h=[17,67,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],k,r,t,d=new G;this.setCurrent=function(o){d.s_c(o)};this.getCurrent=function(){return d.g_c()};
+this.stem=function(){for(var o=d.c,f,b=d.c;;){d.b=d.c;if(f=d.f_a(w,11)){d.k=d.c;switch(f){case 1:d.s_f("a");continue;case 2:d.s_f("e");continue;case 3:d.s_f("i");continue;case 4:d.s_f("o");continue;case 5:d.s_f("u");continue;case 6:if(d.c>=d.l)break;d.c++;continue}}break}d.c=b;d.b=b;if(d.e_s(1,"y")){d.k=d.c;d.s_f("Y")}else d.c=b;for(;;){f=d.c;if(d.i_g(B,97,232)){b=d.c;d.b=b;if(d.e_s(1,"i")){d.k=d.c;if(d.i_g(B,97,232)){d.s_f("I");d.c=f}}else{d.c=b;if(d.e_s(1,"y")){d.k=d.c;d.s_f("Y");d.c=f}else if(v(f))break}}else if(v(f))break}d.c=
+o;k=r=d.l;if(!n()){r=d.c;if(r<3)r=3;if(!n())k=d.c}d.lb=o;d.c=d.l;o=d.l-d.c;d.k=d.c;if(f=d.f_a_b(j,5)){d.b=d.c;switch(f){case 1:r<=d.c&&d.s_f("heid");break;case 2:z();break;case 3:r<=d.c&&d.o_g_b(h,97,232)&&d.s_d()}}d.c=d.l-o;s();d.c=d.l-o;d.k=d.c;if(d.e_s_b(4,"heid")){d.b=d.c;if(q()){f=d.l-d.c;if(!d.e_s_b(1,"c")){d.c=d.l-f;d.s_d();d.k=d.c;if(d.e_s_b(2,"en")){d.b=d.c;z()}}}}d.c=d.l-o;d.k=d.c;if(f=d.f_a_b(y,6)){d.b=d.c;switch(f){case 1:if(q()){d.s_d();f=d.l-d.c;d.k=d.c;if(d.e_s_b(2,"ig")){d.b=d.c;if(q()){b=
+d.l-d.c;if(!d.e_s_b(1,"e")){d.c=d.l-b;d.s_d();break}}}d.c=d.l-f;m()}break;case 2:if(q()){f=d.l-d.c;if(!d.e_s_b(1,"e")){d.c=d.l-f;d.s_d()}}break;case 3:if(q()){d.s_d();s()}break;case 4:q()&&d.s_d();break;case 5:q()&&t&&d.s_d()}}d.c=d.l-o;if(d.o_g_b(g,73,232)){o=d.l-d.c;if(d.f_a_b(A,4)&&d.o_g_b(B,97,232)){d.c=d.l-o;d.k=d.c;if(d.c>d.lb){d.c--;d.b=d.c;d.s_d()}}}d.c=d.lb;a:for(;;){d.b=d.c;if(o=d.f_a(i,3)){d.k=d.c;switch(o){case 1:d.s_f("y");break;case 2:d.s_f("i");break;case 3:if(d.c>=d.l)break a;d.c++}}}return true}},
+EnglishStemmer:function(){function v(){for(;!f.i_g(g,97,121);){if(f.c>=f.l)return true;f.c++}for(;!f.o_g(g,97,121);){if(f.c>=f.l)return true;f.c++}return false}function n(){var b=f.l-f.c;if(!(f.o_g_b(h,89,121)&&f.i_g_b(g,97,121)&&f.o_g_b(g,97,121))){f.c=f.l-b;if(!f.o_g_b(g,97,121)||!f.i_g_b(g,97,121)||f.c>f.lb)return false}return true}var q=[new a("arsen",-1,-1),new a("commun",-1,-1),new a("gener",-1,-1)],m=[new a("'",-1,1),new a("'s'",0,1),new a("'s",-1,1)],s=[new a("ied",-1,2),new a("s",-1,3),new a("ies",
+1,2),new a("sses",1,1),new a("ss",1,-1),new a("us",1,-1)],z=[new a("",-1,3),new a("bb",0,2),new a("dd",0,2),new a("ff",0,2),new a("gg",0,2),new a("bl",0,1),new a("mm",0,2),new a("nn",0,2),new a("pp",0,2),new a("rr",0,2),new a("at",0,1),new a("tt",0,2),new a("iz",0,1)],w=[new a("ed",-1,2),new a("eed",0,1),new a("ing",-1,2),new a("edly",-1,2),new a("eedly",3,1),new a("ingly",-1,2)],i=[new a("anci",-1,3),new a("enci",-1,2),new a("ogi",-1,13),new a("li",-1,16),new a("bli",3,12),new a("abli",4,4),new a("alli",
+3,8),new a("fulli",3,14),new a("lessli",3,15),new a("ousli",3,10),new a("entli",3,5),new a("aliti",-1,8),new a("biliti",-1,12),new a("iviti",-1,11),new a("tional",-1,1),new a("ational",14,7),new a("alism",-1,8),new a("ation",-1,7),new a("ization",17,6),new a("izer",-1,6),new a("ator",-1,7),new a("iveness",-1,11),new a("fulness",-1,9),new a("ousness",-1,10)],x=[new a("icate",-1,4),new a("ative",-1,6),new a("alize",-1,3),new a("iciti",-1,4),new a("ical",-1,4),new a("tional",-1,1),new a("ational",5,
+2),new a("ful",-1,5),new a("ness",-1,5)],j=[new a("ic",-1,1),new a("ance",-1,1),new a("ence",-1,1),new a("able",-1,1),new a("ible",-1,1),new a("ate",-1,1),new a("ive",-1,1),new a("ize",-1,1),new a("iti",-1,1),new a("al",-1,1),new a("ism",-1,1),new a("ion",-1,2),new a("er",-1,1),new a("ous",-1,1),new a("ant",-1,1),new a("ent",-1,1),new a("ment",15,1),new a("ement",16,1)],y=[new a("e",-1,1),new a("l",-1,2)],A=[new a("succeed",-1,-1),new a("proceed",-1,-1),new a("exceed",-1,-1),new a("canning",-1,-1),
+new a("inning",-1,-1),new a("earring",-1,-1),new a("herring",-1,-1),new a("outing",-1,-1)],B=[new a("andes",-1,-1),new a("atlas",-1,-1),new a("bias",-1,-1),new a("cosmos",-1,-1),new a("dying",-1,3),new a("early",-1,9),new a("gently",-1,7),new a("howe",-1,-1),new a("idly",-1,6),new a("lying",-1,4),new a("news",-1,-1),new a("only",-1,10),new a("singly",-1,11),new a("skies",-1,2),new a("skis",-1,1),new a("sky",-1,-1),new a("tying",-1,5),new a("ugly",-1,8)],g=[17,65,16,1],h=[1,17,65,208,1],k=[55,141,
+2],r,t,d,o=[function(){var b,c;f.k=f.c;if(b=f.f_a_b(w,6)){f.b=f.c;switch(b){case 1:d<=f.c&&f.s_f("ee");break;case 2:for(b=f.l-f.c;!f.i_g_b(g,97,121);){if(f.c<=f.lb)return;f.c--}f.c=f.l-b;f.s_d();c=f.l-f.c;if(b=f.f_a_b(z,13)){f.c=f.l-c;switch(b){case 1:b=f.c;f.i_(f.c,f.c,"e");f.c=b;break;case 2:f.k=f.c;if(f.c>f.lb){f.c--;f.b=f.c;f.s_d()}break;case 3:if(f.c==d){b=f.l-f.c;if(n()){f.c=f.l-b;b=f.c;f.i_(f.c,f.c,"e");f.c=b}}}}}}},function(){var b=f.l-f.c;f.k=f.c;if(!f.e_s_b(1,"y")){f.c=f.l-b;if(!f.e_s_b(1,
+"Y"))return}f.b=f.c;f.o_g_b(g,97,121)&&f.c>f.lb&&f.s_f("i")},function(){var b;f.k=f.c;if(b=f.f_a_b(i,24)){f.b=f.c;if(d<=f.c)switch(b){case 1:f.s_f("tion");break;case 2:f.s_f("ence");break;case 3:f.s_f("ance");break;case 4:f.s_f("able");break;case 5:f.s_f("ent");break;case 6:f.s_f("ize");break;case 7:f.s_f("ate");break;case 8:f.s_f("al");break;case 9:f.s_f("ful");break;case 10:f.s_f("ous");break;case 11:f.s_f("ive");break;case 12:f.s_f("ble");break;case 13:f.e_s_b(1,"l")&&f.s_f("og");break;case 14:f.s_f("ful");
+break;case 15:f.s_f("less");break;case 16:f.i_g_b(k,99,116)&&f.s_d()}}},function(){var b;f.k=f.c;if(b=f.f_a_b(x,9)){f.b=f.c;if(d<=f.c)switch(b){case 1:f.s_f("tion");break;case 2:f.s_f("ate");break;case 3:f.s_f("al");break;case 4:f.s_f("ic");break;case 5:f.s_d();break;case 6:t<=f.c&&f.s_d()}}},function(){var b;f.k=f.c;if(b=f.f_a_b(j,18)){f.b=f.c;if(t<=f.c)switch(b){case 1:f.s_d();break;case 2:b=f.l-f.c;if(!f.e_s_b(1,"s")){f.c=f.l-b;if(!f.e_s_b(1,"t"))break}f.s_d()}}},function(){var b;f.k=f.c;if(b=
+f.f_a_b(y,2)){f.b=f.c;switch(b){case 1:b=f.l-f.c;if(!(t<=f.c)){f.c=f.l-b;if(!(d<=f.c)||n())break;f.c=f.l-b}f.s_d();break;case 2:if(!(t<=f.c)||!f.e_s_b(1,"l"))break;f.s_d()}}}],f=new G;this.setCurrent=function(b){f.s_c(b)};this.getCurrent=function(){return f.g_c()};this.stem=function(){var b=f.c,c;a:{f.b=f.c;if(c=f.f_a(B,18)){f.k=f.c;if(f.c>=f.l){switch(c){case 1:f.s_f("ski");break;case 2:f.s_f("sky");break;case 3:f.s_f("die");break;case 4:f.s_f("lie");break;case 5:f.s_f("tie");break;case 6:f.s_f("idl");
+break;case 7:f.s_f("gentl");break;case 8:f.s_f("ugli");break;case 9:f.s_f("earli");break;case 10:f.s_f("onli");break;case 11:f.s_f("singl")}c=true;break a}}c=false}if(!c){f.c=b;c=f.c+3;if(0<=c&&c<=f.l){f.c=b;c=f.c;var l;r=false;f.b=f.c;if(f.e_s(1,"'")){f.k=f.c;f.s_d()}f.c=c;f.b=c;if(f.e_s(1,"y")){f.k=f.c;f.s_f("Y");r=true}for(f.c=c;;){l=f.c;if(f.i_g(g,97,121)){f.b=f.c;if(f.e_s(1,"y")){f.k=f.c;f.c=l;f.s_f("Y");r=true;continue}}if(l>=f.l){f.c=c;break}f.c=l+1}f.c=b;a:{c=f.c;t=d=f.l;if(!f.f_a(q,3)){f.c=
+c;if(v()){f.c=c;break a}}d=f.c;if(!v())t=f.c}f.lb=b;f.c=f.l;a:{c=f.l-f.c;f.k=f.c;if(b=f.f_a_b(m,3)){f.b=f.c;b==1&&f.s_d()}else f.c=f.l-c;f.k=f.c;if(b=f.f_a_b(s,6)){f.b=f.c;switch(b){case 1:f.s_f("ss");break;case 2:b=f.c-2;if(f.lb>b||b>f.l){f.s_f("ie");break}f.c=b;f.s_f("i");break;case 3:do{if(f.c<=f.lb)break a;f.c--}while(!f.i_g_b(g,97,121));f.s_d()}}}f.c=f.l;f.k=f.c;if(f.f_a_b(A,8)){f.b=f.c;b=f.c<=f.lb}else b=false;if(!b)for(b=0;b<o.length;b++){f.c=f.l;o[b]()}f.c=f.lb;if(r)for(;;){b=f.c;f.b=b;if(f.e_s(1,
+"Y")){f.k=f.c;f.c=b;f.s_f("y")}else{f.c=b;if(f.c>=f.l)break;f.c++}}}}return true}},FinnishStemmer:function(){function v(){for(var l;;){l=c.c;if(c.i_g(k,97,246))break;c.c=l;if(l>=c.l)return true;c.c++}for(c.c=l;!c.o_g(k,97,246);){if(c.c>=c.l)return true;c.c++}return false}function n(){return c.f_a_b(j,7)}function q(){return c.e_s_b(1,"i")&&c.i_g_b(r,97,246)}function m(){var l,C;if(c.c>=b){C=c.lb;c.lb=b;c.k=c.c;if(l=c.f_a_b(y,30)){c.b=c.c;c.lb=C;switch(l){case 1:if(!c.e_s_b(1,"a"))return;break;case 2:case 9:if(!c.e_s_b(1,
+"e"))return;break;case 3:if(!c.e_s_b(1,"i"))return;break;case 4:if(!c.e_s_b(1,"o"))return;break;case 5:if(!c.e_s_b(1,"\u00e4"))return;break;case 6:if(!c.e_s_b(1,"\u00f6"))return;break;case 7:l=c.l-c.c;if(!n()){c.c=c.l-l;if(!c.e_s_b(2,"ie")){c.c=c.l-l;break}}c.c=c.l-l;if(c.c<=c.lb){c.c=c.l-l;break}c.c--;c.b=c.c;break;case 8:if(!c.i_g_b(k,97,246)||!c.o_g_b(k,97,246))return}c.s_d();d=true}else c.lb=C}}var s=[new a("pa",-1,1),new a("sti",-1,2),new a("kaan",-1,1),new a("han",-1,1),new a("kin",-1,1),new a("h\u00e4n",
+-1,1),new a("k\u00e4\u00e4n",-1,1),new a("ko",-1,1),new a("p\u00e4",-1,1),new a("k\u00f6",-1,1)],z=[new a("lla",-1,-1),new a("na",-1,-1),new a("ssa",-1,-1),new a("ta",-1,-1),new a("lta",3,-1),new a("sta",3,-1)],w=[new a("ll\u00e4",-1,-1),new a("n\u00e4",-1,-1),new a("ss\u00e4",-1,-1),new a("t\u00e4",-1,-1),new a("lt\u00e4",3,-1),new a("st\u00e4",3,-1)],i=[new a("lle",-1,-1),new a("ine",-1,-1)],x=[new a("nsa",-1,3),new a("mme",-1,3),new a("nne",-1,3),new a("ni",-1,2),new a("si",-1,1),new a("an",-1,
+4),new a("en",-1,6),new a("\u00e4n",-1,5),new a("ns\u00e4",-1,3)],j=[new a("aa",-1,-1),new a("ee",-1,-1),new a("ii",-1,-1),new a("oo",-1,-1),new a("uu",-1,-1),new a("\u00e4\u00e4",-1,-1),new a("\u00f6\u00f6",-1,-1)],y=[new a("a",-1,8),new a("lla",0,-1),new a("na",0,-1),new a("ssa",0,-1),new a("ta",0,-1),new a("lta",4,-1),new a("sta",4,-1),new a("tta",4,9),new a("lle",-1,-1),new a("ine",-1,-1),new a("ksi",-1,-1),new a("n",-1,7),new a("han",11,1),new a("den",11,-1,q),new a("seen",11,-1,n),new a("hen",
+11,2),new a("tten",11,-1,q),new a("hin",11,3),new a("siin",11,-1,q),new a("hon",11,4),new a("h\u00e4n",11,5),new a("h\u00f6n",11,6),new a("\u00e4",-1,8),new a("ll\u00e4",22,-1),new a("n\u00e4",22,-1),new a("ss\u00e4",22,-1),new a("t\u00e4",22,-1),new a("lt\u00e4",26,-1),new a("st\u00e4",26,-1),new a("tt\u00e4",26,9)],A=[new a("eja",-1,-1),new a("mma",-1,1),new a("imma",1,-1),new a("mpa",-1,1),new a("impa",3,-1),new a("mmi",-1,1),new a("immi",5,-1),new a("mpi",-1,1),new a("impi",7,-1),new a("ej\u00e4",
+-1,-1),new a("mm\u00e4",-1,1),new a("imm\u00e4",10,-1),new a("mp\u00e4",-1,1),new a("imp\u00e4",12,-1)],B=[new a("i",-1,-1),new a("j",-1,-1)],g=[new a("mma",-1,1),new a("imma",0,-1)],h=[17,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8],k=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,8,0,32],r=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,32],t=[17,97,24,1,0,0,0,0,0,0,0,0,0,0,0,0,8,0,32],d,o,f,b,c=new G;this.setCurrent=function(l){c.s_c(l)};this.getCurrent=function(){return c.g_c()};this.stem=function(){var l=c.c;f=b=c.l;if(!v()){b=
+c.c;if(!v())f=c.c}d=false;c.lb=l;c.c=c.l;a:{var C;if(c.c>=b){C=c.lb;c.lb=b;c.k=c.c;if(l=c.f_a_b(s,10)){c.b=c.c;c.lb=C;switch(l){case 1:if(!c.i_g_b(t,97,246))break a;break;case 2:if(!(f<=c.c))break a}c.s_d()}else c.lb=C}}c.c=c.l;if(c.c>=b){C=c.lb;c.lb=b;c.k=c.c;if(l=c.f_a_b(x,9)){c.b=c.c;c.lb=C;switch(l){case 1:l=c.l-c.c;if(!c.e_s_b(1,"k")){c.c=c.l-l;c.s_d()}break;case 2:c.s_d();c.k=c.c;if(c.e_s_b(3,"kse")){c.b=c.c;c.s_f("ksi")}break;case 3:c.s_d();break;case 4:c.f_a_b(z,6)&&c.s_d();break;case 5:c.f_a_b(w,
+6)&&c.s_d();break;case 6:c.f_a_b(i,2)&&c.s_d()}}else c.lb=C}c.c=c.l;m();c.c=c.l;a:if(c.c>=f){C=c.lb;c.lb=f;c.k=c.c;if(l=c.f_a_b(A,14)){c.b=c.c;c.lb=C;if(l==1){l=c.l-c.c;if(c.e_s_b(2,"po"))break a;c.c=c.l-l}c.s_d()}else c.lb=C}c.c=c.l;if(d){if(c.c>=b){l=c.lb;c.lb=b;c.k=c.c;if(c.f_a_b(B,2)){c.b=c.c;c.lb=l;c.s_d()}else c.lb=l}}else{c.c=c.l;a:{var F;if(c.c>=b){l=c.lb;c.lb=b;c.k=c.c;if(c.e_s_b(1,"t")){c.b=c.c;C=c.l-c.c;if(c.i_g_b(k,97,246)){c.c=c.l-C;c.s_d();c.lb=l;F=c.l-c.c;if(c.c>=f){c.c=f;C=c.lb;c.lb=
+c.c;c.c=c.l-F;c.k=c.c;if(F=c.f_a_b(g,2)){c.b=c.c;c.lb=C;if(F==1){l=c.l-c.c;if(c.e_s_b(2,"po"))break a;c.c=c.l-l}c.s_d();break a}}}}c.lb=l}}}c.c=c.l;a:if(c.c>=b){l=c.lb;c.lb=b;C=c.l-c.c;if(n()){c.c=c.l-C;c.k=c.c;if(c.c>c.lb){c.c--;c.b=c.c;c.s_d()}}c.c=c.l-C;c.k=c.c;if(c.i_g_b(h,97,228)){c.b=c.c;c.o_g_b(k,97,246)&&c.s_d()}c.c=c.l-C;c.k=c.c;if(c.e_s_b(1,"j")){c.b=c.c;F=c.l-c.c;if(c.e_s_b(1,"o"))c.s_d();else{c.c=c.l-F;c.e_s_b(1,"u")&&c.s_d()}}c.c=c.l-C;c.k=c.c;if(c.e_s_b(1,"o")){c.b=c.c;c.e_s_b(1,"j")&&
+c.s_d()}c.c=c.l-C;for(c.lb=l;;){l=c.l-c.c;if(c.o_g_b(k,97,246)){c.c=c.l-l;break}c.c=c.l-l;if(c.c<=c.lb)break a;c.c--}c.k=c.c;if(c.c>c.lb){c.c--;c.b=c.c;o=c.s_t();c.e_v_b(o)&&c.s_d()}}return true}},FrenchStemmer:function(){function v(c,l,C){if(b.e_s(1,c)){b.k=b.c;if(b.i_g(r,97,251)){b.s_f(l);b.c=C;return true}}return false}function n(c,l,C){if(b.e_s(1,c)){b.k=b.c;b.s_f(l);b.c=C;return true}return false}function q(){for(;!b.i_g(r,97,251);){if(b.c>=b.l)return true;b.c++}for(;!b.o_g(r,97,251);){if(b.c>=
+b.l)return true;b.c++}return false}function m(){return d<=b.c}function s(){var c;b.k=b.c;if(c=b.f_a_b(A,43)){b.b=b.c;switch(c){case 1:if(!m())return false;b.s_d();break;case 2:if(!m())return false;b.s_d();b.k=b.c;if(b.e_s_b(2,"ic")){b.b=b.c;m()?b.s_d():b.s_f("iqU")}break;case 3:if(!m())return false;b.s_f("log");break;case 4:if(!m())return false;b.s_f("u");break;case 5:if(!m())return false;b.s_f("ent");break;case 6:if(!(f<=b.c))return false;b.s_d();b.k=b.c;if(c=b.f_a_b(j,6)){b.b=b.c;switch(c){case 1:if(m()){b.s_d();
+b.k=b.c;if(b.e_s_b(2,"at")){b.b=b.c;m()&&b.s_d()}}break;case 2:if(m())b.s_d();else o<=b.c&&b.s_f("eux");break;case 3:m()&&b.s_d();break;case 4:f<=b.c&&b.s_f("i")}}break;case 7:if(!m())return false;b.s_d();b.k=b.c;if(c=b.f_a_b(y,3)){b.b=b.c;switch(c){case 1:m()?b.s_d():b.s_f("abl");break;case 2:m()?b.s_d():b.s_f("iqU");break;case 3:m()&&b.s_d()}}break;case 8:if(!m())return false;b.s_d();b.k=b.c;if(b.e_s_b(2,"at")){b.b=b.c;if(m()){b.s_d();b.k=b.c;if(b.e_s_b(2,"ic")){b.b=b.c;m()?b.s_d():b.s_f("iqU");
+break}}}break;case 9:b.s_f("eau");break;case 10:if(!(o<=b.c))return false;b.s_f("al");break;case 11:if(m())b.s_d();else if(o<=b.c)b.s_f("eux");else return false;break;case 12:if(!(o<=b.c)||!b.o_g_b(r,97,251))return false;b.s_d();break;case 13:f<=b.c&&b.s_f("ant");return false;case 14:f<=b.c&&b.s_f("ent");return false;case 15:c=b.l-b.c;if(b.i_g_b(r,97,251)&&f<=b.c){b.c=b.l-c;b.s_d()}return false}return true}return false}function z(){var c,l;if(b.c<f)return false;l=b.lb;b.lb=f;b.k=b.c;c=b.f_a_b(B,35);
+if(!c){b.lb=l;return false}b.b=b.c;if(c==1){if(!b.o_g_b(r,97,251)){b.lb=l;return false}b.s_d()}b.lb=l;return true}function w(){var c,l;if(b.c<f)return false;l=b.lb;b.lb=f;b.k=b.c;c=b.f_a_b(g,38);if(!c){b.lb=l;return false}b.b=b.c;switch(c){case 1:if(!m()){b.lb=l;return false}b.s_d();break;case 2:b.s_d();break;case 3:b.s_d();c=b.l-b.c;b.k=b.c;if(b.e_s_b(1,"e")){b.b=b.c;b.s_d()}else b.c=b.l-c}b.lb=l;return true}var i=[new a("col",-1,-1),new a("par",-1,-1),new a("tap",-1,-1)],x=[new a("",-1,4),new a("I",
+0,1),new a("U",0,2),new a("Y",0,3)],j=[new a("iqU",-1,3),new a("abl",-1,3),new a("I\u00e8r",-1,4),new a("i\u00e8r",-1,4),new a("eus",-1,2),new a("iv",-1,1)],y=[new a("ic",-1,2),new a("abil",-1,1),new a("iv",-1,3)],A=[new a("iqUe",-1,1),new a("atrice",-1,2),new a("ance",-1,1),new a("ence",-1,5),new a("logie",-1,3),new a("able",-1,1),new a("isme",-1,1),new a("euse",-1,11),new a("iste",-1,1),new a("ive",-1,8),new a("if",-1,8),new a("usion",-1,4),new a("ation",-1,2),new a("ution",-1,4),new a("ateur",
+-1,2),new a("iqUes",-1,1),new a("atrices",-1,2),new a("ances",-1,1),new a("ences",-1,5),new a("logies",-1,3),new a("ables",-1,1),new a("ismes",-1,1),new a("euses",-1,11),new a("istes",-1,1),new a("ives",-1,8),new a("ifs",-1,8),new a("usions",-1,4),new a("ations",-1,2),new a("utions",-1,4),new a("ateurs",-1,2),new a("ments",-1,15),new a("ements",30,6),new a("issements",31,12),new a("it\u00e9s",-1,7),new a("ment",-1,15),new a("ement",34,6),new a("issement",35,12),new a("amment",34,13),new a("emment",
+34,14),new a("aux",-1,10),new a("eaux",39,9),new a("eux",-1,1),new a("it\u00e9",-1,7)],B=[new a("ira",-1,1),new a("ie",-1,1),new a("isse",-1,1),new a("issante",-1,1),new a("i",-1,1),new a("irai",4,1),new a("ir",-1,1),new a("iras",-1,1),new a("ies",-1,1),new a("\u00eemes",-1,1),new a("isses",-1,1),new a("issantes",-1,1),new a("\u00eetes",-1,1),new a("is",-1,1),new a("irais",13,1),new a("issais",13,1),new a("irions",-1,1),new a("issions",-1,1),new a("irons",-1,1),new a("issons",-1,1),new a("issants",
+-1,1),new a("it",-1,1),new a("irait",21,1),new a("issait",21,1),new a("issant",-1,1),new a("iraIent",-1,1),new a("issaIent",-1,1),new a("irent",-1,1),new a("issent",-1,1),new a("iront",-1,1),new a("\u00eet",-1,1),new a("iriez",-1,1),new a("issiez",-1,1),new a("irez",-1,1),new a("issez",-1,1)],g=[new a("a",-1,3),new a("era",0,2),new a("asse",-1,3),new a("ante",-1,3),new a("\u00e9e",-1,2),new a("ai",-1,3),new a("erai",5,2),new a("er",-1,2),new a("as",-1,3),new a("eras",8,2),new a("\u00e2mes",-1,3),
+new a("asses",-1,3),new a("antes",-1,3),new a("\u00e2tes",-1,3),new a("\u00e9es",-1,2),new a("ais",-1,3),new a("erais",15,2),new a("ions",-1,1),new a("erions",17,2),new a("assions",17,3),new a("erons",-1,2),new a("ants",-1,3),new a("\u00e9s",-1,2),new a("ait",-1,3),new a("erait",23,2),new a("ant",-1,3),new a("aIent",-1,3),new a("eraIent",26,2),new a("\u00e8rent",-1,2),new a("assent",-1,3),new a("eront",-1,2),new a("\u00e2t",-1,3),new a("ez",-1,2),new a("iez",32,2),new a("eriez",33,2),new a("assiez",
+33,3),new a("erez",32,2),new a("\u00e9",-1,2)],h=[new a("e",-1,3),new a("I\u00e8re",0,2),new a("i\u00e8re",0,2),new a("ion",-1,1),new a("Ier",-1,2),new a("ier",-1,2),new a("\u00eb",-1,4)],k=[new a("ell",-1,-1),new a("eill",-1,-1),new a("enn",-1,-1),new a("onn",-1,-1),new a("ett",-1,-1)],r=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,128,130,103,8,5],t=[1,65,20,0,0,0,0,0,0,0,0,0,0,0,0,0,128],d,o,f,b=new G;this.setCurrent=function(c){b.s_c(c)};this.getCurrent=function(){return b.g_c()};this.stem=function(){for(var c=
+b.c,l,C;;){l=b.c;if(b.i_g(r,97,251)){C=b.b=b.c;if(v("u","U",l))continue;b.c=C;if(v("i","I",l))continue;b.c=C;if(n("y","Y",l))continue}b.c=l;b.b=l;if(!v("y","Y",l)){b.c=l;if(b.e_s(1,"q")){b.b=b.c;if(n("u","U",l))continue}b.c=l;if(l>=b.l)break;b.c++}}b.c=c;l=b.c;d=o=f=b.l;if(b.i_g(r,97,251)&&b.i_g(r,97,251)&&b.c<b.l)b.c++;else{b.c=l;if(!b.f_a(i,3)){b.c=l;do{if(b.c>=b.l){b.c=f;break}b.c++}while(!b.i_g(r,97,251))}}f=b.c;b.c=l;if(!q()){o=b.c;if(!q())d=b.c}b.lb=c;b.c=b.l;a:{if(!s()){b.c=b.l;if(!z()){b.c=
+b.l;if(!w()){b.c=b.l;c=b.l-b.c;b.k=b.c;if(b.e_s_b(1,"s")){b.b=b.c;l=b.l-b.c;if(b.o_g_b(t,97,232)){b.c=b.l-l;b.s_d()}else b.c=b.l-c}else b.c=b.l-c;if(b.c>=f){c=b.lb;b.lb=f;b.k=b.c;if(l=b.f_a_b(h,7)){b.b=b.c;switch(l){case 1:if(m()){l=b.l-b.c;if(!b.e_s_b(1,"s")){b.c=b.l-l;if(!b.e_s_b(1,"t"))break}b.s_d()}break;case 2:b.s_f("i");break;case 3:b.s_d();break;case 4:b.e_s_b(2,"gu")&&b.s_d()}}b.lb=c}break a}}}b.c=b.l;b.k=b.c;if(b.e_s_b(1,"Y")){b.b=b.c;b.s_f("i")}else{b.c=b.l;if(b.e_s_b(1,"\u00e7")){b.b=b.c;
+b.s_f("c")}}}b.c=b.l;c=b.l-b.c;if(b.f_a_b(k,5)){b.c=b.l-c;b.k=b.c;if(b.c>b.lb){b.c--;b.b=b.c;b.s_d()}}b.c=b.l;a:{for(c=1;b.o_g_b(r,97,251);)c--;if(c<=0){b.k=b.c;c=b.l-b.c;if(!b.e_s_b(1,"\u00e9")){b.c=b.l-c;if(!b.e_s_b(1,"\u00e8"))break a}b.b=b.c;b.s_f("e")}}b.c=b.lb;a:for(;;){c=b.c;b.b=c;c=b.f_a(x,4);if(!c)break;b.k=b.c;switch(c){case 1:b.s_f("i");break;case 2:b.s_f("u");break;case 3:b.s_f("y");break;case 4:if(b.c>=b.l)break a;b.c++}}return true}},GermanStemmer:function(){function v(h,k,r){if(g.e_s(1,
+h)){g.k=g.c;if(g.i_g(i,97,252)){g.s_f(k);g.c=r;return true}}return false}function n(){for(;!g.i_g(i,97,252);){if(g.c>=g.l)return true;g.c++}for(;!g.o_g(i,97,252);){if(g.c>=g.l)return true;g.c++}return false}var q=[new a("",-1,6),new a("U",0,2),new a("Y",0,1),new a("\u00e4",0,3),new a("\u00f6",0,4),new a("\u00fc",0,5)],m=[new a("e",-1,2),new a("em",-1,1),new a("en",-1,2),new a("ern",-1,1),new a("er",-1,1),new a("s",-1,3),new a("es",5,2)],s=[new a("en",-1,1),new a("er",-1,1),new a("st",-1,2),new a("est",
+2,1)],z=[new a("ig",-1,1),new a("lich",-1,1)],w=[new a("end",-1,1),new a("ig",-1,2),new a("ung",-1,1),new a("lich",-1,3),new a("isch",-1,2),new a("ik",-1,2),new a("heit",-1,3),new a("keit",-1,4)],i=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,8,0,32,8],x=[117,30,5],j=[117,30,4],y,A,B,g=new G;this.setCurrent=function(h){g.s_c(h)};this.getCurrent=function(){return g.g_c()};this.stem=function(){var h=g.c;a:{for(var k=g.c,r,t;;){r=g.c;g.b=r;if(g.e_s(1,"\u00df")){g.k=g.c;g.s_f("ss")}else{if(r>=g.l)break;g.c=r+
+1}}for(g.c=k;;)for(k=g.c;;){r=g.c;if(g.i_g(i,97,252)){t=g.c;g.b=t;if(v("u","U",r))break;g.c=t;if(v("y","Y",r))break}if(r>=g.l){g.c=k;break a}g.c=r+1}}g.c=h;A=B=g.l;k=g.c+3;if(0<=k&&k<=g.l){y=k;if(!n()){B=g.c;if(B<y)B=y;if(!n())A=g.c}}g.lb=h;g.c=g.l;h=g.l-g.c;g.k=g.c;if(k=g.f_a_b(m,7)){g.b=g.c;if(B<=g.c)switch(k){case 1:g.s_d();break;case 2:g.s_d();g.k=g.c;if(g.e_s_b(1,"s")){g.b=g.c;g.e_s_b(3,"nis")&&g.s_d()}break;case 3:g.i_g_b(x,98,116)&&g.s_d()}}g.c=g.l-h;g.k=g.c;if(k=g.f_a_b(s,4)){g.b=g.c;if(B<=
+g.c)switch(k){case 1:g.s_d();break;case 2:if(g.i_g_b(j,98,116)){k=g.c-3;if(g.lb<=k&&k<=g.l){g.c=k;g.s_d()}}}}g.c=g.l-h;g.k=g.c;if(k=g.f_a_b(w,8)){g.b=g.c;if(A<=g.c)switch(k){case 1:g.s_d();g.k=g.c;if(g.e_s_b(2,"ig")){g.b=g.c;h=g.l-g.c;if(!g.e_s_b(1,"e")){g.c=g.l-h;A<=g.c&&g.s_d()}}break;case 2:h=g.l-g.c;if(!g.e_s_b(1,"e")){g.c=g.l-h;g.s_d()}break;case 3:g.s_d();g.k=g.c;h=g.l-g.c;if(!g.e_s_b(2,"er")){g.c=g.l-h;if(!g.e_s_b(2,"en"))break}g.b=g.c;B<=g.c&&g.s_d();break;case 4:g.s_d();g.k=g.c;if(k=g.f_a_b(z,
+2)){g.b=g.c;A<=g.c&&k==1&&g.s_d()}}}g.c=g.lb;a:for(;;){h=g.c;g.b=h;h=g.f_a(q,6);if(!h)break;g.k=g.c;switch(h){case 1:g.s_f("y");break;case 2:case 5:g.s_f("u");break;case 3:g.s_f("a");break;case 4:g.s_f("o");break;case 6:if(g.c>=g.l)break a;g.c++}}return true}},HungarianStemmer:function(){function v(){var o=d.c,f;t=d.l;if(d.i_g(r,97,252))for(;;){f=d.c;if(d.o_g(r,97,252)){d.c=f;if(!d.f_a(s,8)){d.c=f;f<d.l&&d.c++}t=d.c;return}d.c=f;if(f>=d.l){t=f;return}d.c++}d.c=o;if(d.o_g(r,97,252)){for(;!d.i_g(r,
+97,252);){if(d.c>=d.l)return;d.c++}t=d.c}}function n(){return t<=d.c}function q(){var o=d.l-d.c;if(!d.f_a_b(w,23))return false;d.c=d.l-o;return true}function m(){if(d.c>d.lb){d.c--;d.k=d.c;var o=d.c-1;if(d.lb<=o&&o<=d.l){d.c=o;d.b=o;d.s_d()}}}var s=[new a("cs",-1,-1),new a("dzs",-1,-1),new a("gy",-1,-1),new a("ly",-1,-1),new a("ny",-1,-1),new a("sz",-1,-1),new a("ty",-1,-1),new a("zs",-1,-1)],z=[new a("\u00e1",-1,1),new a("\u00e9",-1,2)],w=[new a("bb",-1,-1),new a("cc",-1,-1),new a("dd",-1,-1),new a("ff",
+-1,-1),new a("gg",-1,-1),new a("jj",-1,-1),new a("kk",-1,-1),new a("ll",-1,-1),new a("mm",-1,-1),new a("nn",-1,-1),new a("pp",-1,-1),new a("rr",-1,-1),new a("ccs",-1,-1),new a("ss",-1,-1),new a("zzs",-1,-1),new a("tt",-1,-1),new a("vv",-1,-1),new a("ggy",-1,-1),new a("lly",-1,-1),new a("nny",-1,-1),new a("tty",-1,-1),new a("ssz",-1,-1),new a("zz",-1,-1)],i=[new a("al",-1,1),new a("el",-1,2)],x=[new a("ba",-1,-1),new a("ra",-1,-1),new a("be",-1,-1),new a("re",-1,-1),new a("ig",-1,-1),new a("nak",-1,
+-1),new a("nek",-1,-1),new a("val",-1,-1),new a("vel",-1,-1),new a("ul",-1,-1),new a("n\u00e1l",-1,-1),new a("n\u00e9l",-1,-1),new a("b\u00f3l",-1,-1),new a("r\u00f3l",-1,-1),new a("t\u00f3l",-1,-1),new a("b\u00f5l",-1,-1),new a("r\u00f5l",-1,-1),new a("t\u00f5l",-1,-1),new a("\u00fcl",-1,-1),new a("n",-1,-1),new a("an",19,-1),new a("ban",20,-1),new a("en",19,-1),new a("ben",22,-1),new a("k\u00e9ppen",22,-1),new a("on",19,-1),new a("\u00f6n",19,-1),new a("k\u00e9pp",-1,-1),new a("kor",-1,-1),new a("t",
+-1,-1),new a("at",29,-1),new a("et",29,-1),new a("k\u00e9nt",29,-1),new a("ank\u00e9nt",32,-1),new a("enk\u00e9nt",32,-1),new a("onk\u00e9nt",32,-1),new a("ot",29,-1),new a("\u00e9rt",29,-1),new a("\u00f6t",29,-1),new a("hez",-1,-1),new a("hoz",-1,-1),new a("h\u00f6z",-1,-1),new a("v\u00e1",-1,-1),new a("v\u00e9",-1,-1)],j=[new a("\u00e1n",-1,2),new a("\u00e9n",-1,1),new a("\u00e1nk\u00e9nt",-1,3)],y=[new a("stul",-1,2),new a("astul",0,1),new a("\u00e1stul",0,3),new a("st\u00fcl",-1,2),new a("est\u00fcl",
+3,1),new a("\u00e9st\u00fcl",3,4)],A=[new a("\u00e1",-1,1),new a("\u00e9",-1,2)],B=[new a("k",-1,7),new a("ak",0,4),new a("ek",0,6),new a("ok",0,5),new a("\u00e1k",0,1),new a("\u00e9k",0,2),new a("\u00f6k",0,3)],g=[new a("\u00e9i",-1,7),new a("\u00e1\u00e9i",0,6),new a("\u00e9\u00e9i",0,5),new a("\u00e9",-1,9),new a("k\u00e9",3,4),new a("ak\u00e9",4,1),new a("ek\u00e9",4,1),new a("ok\u00e9",4,1),new a("\u00e1k\u00e9",4,3),new a("\u00e9k\u00e9",4,2),new a("\u00f6k\u00e9",4,1),new a("\u00e9\u00e9",
+3,8)],h=[new a("a",-1,18),new a("ja",0,17),new a("d",-1,16),new a("ad",2,13),new a("ed",2,13),new a("od",2,13),new a("\u00e1d",2,14),new a("\u00e9d",2,15),new a("\u00f6d",2,13),new a("e",-1,18),new a("je",9,17),new a("nk",-1,4),new a("unk",11,1),new a("\u00e1nk",11,2),new a("\u00e9nk",11,3),new a("\u00fcnk",11,1),new a("uk",-1,8),new a("juk",16,7),new a("\u00e1juk",17,5),new a("\u00fck",-1,8),new a("j\u00fck",19,7),new a("\u00e9j\u00fck",20,6),new a("m",-1,12),new a("am",22,9),new a("em",22,9),new a("om",
+22,9),new a("\u00e1m",22,10),new a("\u00e9m",22,11),new a("o",-1,18),new a("\u00e1",-1,19),new a("\u00e9",-1,20)],k=[new a("id",-1,10),new a("aid",0,9),new a("jaid",1,6),new a("eid",0,9),new a("jeid",3,6),new a("\u00e1id",0,7),new a("\u00e9id",0,8),new a("i",-1,15),new a("ai",7,14),new a("jai",8,11),new a("ei",7,14),new a("jei",10,11),new a("\u00e1i",7,12),new a("\u00e9i",7,13),new a("itek",-1,24),new a("eitek",14,21),new a("jeitek",15,20),new a("\u00e9itek",14,23),new a("ik",-1,29),new a("aik",18,
+26),new a("jaik",19,25),new a("eik",18,26),new a("jeik",21,25),new a("\u00e1ik",18,27),new a("\u00e9ik",18,28),new a("ink",-1,20),new a("aink",25,17),new a("jaink",26,16),new a("eink",25,17),new a("jeink",28,16),new a("\u00e1ink",25,18),new a("\u00e9ink",25,19),new a("aitok",-1,21),new a("jaitok",32,20),new a("\u00e1itok",-1,22),new a("im",-1,5),new a("aim",35,4),new a("jaim",36,1),new a("eim",35,4),new a("jeim",38,1),new a("\u00e1im",35,2),new a("\u00e9im",35,3)],r=[17,65,16,0,0,0,0,0,0,0,0,0,0,
+0,0,0,1,17,52,14],t,d=new G;this.setCurrent=function(o){d.s_c(o)};this.getCurrent=function(){return d.g_c()};this.stem=function(){var o=d.c;v();d.lb=o;d.c=d.l;a:{d.k=d.c;if(o=d.f_a_b(i,2)){d.b=d.c;if(n()){if(o==1||o==2)if(!q())break a;d.s_d();m()}}}d.c=d.l;d.k=d.c;if(d.f_a_b(x,44)){d.b=d.c;if(n()){d.s_d();d.k=d.c;if(o=d.f_a_b(z,2)){d.b=d.c;if(n())switch(o){case 1:d.s_f("a");break;case 2:d.s_f("e")}}}}d.c=d.l;d.k=d.c;if(o=d.f_a_b(j,3)){d.b=d.c;if(n())switch(o){case 1:d.s_f("e");break;case 2:case 3:d.s_f("a")}}d.c=
+d.l;d.k=d.c;if(o=d.f_a_b(y,6)){d.b=d.c;if(n())switch(o){case 1:case 2:d.s_d();break;case 3:d.s_f("a");break;case 4:d.s_f("e")}}d.c=d.l;a:{d.k=d.c;if(o=d.f_a_b(A,2)){d.b=d.c;if(n()){if(o==1||o==2)if(!q())break a;d.s_d();m()}}}d.c=d.l;d.k=d.c;if(o=d.f_a_b(g,12)){d.b=d.c;if(n())switch(o){case 1:case 4:case 7:case 9:d.s_d();break;case 2:case 5:case 8:d.s_f("e");break;case 3:case 6:d.s_f("a")}}d.c=d.l;d.k=d.c;if(o=d.f_a_b(h,31)){d.b=d.c;if(n())switch(o){case 1:case 4:case 7:case 8:case 9:case 12:case 13:case 16:case 17:case 18:d.s_d();
+break;case 2:case 5:case 10:case 14:case 19:d.s_f("a");break;case 3:case 6:case 11:case 15:case 20:d.s_f("e")}}d.c=d.l;d.k=d.c;if(o=d.f_a_b(k,42)){d.b=d.c;if(n())switch(o){case 1:case 4:case 5:case 6:case 9:case 10:case 11:case 14:case 15:case 16:case 17:case 20:case 21:case 24:case 25:case 26:case 29:d.s_d();break;case 2:case 7:case 12:case 18:case 22:case 27:d.s_f("a");break;case 3:case 8:case 13:case 19:case 23:case 28:d.s_f("e")}}d.c=d.l;d.k=d.c;if(o=d.f_a_b(B,7)){d.b=d.c;if(n())switch(o){case 1:d.s_f("a");
+break;case 2:d.s_f("e");break;case 3:case 4:case 5:case 6:case 7:d.s_d()}}return true}},ItalianStemmer:function(){function v(c,l,C){if(b.e_s(1,c)){b.k=b.c;if(b.i_g(k,97,249)){b.s_f(l);b.c=C;return true}}return false}function n(c){b.c=c;if(!b.i_g(k,97,249))return false;for(;!b.o_g(k,97,249);){if(b.c>=b.l)return false;b.c++}return true}function q(){if(b.i_g(k,97,249)){var c=b.c;if(b.o_g(k,97,249)){for(;!b.i_g(k,97,249);){if(b.c>=b.l)return n(c);b.c++}return true}return n(c)}return false}function m(){var c=
+b.c;if(!q()){b.c=c;if(!b.o_g(k,97,249))return;c=b.c;if(b.o_g(k,97,249)){for(;!b.i_g(k,97,249);){if(b.c>=b.l){b.c=c;b.i_g(k,97,249)&&b.c<b.l&&b.c++;return}b.c++}f=b.c;return}b.c=c;if(!b.i_g(k,97,249)||b.c>=b.l)return;b.c++}f=b.c}function s(){for(;!b.i_g(k,97,249);){if(b.c>=b.l)return false;b.c++}for(;!b.o_g(k,97,249);){if(b.c>=b.l)return false;b.c++}return true}function z(){return d<=b.c}function w(){var c;b.k=b.c;c=b.f_a_b(g,51);if(!c)return false;b.b=b.c;switch(c){case 1:if(!z())return false;b.s_d();
+break;case 2:if(!z())return false;b.s_d();b.k=b.c;if(b.e_s_b(2,"ic")){b.b=b.c;z()&&b.s_d()}break;case 3:if(!z())return false;b.s_f("log");break;case 4:if(!z())return false;b.s_f("u");break;case 5:if(!z())return false;b.s_f("ente");break;case 6:if(!(f<=b.c))return false;b.s_d();break;case 7:if(!(o<=b.c))return false;b.s_d();b.k=b.c;if(c=b.f_a_b(A,4)){b.b=b.c;if(z()){b.s_d();if(c==1){b.k=b.c;if(b.e_s_b(2,"at")){b.b=b.c;z()&&b.s_d()}}}}break;case 8:if(!z())return false;b.s_d();b.k=b.c;if(c=b.f_a_b(B,
+3)){b.b=b.c;c==1&&z()&&b.s_d()}break;case 9:if(!z())return false;b.s_d();b.k=b.c;if(b.e_s_b(2,"at")){b.b=b.c;if(z()){b.s_d();b.k=b.c;if(b.e_s_b(2,"ic")){b.b=b.c;z()&&b.s_d()}}}}return true}var i=[new a("",-1,7),new a("qu",0,6),new a("\u00e1",0,1),new a("\u00e9",0,2),new a("\u00ed",0,3),new a("\u00f3",0,4),new a("\u00fa",0,5)],x=[new a("",-1,3),new a("I",0,1),new a("U",0,2)],j=[new a("la",-1,-1),new a("cela",0,-1),new a("gliela",0,-1),new a("mela",0,-1),new a("tela",0,-1),new a("vela",0,-1),new a("le",
+-1,-1),new a("cele",6,-1),new a("gliele",6,-1),new a("mele",6,-1),new a("tele",6,-1),new a("vele",6,-1),new a("ne",-1,-1),new a("cene",12,-1),new a("gliene",12,-1),new a("mene",12,-1),new a("sene",12,-1),new a("tene",12,-1),new a("vene",12,-1),new a("ci",-1,-1),new a("li",-1,-1),new a("celi",20,-1),new a("glieli",20,-1),new a("meli",20,-1),new a("teli",20,-1),new a("veli",20,-1),new a("gli",20,-1),new a("mi",-1,-1),new a("si",-1,-1),new a("ti",-1,-1),new a("vi",-1,-1),new a("lo",-1,-1),new a("celo",
+31,-1),new a("glielo",31,-1),new a("melo",31,-1),new a("telo",31,-1),new a("velo",31,-1)],y=[new a("ando",-1,1),new a("endo",-1,1),new a("ar",-1,2),new a("er",-1,2),new a("ir",-1,2)],A=[new a("ic",-1,-1),new a("abil",-1,-1),new a("os",-1,-1),new a("iv",-1,1)],B=[new a("ic",-1,1),new a("abil",-1,1),new a("iv",-1,1)],g=[new a("ica",-1,1),new a("logia",-1,3),new a("osa",-1,1),new a("ista",-1,1),new a("iva",-1,9),new a("anza",-1,1),new a("enza",-1,5),new a("ice",-1,1),new a("atrice",7,1),new a("iche",
+-1,1),new a("logie",-1,3),new a("abile",-1,1),new a("ibile",-1,1),new a("usione",-1,4),new a("azione",-1,2),new a("uzione",-1,4),new a("atore",-1,2),new a("ose",-1,1),new a("ante",-1,1),new a("mente",-1,1),new a("amente",19,7),new a("iste",-1,1),new a("ive",-1,9),new a("anze",-1,1),new a("enze",-1,5),new a("ici",-1,1),new a("atrici",25,1),new a("ichi",-1,1),new a("abili",-1,1),new a("ibili",-1,1),new a("ismi",-1,1),new a("usioni",-1,4),new a("azioni",-1,2),new a("uzioni",-1,4),new a("atori",-1,2),
+new a("osi",-1,1),new a("anti",-1,1),new a("amenti",-1,6),new a("imenti",-1,6),new a("isti",-1,1),new a("ivi",-1,9),new a("ico",-1,1),new a("ismo",-1,1),new a("oso",-1,1),new a("amento",-1,6),new a("imento",-1,6),new a("ivo",-1,9),new a("it\u00e0",-1,8),new a("ist\u00e0",-1,1),new a("ist\u00e8",-1,1),new a("ist\u00ec",-1,1)],h=[new a("isca",-1,1),new a("enda",-1,1),new a("ata",-1,1),new a("ita",-1,1),new a("uta",-1,1),new a("ava",-1,1),new a("eva",-1,1),new a("iva",-1,1),new a("erebbe",-1,1),new a("irebbe",
+-1,1),new a("isce",-1,1),new a("ende",-1,1),new a("are",-1,1),new a("ere",-1,1),new a("ire",-1,1),new a("asse",-1,1),new a("ate",-1,1),new a("avate",16,1),new a("evate",16,1),new a("ivate",16,1),new a("ete",-1,1),new a("erete",20,1),new a("irete",20,1),new a("ite",-1,1),new a("ereste",-1,1),new a("ireste",-1,1),new a("ute",-1,1),new a("erai",-1,1),new a("irai",-1,1),new a("isci",-1,1),new a("endi",-1,1),new a("erei",-1,1),new a("irei",-1,1),new a("assi",-1,1),new a("ati",-1,1),new a("iti",-1,1),new a("eresti",
+-1,1),new a("iresti",-1,1),new a("uti",-1,1),new a("avi",-1,1),new a("evi",-1,1),new a("ivi",-1,1),new a("isco",-1,1),new a("ando",-1,1),new a("endo",-1,1),new a("Yamo",-1,1),new a("iamo",-1,1),new a("avamo",-1,1),new a("evamo",-1,1),new a("ivamo",-1,1),new a("eremo",-1,1),new a("iremo",-1,1),new a("assimo",-1,1),new a("ammo",-1,1),new a("emmo",-1,1),new a("eremmo",54,1),new a("iremmo",54,1),new a("immo",-1,1),new a("ano",-1,1),new a("iscano",58,1),new a("avano",58,1),new a("evano",58,1),new a("ivano",
+58,1),new a("eranno",-1,1),new a("iranno",-1,1),new a("ono",-1,1),new a("iscono",65,1),new a("arono",65,1),new a("erono",65,1),new a("irono",65,1),new a("erebbero",-1,1),new a("irebbero",-1,1),new a("assero",-1,1),new a("essero",-1,1),new a("issero",-1,1),new a("ato",-1,1),new a("ito",-1,1),new a("uto",-1,1),new a("avo",-1,1),new a("evo",-1,1),new a("ivo",-1,1),new a("ar",-1,1),new a("ir",-1,1),new a("er\u00e0",-1,1),new a("ir\u00e0",-1,1),new a("er\u00f2",-1,1),new a("ir\u00f2",-1,1)],k=[17,65,16,
+0,0,0,0,0,0,0,0,0,0,0,0,128,128,8,2,1],r=[17,65,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,8,2],t=[17],d,o,f,b=new G;this.setCurrent=function(c){b.s_c(c)};this.getCurrent=function(){return b.g_c()};this.stem=function(){var c=b.c;a:{for(var l,C=b.c,F;;){b.b=b.c;if(l=b.f_a(i,7)){b.k=b.c;switch(l){case 1:b.s_f("\u00e0");continue;case 2:b.s_f("\u00e8");continue;case 3:b.s_f("\u00ec");continue;case 4:b.s_f("\u00f2");continue;case 5:b.s_f("\u00f9");continue;case 6:b.s_f("qU");continue;case 7:if(b.c>=b.l)break;b.c++;
+continue}}break}for(b.c=C;;)for(l=b.c;;){C=b.c;if(b.i_g(k,97,249)){F=b.b=b.c;if(v("u","U",C))break;b.c=F;if(v("i","I",C))break}b.c=C;if(b.c>=b.l){b.c=l;break a}b.c++}}b.c=c;l=b.c;d=o=f=b.l;m();b.c=l;if(s()){o=b.c;if(s())d=b.c}b.lb=c;b.c=b.l;b.k=b.c;if(b.f_a_b(j,37)){b.b=b.c;if((c=b.f_a_b(y,5))&&f<=b.c)switch(c){case 1:b.s_d();break;case 2:b.s_f("e")}}b.c=b.l;if(!w()){b.c=b.l;if(b.c>=f){l=b.lb;b.lb=f;b.k=b.c;if(c=b.f_a_b(h,87)){b.b=b.c;c==1&&b.s_d()}b.lb=l}}b.c=b.l;a:{c=b.l-b.c;b.k=b.c;if(b.i_g_b(r,
+97,242)){b.b=b.c;if(f<=b.c){b.s_d();b.k=b.c;if(b.e_s_b(1,"i")){b.b=b.c;if(f<=b.c){b.s_d();break a}}}}b.c=b.l-c}b.k=b.c;if(b.e_s_b(1,"h")){b.b=b.c;b.i_g_b(t,99,103)&&f<=b.c&&b.s_d()}b.c=b.lb;a:for(;;){b.b=b.c;c=b.f_a(x,3);if(!c)break;b.k=b.c;switch(c){case 1:b.s_f("i");break;case 2:b.s_f("u");break;case 3:if(b.c>=b.l)break a;b.c++}}return true}},NorwegianStemmer:function(){var v=[new a("a",-1,1),new a("e",-1,1),new a("ede",1,1),new a("ande",1,1),new a("ende",1,1),new a("ane",1,1),new a("ene",1,1),
+new a("hetene",6,1),new a("erte",1,3),new a("en",-1,1),new a("heten",9,1),new a("ar",-1,1),new a("er",-1,1),new a("heter",12,1),new a("s",-1,2),new a("as",14,1),new a("es",14,1),new a("edes",16,1),new a("endes",16,1),new a("enes",16,1),new a("hetenes",19,1),new a("ens",14,1),new a("hetens",21,1),new a("ers",14,1),new a("ets",14,1),new a("et",-1,1),new a("het",25,1),new a("ert",-1,3),new a("ast",-1,1)],n=[new a("dt",-1,-1),new a("vt",-1,-1)],q=[new a("leg",-1,1),new a("eleg",0,1),new a("ig",-1,1),
+new a("eig",2,1),new a("lig",2,1),new a("elig",4,1),new a("els",-1,1),new a("lov",-1,1),new a("elov",7,1),new a("slov",7,1),new a("hetslov",9,1)],m=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,48,0,128],s=[119,125,149,1],z,w,i=new G;this.setCurrent=function(x){i.s_c(x)};this.getCurrent=function(){return i.g_c()};this.stem=function(){var x=i.c;a:{var j;j=i.c+3;w=i.l;if(0<=j||j<=i.l){for(z=j;;){j=i.c;if(i.i_g(m,97,248)){i.c=j;break}if(j>=i.l)break a;i.c=j+1}for(;!i.o_g(m,97,248);){if(i.c>=i.l)break a;i.c++}w=
+i.c;if(w<z)w=z}}i.lb=x;i.c=i.l;if(i.c>=w){j=i.lb;i.lb=w;i.k=i.c;x=i.f_a_b(v,29);i.lb=j;if(x){i.b=i.c;switch(x){case 1:i.s_d();break;case 2:x=i.l-i.c;if(i.i_g_b(s,98,122))i.s_d();else{i.c=i.l-x;i.e_s_b(1,"k")&&i.o_g_b(m,97,248)&&i.s_d()}break;case 3:i.s_f("er")}}}i.c=i.l;x=i.l-i.c;if(i.c>=w){j=i.lb;i.lb=w;i.k=i.c;if(i.f_a_b(n,2)){i.b=i.c;i.lb=j;i.c=i.l-x;if(i.c>i.lb){i.c--;i.b=i.c;i.s_d()}}else i.lb=j}i.c=i.l;if(i.c>=w){j=i.lb;i.lb=w;i.k=i.c;if(x=i.f_a_b(q,11)){i.b=i.c;i.lb=j;x==1&&i.s_d()}else i.lb=
+j}return true}},PortugueseStemmer:function(){function v(){if(d.o_g(h,97,250)){for(;!d.i_g(h,97,250);){if(d.c>=d.l)return true;d.c++}return false}return true}function n(){for(;!d.i_g(h,97,250);){if(d.c>=d.l)return false;d.c++}for(;!d.o_g(h,97,250);){if(d.c>=d.l)return false;d.c++}return true}function q(){return k<=d.c}function m(){var o;d.k=d.c;o=d.f_a_b(y,45);if(!o)return false;d.b=d.c;switch(o){case 1:if(!q())return false;d.s_d();break;case 2:if(!q())return false;d.s_f("log");break;case 3:if(!q())return false;
+d.s_f("u");break;case 4:if(!q())return false;d.s_f("ente");break;case 5:if(!(r<=d.c))return false;d.s_d();d.k=d.c;if(o=d.f_a_b(i,4)){d.b=d.c;if(q()){d.s_d();if(o==1){d.k=d.c;if(d.e_s_b(2,"at")){d.b=d.c;q()&&d.s_d()}}}}break;case 6:if(!q())return false;d.s_d();d.k=d.c;if(o=d.f_a_b(x,3)){d.b=d.c;o==1&&q()&&d.s_d()}break;case 7:if(!q())return false;d.s_d();d.k=d.c;if(o=d.f_a_b(j,3)){d.b=d.c;o==1&&q()&&d.s_d()}break;case 8:if(!q())return false;d.s_d();d.k=d.c;if(d.e_s_b(2,"at")){d.b=d.c;q()&&d.s_d()}break;
+case 9:if(!(t<=d.c)||!d.e_s_b(1,"e"))return false;d.s_f("ir")}return true}function s(o,f){if(d.e_s_b(1,o)){d.b=d.c;var b=d.l-d.c;if(d.e_s_b(1,f)){d.c=d.l-b;t<=d.c&&d.s_d();return false}}return true}var z=[new a("",-1,3),new a("\u00e3",0,1),new a("\u00f5",0,2)],w=[new a("",-1,3),new a("a~",0,1),new a("o~",0,2)],i=[new a("ic",-1,-1),new a("ad",-1,-1),new a("os",-1,-1),new a("iv",-1,1)],x=[new a("ante",-1,1),new a("avel",-1,1),new a("\u00edvel",-1,1)],j=[new a("ic",-1,1),new a("abil",-1,1),new a("iv",
+-1,1)],y=[new a("ica",-1,1),new a("\u00e2ncia",-1,1),new a("\u00eancia",-1,4),new a("ira",-1,9),new a("adora",-1,1),new a("osa",-1,1),new a("ista",-1,1),new a("iva",-1,8),new a("eza",-1,1),new a("log\u00eda",-1,2),new a("idade",-1,7),new a("ante",-1,1),new a("mente",-1,6),new a("amente",12,5),new a("\u00e1vel",-1,1),new a("\u00edvel",-1,1),new a("uci\u00f3n",-1,3),new a("ico",-1,1),new a("ismo",-1,1),new a("oso",-1,1),new a("amento",-1,1),new a("imento",-1,1),new a("ivo",-1,8),new a("a\u00e7a~o",
+-1,1),new a("ador",-1,1),new a("icas",-1,1),new a("\u00eancias",-1,4),new a("iras",-1,9),new a("adoras",-1,1),new a("osas",-1,1),new a("istas",-1,1),new a("ivas",-1,8),new a("ezas",-1,1),new a("log\u00edas",-1,2),new a("idades",-1,7),new a("uciones",-1,3),new a("adores",-1,1),new a("antes",-1,1),new a("a\u00e7o~es",-1,1),new a("icos",-1,1),new a("ismos",-1,1),new a("osos",-1,1),new a("amentos",-1,1),new a("imentos",-1,1),new a("ivos",-1,8)],A=[new a("ada",-1,1),new a("ida",-1,1),new a("ia",-1,1),
+new a("aria",2,1),new a("eria",2,1),new a("iria",2,1),new a("ara",-1,1),new a("era",-1,1),new a("ira",-1,1),new a("ava",-1,1),new a("asse",-1,1),new a("esse",-1,1),new a("isse",-1,1),new a("aste",-1,1),new a("este",-1,1),new a("iste",-1,1),new a("ei",-1,1),new a("arei",16,1),new a("erei",16,1),new a("irei",16,1),new a("am",-1,1),new a("iam",20,1),new a("ariam",21,1),new a("eriam",21,1),new a("iriam",21,1),new a("aram",20,1),new a("eram",20,1),new a("iram",20,1),new a("avam",20,1),new a("em",-1,1),
+new a("arem",29,1),new a("erem",29,1),new a("irem",29,1),new a("assem",29,1),new a("essem",29,1),new a("issem",29,1),new a("ado",-1,1),new a("ido",-1,1),new a("ando",-1,1),new a("endo",-1,1),new a("indo",-1,1),new a("ara~o",-1,1),new a("era~o",-1,1),new a("ira~o",-1,1),new a("ar",-1,1),new a("er",-1,1),new a("ir",-1,1),new a("as",-1,1),new a("adas",47,1),new a("idas",47,1),new a("ias",47,1),new a("arias",50,1),new a("erias",50,1),new a("irias",50,1),new a("aras",47,1),new a("eras",47,1),new a("iras",
+47,1),new a("avas",47,1),new a("es",-1,1),new a("ardes",58,1),new a("erdes",58,1),new a("irdes",58,1),new a("ares",58,1),new a("eres",58,1),new a("ires",58,1),new a("asses",58,1),new a("esses",58,1),new a("isses",58,1),new a("astes",58,1),new a("estes",58,1),new a("istes",58,1),new a("is",-1,1),new a("ais",71,1),new a("eis",71,1),new a("areis",73,1),new a("ereis",73,1),new a("ireis",73,1),new a("\u00e1reis",73,1),new a("\u00e9reis",73,1),new a("\u00edreis",73,1),new a("\u00e1sseis",73,1),new a("\u00e9sseis",
+73,1),new a("\u00edsseis",73,1),new a("\u00e1veis",73,1),new a("\u00edeis",73,1),new a("ar\u00edeis",84,1),new a("er\u00edeis",84,1),new a("ir\u00edeis",84,1),new a("ados",-1,1),new a("idos",-1,1),new a("amos",-1,1),new a("\u00e1ramos",90,1),new a("\u00e9ramos",90,1),new a("\u00edramos",90,1),new a("\u00e1vamos",90,1),new a("\u00edamos",90,1),new a("ar\u00edamos",95,1),new a("er\u00edamos",95,1),new a("ir\u00edamos",95,1),new a("emos",-1,1),new a("aremos",99,1),new a("eremos",99,1),new a("iremos",
+99,1),new a("\u00e1ssemos",99,1),new a("\u00eassemos",99,1),new a("\u00edssemos",99,1),new a("imos",-1,1),new a("armos",-1,1),new a("ermos",-1,1),new a("irmos",-1,1),new a("\u00e1mos",-1,1),new a("ar\u00e1s",-1,1),new a("er\u00e1s",-1,1),new a("ir\u00e1s",-1,1),new a("eu",-1,1),new a("iu",-1,1),new a("ou",-1,1),new a("ar\u00e1",-1,1),new a("er\u00e1",-1,1),new a("ir\u00e1",-1,1)],B=[new a("a",-1,1),new a("i",-1,1),new a("o",-1,1),new a("os",-1,1),new a("\u00e1",-1,1),new a("\u00ed",-1,1),new a("\u00f3",
+-1,1)],g=[new a("e",-1,1),new a("\u00e7",-1,2),new a("\u00e9",-1,1),new a("\u00ea",-1,1)],h=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,3,19,12,2],k,r,t,d=new G;this.setCurrent=function(o){d.s_c(o)};this.getCurrent=function(){return d.g_c()};this.stem=function(){for(var o=d.c,f;;){d.b=d.c;if(f=d.f_a(z,3)){d.k=d.c;switch(f){case 1:d.s_f("a~");continue;case 2:d.s_f("o~");continue;case 3:if(d.c>=d.l)break;d.c++;continue}}break}d.c=o;f=d.c;k=r=t=d.l;a:{var b=d.c,c;if(d.i_g(h,97,250)){c=d.c;if(v()){d.c=c;b:{if(d.i_g(h,
+97,250))for(;!d.o_g(h,97,250);){if(d.c>=d.l){c=false;break b}d.c++}t=d.c;c=true}if(c)break a}else t=d.c}d.c=b;if(d.o_g(h,97,250)){b=d.c;if(v()){d.c=b;if(!d.i_g(h,97,250)||d.c>=d.l)break a;d.c++}t=d.c}}d.c=f;if(n()){r=d.c;if(n())k=d.c}d.lb=o;d.c=d.l;a:{if(!m()){d.c=d.l;b:{if(d.c>=t){f=d.lb;d.lb=t;d.k=d.c;if(o=d.f_a_b(A,120)){d.b=d.c;o==1&&d.s_d();d.lb=f;o=true;break b}d.lb=f}o=false}if(!o){d.c=d.l;d.k=d.c;if(o=d.f_a_b(B,7)){d.b=d.c;o==1&&t<=d.c&&d.s_d()}break a}}d.c=d.l;d.k=d.c;if(d.e_s_b(1,"i")){d.b=
+d.c;if(d.e_s_b(1,"c")){d.c=d.l;t<=d.c&&d.s_d()}}}d.c=d.l;d.k=d.c;if(o=d.f_a_b(g,4)){d.b=d.c;switch(o){case 1:if(t<=d.c){d.s_d();d.k=d.c;s("u","g")&&s("i","c")}break;case 2:d.s_f("c")}}for(d.c=d.lb;;){d.b=d.c;if(o=d.f_a(w,3)){d.k=d.c;switch(o){case 1:d.s_f("\u00e3");continue;case 2:d.s_f("\u00f5");continue;case 3:if(d.c>=d.l)break;d.c++;continue}}break}return true}},RomanianStemmer:function(){function v(k,r){if(h.e_s(1,k)){h.k=h.c;h.i_g(j,97,259)&&h.s_f(r)}}function n(){if(h.o_g(j,97,259)){for(;!h.i_g(j,
+97,259);){if(h.c>=h.l)return true;h.c++}return false}return true}function q(){for(;!h.i_g(j,97,259);){if(h.c>=h.l)return false;h.c++}for(;!h.o_g(j,97,259);){if(h.c>=h.l)return false;h.c++}return true}var m=[new a("",-1,3),new a("I",0,1),new a("U",0,2)],s=[new a("ea",-1,3),new a("a\u0163ia",-1,7),new a("aua",-1,2),new a("iua",-1,4),new a("a\u0163ie",-1,7),new a("ele",-1,3),new a("ile",-1,5),new a("iile",6,4),new a("iei",-1,4),new a("atei",-1,6),new a("ii",-1,4),new a("ului",-1,1),new a("ul",-1,1),
+new a("elor",-1,3),new a("ilor",-1,4),new a("iilor",14,4)],z=[new a("icala",-1,4),new a("iciva",-1,4),new a("ativa",-1,5),new a("itiva",-1,6),new a("icale",-1,4),new a("a\u0163iune",-1,5),new a("i\u0163iune",-1,6),new a("atoare",-1,5),new a("itoare",-1,6),new a("\u0103toare",-1,5),new a("icitate",-1,4),new a("abilitate",-1,1),new a("ibilitate",-1,2),new a("ivitate",-1,3),new a("icive",-1,4),new a("ative",-1,5),new a("itive",-1,6),new a("icali",-1,4),new a("atori",-1,5),new a("icatori",18,4),new a("itori",
+-1,6),new a("\u0103tori",-1,5),new a("icitati",-1,4),new a("abilitati",-1,1),new a("ivitati",-1,3),new a("icivi",-1,4),new a("ativi",-1,5),new a("itivi",-1,6),new a("icit\u0103i",-1,4),new a("abilit\u0103i",-1,1),new a("ivit\u0103i",-1,3),new a("icit\u0103\u0163i",-1,4),new a("abilit\u0103\u0163i",-1,1),new a("ivit\u0103\u0163i",-1,3),new a("ical",-1,4),new a("ator",-1,5),new a("icator",35,4),new a("itor",-1,6),new a("\u0103tor",-1,5),new a("iciv",-1,4),new a("ativ",-1,5),new a("itiv",-1,6),new a("ical\u0103",
+-1,4),new a("iciv\u0103",-1,4),new a("ativ\u0103",-1,5),new a("itiv\u0103",-1,6)],w=[new a("ica",-1,1),new a("abila",-1,1),new a("ibila",-1,1),new a("oasa",-1,1),new a("ata",-1,1),new a("ita",-1,1),new a("anta",-1,1),new a("ista",-1,3),new a("uta",-1,1),new a("iva",-1,1),new a("ic",-1,1),new a("ice",-1,1),new a("abile",-1,1),new a("ibile",-1,1),new a("isme",-1,3),new a("iune",-1,2),new a("oase",-1,1),new a("ate",-1,1),new a("itate",17,1),new a("ite",-1,1),new a("ante",-1,1),new a("iste",-1,3),new a("ute",
+-1,1),new a("ive",-1,1),new a("ici",-1,1),new a("abili",-1,1),new a("ibili",-1,1),new a("iuni",-1,2),new a("atori",-1,1),new a("osi",-1,1),new a("ati",-1,1),new a("itati",30,1),new a("iti",-1,1),new a("anti",-1,1),new a("isti",-1,3),new a("uti",-1,1),new a("i\u015fti",-1,3),new a("ivi",-1,1),new a("it\u0103i",-1,1),new a("o\u015fi",-1,1),new a("it\u0103\u0163i",-1,1),new a("abil",-1,1),new a("ibil",-1,1),new a("ism",-1,3),new a("ator",-1,1),new a("os",-1,1),new a("at",-1,1),new a("it",-1,1),new a("ant",
+-1,1),new a("ist",-1,3),new a("ut",-1,1),new a("iv",-1,1),new a("ic\u0103",-1,1),new a("abil\u0103",-1,1),new a("ibil\u0103",-1,1),new a("oas\u0103",-1,1),new a("at\u0103",-1,1),new a("it\u0103",-1,1),new a("ant\u0103",-1,1),new a("ist\u0103",-1,3),new a("ut\u0103",-1,1),new a("iv\u0103",-1,1)],i=[new a("ea",-1,1),new a("ia",-1,1),new a("esc",-1,1),new a("\u0103sc",-1,1),new a("ind",-1,1),new a("\u00e2nd",-1,1),new a("are",-1,1),new a("ere",-1,1),new a("ire",-1,1),new a("\u00e2re",-1,1),new a("se",
+-1,2),new a("ase",10,1),new a("sese",10,2),new a("ise",10,1),new a("use",10,1),new a("\u00e2se",10,1),new a("e\u015fte",-1,1),new a("\u0103\u015fte",-1,1),new a("eze",-1,1),new a("ai",-1,1),new a("eai",19,1),new a("iai",19,1),new a("sei",-1,2),new a("e\u015fti",-1,1),new a("\u0103\u015fti",-1,1),new a("ui",-1,1),new a("ezi",-1,1),new a("\u00e2i",-1,1),new a("a\u015fi",-1,1),new a("se\u015fi",-1,2),new a("ase\u015fi",29,1),new a("sese\u015fi",29,2),new a("ise\u015fi",29,1),new a("use\u015fi",29,1),
+new a("\u00e2se\u015fi",29,1),new a("i\u015fi",-1,1),new a("u\u015fi",-1,1),new a("\u00e2\u015fi",-1,1),new a("a\u0163i",-1,2),new a("ea\u0163i",38,1),new a("ia\u0163i",38,1),new a("e\u0163i",-1,2),new a("i\u0163i",-1,2),new a("\u00e2\u0163i",-1,2),new a("ar\u0103\u0163i",-1,1),new a("ser\u0103\u0163i",-1,2),new a("aser\u0103\u0163i",45,1),new a("seser\u0103\u0163i",45,2),new a("iser\u0103\u0163i",45,1),new a("user\u0103\u0163i",45,1),new a("\u00e2ser\u0103\u0163i",45,1),new a("ir\u0103\u0163i",-1,
+1),new a("ur\u0103\u0163i",-1,1),new a("\u00e2r\u0103\u0163i",-1,1),new a("am",-1,1),new a("eam",54,1),new a("iam",54,1),new a("em",-1,2),new a("asem",57,1),new a("sesem",57,2),new a("isem",57,1),new a("usem",57,1),new a("\u00e2sem",57,1),new a("im",-1,2),new a("\u00e2m",-1,2),new a("\u0103m",-1,2),new a("ar\u0103m",65,1),new a("ser\u0103m",65,2),new a("aser\u0103m",67,1),new a("seser\u0103m",67,2),new a("iser\u0103m",67,1),new a("user\u0103m",67,1),new a("\u00e2ser\u0103m",67,1),new a("ir\u0103m",
+65,1),new a("ur\u0103m",65,1),new a("\u00e2r\u0103m",65,1),new a("au",-1,1),new a("eau",76,1),new a("iau",76,1),new a("indu",-1,1),new a("\u00e2ndu",-1,1),new a("ez",-1,1),new a("easc\u0103",-1,1),new a("ar\u0103",-1,1),new a("ser\u0103",-1,2),new a("aser\u0103",84,1),new a("seser\u0103",84,2),new a("iser\u0103",84,1),new a("user\u0103",84,1),new a("\u00e2ser\u0103",84,1),new a("ir\u0103",-1,1),new a("ur\u0103",-1,1),new a("\u00e2r\u0103",-1,1),new a("eaz\u0103",-1,1)],x=[new a("a",-1,1),new a("e",
+-1,1),new a("ie",1,1),new a("i",-1,1),new a("\u0103",-1,1)],j=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,2,32,0,0,4],y,A,B,g,h=new G;this.setCurrent=function(k){h.s_c(k)};this.getCurrent=function(){return h.g_c()};this.stem=function(){for(var k=h.c,r,t;;){r=h.c;if(h.i_g(j,97,259)){t=h.c;h.b=t;v("u","U");h.c=t;v("i","I")}h.c=r;if(h.c>=h.l)break;h.c++}h.c=k;r=h.c;A=B=g=h.l;a:{t=h.c;var d;if(h.i_g(j,97,259)){d=h.c;if(n()){h.c=d;b:{if(h.i_g(j,97,259))for(;!h.o_g(j,97,259);){if(h.c>=h.l){d=true;break b}h.c++}d=
+false}if(!d){g=h.c;break a}}else{g=h.c;break a}}h.c=t;if(h.o_g(j,97,259)){t=h.c;if(n()){h.c=t;h.i_g(j,97,259)&&h.c<h.l&&h.c++}g=h.c}}h.c=r;if(q()){B=h.c;if(q())A=h.c}h.lb=k;h.c=h.l;h.k=h.c;if(k=h.f_a_b(s,16)){h.b=h.c;if(B<=h.c)switch(k){case 1:h.s_d();break;case 2:h.s_f("a");break;case 3:h.s_f("e");break;case 4:h.s_f("i");break;case 5:k=h.l-h.c;if(!h.e_s_b(2,"ab")){h.c=h.l-k;h.s_f("i")}break;case 6:h.s_f("at");break;case 7:h.s_f("a\u0163i")}}h.c=h.l;for(y=false;;){k=h.l-h.c;a:{r=void 0;t=h.l-h.c;
+h.k=h.c;if(r=h.f_a_b(z,46)){h.b=h.c;if(B<=h.c){switch(r){case 1:h.s_f("abil");break;case 2:h.s_f("ibil");break;case 3:h.s_f("iv");break;case 4:h.s_f("ic");break;case 5:h.s_f("at");break;case 6:h.s_f("it")}y=true;h.c=h.l-t;r=true;break a}}r=false}if(!r){h.c=h.l-k;break}}h.k=h.c;if(k=h.f_a_b(w,62)){h.b=h.c;if(A<=h.c){switch(k){case 1:h.s_d();break;case 2:if(h.e_s_b(1,"\u0163")){h.b=h.c;h.s_f("t")}break;case 3:h.s_f("ist")}y=true}}h.c=h.l;if(!y){h.c=h.l;if(h.c>=g){k=h.lb;h.lb=g;h.k=h.c;if(r=h.f_a_b(i,
+94)){h.b=h.c;switch(r){case 1:r=h.l-h.c;if(!h.o_g_b(j,97,259)){h.c=h.l-r;if(!h.e_s_b(1,"u"))break}case 2:h.s_d()}}h.lb=k}h.c=h.l}h.k=h.c;if(k=h.f_a_b(x,5)){h.b=h.c;g<=h.c&&k==1&&h.s_d()}for(h.c=h.lb;;){h.b=h.c;if(k=h.f_a(m,3)){h.k=h.c;switch(k){case 1:h.s_f("i");continue;case 2:h.s_f("u");continue;case 3:if(h.c>=h.l)break;h.c++;continue}}break}return true}},RussianStemmer:function(){function v(){for(;!k.i_g(B,1072,1103);){if(k.c>=k.l)return false;k.c++}return true}function n(){for(;!k.o_g(B,1072,
+1103);){if(k.c>=k.l)return false;k.c++}return true}function q(r,t){var d;k.k=k.c;if(d=k.f_a_b(r,t)){k.b=k.c;switch(d){case 1:d=k.l-k.c;if(!k.e_s_b(1,"\u0430")){k.c=k.l-d;if(!k.e_s_b(1,"\u044f"))return false}case 2:k.s_d()}return true}return false}function m(r,t){var d;k.k=k.c;if(d=k.f_a_b(r,t)){k.b=k.c;d==1&&k.s_d();return true}return false}var s=[new a("\u0432",-1,1),new a("\u0438\u0432",0,2),new a("\u044b\u0432",0,2),new a("\u0432\u0448\u0438",-1,1),new a("\u0438\u0432\u0448\u0438",3,2),new a("\u044b\u0432\u0448\u0438",
+3,2),new a("\u0432\u0448\u0438\u0441\u044c",-1,1),new a("\u0438\u0432\u0448\u0438\u0441\u044c",6,2),new a("\u044b\u0432\u0448\u0438\u0441\u044c",6,2)],z=[new a("\u0435\u0435",-1,1),new a("\u0438\u0435",-1,1),new a("\u043e\u0435",-1,1),new a("\u044b\u0435",-1,1),new a("\u0438\u043c\u0438",-1,1),new a("\u044b\u043c\u0438",-1,1),new a("\u0435\u0439",-1,1),new a("\u0438\u0439",-1,1),new a("\u043e\u0439",-1,1),new a("\u044b\u0439",-1,1),new a("\u0435\u043c",-1,1),new a("\u0438\u043c",-1,1),new a("\u043e\u043c",
+-1,1),new a("\u044b\u043c",-1,1),new a("\u0435\u0433\u043e",-1,1),new a("\u043e\u0433\u043e",-1,1),new a("\u0435\u043c\u0443",-1,1),new a("\u043e\u043c\u0443",-1,1),new a("\u0438\u0445",-1,1),new a("\u044b\u0445",-1,1),new a("\u0435\u044e",-1,1),new a("\u043e\u044e",-1,1),new a("\u0443\u044e",-1,1),new a("\u044e\u044e",-1,1),new a("\u0430\u044f",-1,1),new a("\u044f\u044f",-1,1)],w=[new a("\u0435\u043c",-1,1),new a("\u043d\u043d",-1,1),new a("\u0432\u0448",-1,1),new a("\u0438\u0432\u0448",2,2),new a("\u044b\u0432\u0448",
+2,2),new a("\u0449",-1,1),new a("\u044e\u0449",5,1),new a("\u0443\u044e\u0449",6,2)],i=[new a("\u0441\u044c",-1,1),new a("\u0441\u044f",-1,1)],x=[new a("\u043b\u0430",-1,1),new a("\u0438\u043b\u0430",0,2),new a("\u044b\u043b\u0430",0,2),new a("\u043d\u0430",-1,1),new a("\u0435\u043d\u0430",3,2),new a("\u0435\u0442\u0435",-1,1),new a("\u0438\u0442\u0435",-1,2),new a("\u0439\u0442\u0435",-1,1),new a("\u0435\u0439\u0442\u0435",7,2),new a("\u0443\u0439\u0442\u0435",7,2),new a("\u043b\u0438",-1,1),new a("\u0438\u043b\u0438",
+10,2),new a("\u044b\u043b\u0438",10,2),new a("\u0439",-1,1),new a("\u0435\u0439",13,2),new a("\u0443\u0439",13,2),new a("\u043b",-1,1),new a("\u0438\u043b",16,2),new a("\u044b\u043b",16,2),new a("\u0435\u043c",-1,1),new a("\u0438\u043c",-1,2),new a("\u044b\u043c",-1,2),new a("\u043d",-1,1),new a("\u0435\u043d",22,2),new a("\u043b\u043e",-1,1),new a("\u0438\u043b\u043e",24,2),new a("\u044b\u043b\u043e",24,2),new a("\u043d\u043e",-1,1),new a("\u0435\u043d\u043e",27,2),new a("\u043d\u043d\u043e",27,
+1),new a("\u0435\u0442",-1,1),new a("\u0443\u0435\u0442",30,2),new a("\u0438\u0442",-1,2),new a("\u044b\u0442",-1,2),new a("\u044e\u0442",-1,1),new a("\u0443\u044e\u0442",34,2),new a("\u044f\u0442",-1,2),new a("\u043d\u044b",-1,1),new a("\u0435\u043d\u044b",37,2),new a("\u0442\u044c",-1,1),new a("\u0438\u0442\u044c",39,2),new a("\u044b\u0442\u044c",39,2),new a("\u0435\u0448\u044c",-1,1),new a("\u0438\u0448\u044c",-1,2),new a("\u044e",-1,2),new a("\u0443\u044e",44,2)],j=[new a("\u0430",-1,1),new a("\u0435\u0432",
+-1,1),new a("\u043e\u0432",-1,1),new a("\u0435",-1,1),new a("\u0438\u0435",3,1),new a("\u044c\u0435",3,1),new a("\u0438",-1,1),new a("\u0435\u0438",6,1),new a("\u0438\u0438",6,1),new a("\u0430\u043c\u0438",6,1),new a("\u044f\u043c\u0438",6,1),new a("\u0438\u044f\u043c\u0438",10,1),new a("\u0439",-1,1),new a("\u0435\u0439",12,1),new a("\u0438\u0435\u0439",13,1),new a("\u0438\u0439",12,1),new a("\u043e\u0439",12,1),new a("\u0430\u043c",-1,1),new a("\u0435\u043c",-1,1),new a("\u0438\u0435\u043c",18,
+1),new a("\u043e\u043c",-1,1),new a("\u044f\u043c",-1,1),new a("\u0438\u044f\u043c",21,1),new a("\u043e",-1,1),new a("\u0443",-1,1),new a("\u0430\u0445",-1,1),new a("\u044f\u0445",-1,1),new a("\u0438\u044f\u0445",26,1),new a("\u044b",-1,1),new a("\u044c",-1,1),new a("\u044e",-1,1),new a("\u0438\u044e",30,1),new a("\u044c\u044e",30,1),new a("\u044f",-1,1),new a("\u0438\u044f",33,1),new a("\u044c\u044f",33,1)],y=[new a("\u043e\u0441\u0442",-1,1),new a("\u043e\u0441\u0442\u044c",-1,1)],A=[new a("\u0435\u0439\u0448\u0435",
+-1,1),new a("\u043d",-1,2),new a("\u0435\u0439\u0448",-1,1),new a("\u044c",-1,3)],B=[33,65,8,232],g,h,k=new G;this.setCurrent=function(r){k.s_c(r)};this.getCurrent=function(){return k.g_c()};this.stem=function(){g=h=k.l;if(v()){h=k.c;if(n())if(v())if(n())g=k.c}k.c=k.l;if(k.c<h)return false;k.lb=h;if(!q(s,9)){k.c=k.l;if(!m(i,2))k.c=k.l;var r;if(m(z,26)){q(w,8);r=true}else r=false;if(!r){k.c=k.l;if(!q(x,46)){k.c=k.l;m(j,36)}}}k.c=k.l;k.k=k.c;if(k.e_s_b(1,"\u0438")){k.b=k.c;k.s_d()}else k.c=k.l;k.k=
+k.c;if(r=k.f_a_b(y,2)){k.b=k.c;g<=k.c&&r==1&&k.s_d()}k.c=k.l;k.k=k.c;if(r=k.f_a_b(A,4)){k.b=k.c;switch(r){case 1:k.s_d();k.k=k.c;if(!k.e_s_b(1,"\u043d"))break;k.b=k.c;case 2:if(!k.e_s_b(1,"\u043d"))break;case 3:k.s_d()}}return true}},SpanishStemmer:function(){function v(){if(c.o_g(d,97,252)){for(;!c.i_g(d,97,252);){if(c.c>=c.l)return true;c.c++}return false}return true}function n(){if(c.i_g(d,97,252)){var l=c.c;if(v()){c.c=l;if(!c.i_g(d,97,252))return true;for(;!c.o_g(d,97,252);){if(c.c>=c.l)return true;
+c.c++}}return false}return true}function q(){for(;!c.i_g(d,97,252);){if(c.c>=c.l)return false;c.c++}for(;!c.o_g(d,97,252);){if(c.c>=c.l)return false;c.c++}return true}function m(){return o<=c.c}function s(l,C){if(!m())return true;c.s_d();c.k=c.c;var F=c.f_a_b(l,C);if(F){c.b=c.c;F==1&&m()&&c.s_d()}return false}function z(l){if(!m())return true;c.s_d();c.k=c.c;if(c.e_s_b(2,l)){c.b=c.c;m()&&c.s_d()}return false}function w(){var l;c.k=c.c;if(l=c.f_a_b(h,46)){c.b=c.c;switch(l){case 1:if(!m())return false;
+c.s_d();break;case 2:if(z("ic"))return false;break;case 3:if(!m())return false;c.s_f("log");break;case 4:if(!m())return false;c.s_f("u");break;case 5:if(!m())return false;c.s_f("ente");break;case 6:if(!(f<=c.c))return false;c.s_d();c.k=c.c;if(l=c.f_a_b(A,4)){c.b=c.c;if(m()){c.s_d();if(l==1){c.k=c.c;if(c.e_s_b(2,"at")){c.b=c.c;m()&&c.s_d()}}}}break;case 7:if(s(B,3))return false;break;case 8:if(s(g,3))return false;break;case 9:if(z("at"))return false}return true}return false}function i(){var l,C;if(c.c>=
+b){C=c.lb;c.lb=b;c.k=c.c;l=c.f_a_b(k,12);c.lb=C;if(l){c.b=c.c;if(l==1){if(!c.e_s_b(1,"u"))return false;c.s_d()}return true}}return false}var x=[new a("",-1,6),new a("\u00e1",0,1),new a("\u00e9",0,2),new a("\u00ed",0,3),new a("\u00f3",0,4),new a("\u00fa",0,5)],j=[new a("la",-1,-1),new a("sela",0,-1),new a("le",-1,-1),new a("me",-1,-1),new a("se",-1,-1),new a("lo",-1,-1),new a("selo",5,-1),new a("las",-1,-1),new a("selas",7,-1),new a("les",-1,-1),new a("los",-1,-1),new a("selos",10,-1),new a("nos",
+-1,-1)],y=[new a("ando",-1,6),new a("iendo",-1,6),new a("yendo",-1,7),new a("\u00e1ndo",-1,2),new a("i\u00e9ndo",-1,1),new a("ar",-1,6),new a("er",-1,6),new a("ir",-1,6),new a("\u00e1r",-1,3),new a("\u00e9r",-1,4),new a("\u00edr",-1,5)],A=[new a("ic",-1,-1),new a("ad",-1,-1),new a("os",-1,-1),new a("iv",-1,1)],B=[new a("able",-1,1),new a("ible",-1,1),new a("ante",-1,1)],g=[new a("ic",-1,1),new a("abil",-1,1),new a("iv",-1,1)],h=[new a("ica",-1,1),new a("ancia",-1,2),new a("encia",-1,5),new a("adora",
+-1,2),new a("osa",-1,1),new a("ista",-1,1),new a("iva",-1,9),new a("anza",-1,1),new a("log\u00eda",-1,3),new a("idad",-1,8),new a("able",-1,1),new a("ible",-1,1),new a("ante",-1,2),new a("mente",-1,7),new a("amente",13,6),new a("aci\u00f3n",-1,2),new a("uci\u00f3n",-1,4),new a("ico",-1,1),new a("ismo",-1,1),new a("oso",-1,1),new a("amiento",-1,1),new a("imiento",-1,1),new a("ivo",-1,9),new a("ador",-1,2),new a("icas",-1,1),new a("ancias",-1,2),new a("encias",-1,5),new a("adoras",-1,2),new a("osas",
+-1,1),new a("istas",-1,1),new a("ivas",-1,9),new a("anzas",-1,1),new a("log\u00edas",-1,3),new a("idades",-1,8),new a("ables",-1,1),new a("ibles",-1,1),new a("aciones",-1,2),new a("uciones",-1,4),new a("adores",-1,2),new a("antes",-1,2),new a("icos",-1,1),new a("ismos",-1,1),new a("osos",-1,1),new a("amientos",-1,1),new a("imientos",-1,1),new a("ivos",-1,9)],k=[new a("ya",-1,1),new a("ye",-1,1),new a("yan",-1,1),new a("yen",-1,1),new a("yeron",-1,1),new a("yendo",-1,1),new a("yo",-1,1),new a("yas",
+-1,1),new a("yes",-1,1),new a("yais",-1,1),new a("yamos",-1,1),new a("y\u00f3",-1,1)],r=[new a("aba",-1,2),new a("ada",-1,2),new a("ida",-1,2),new a("ara",-1,2),new a("iera",-1,2),new a("\u00eda",-1,2),new a("ar\u00eda",5,2),new a("er\u00eda",5,2),new a("ir\u00eda",5,2),new a("ad",-1,2),new a("ed",-1,2),new a("id",-1,2),new a("ase",-1,2),new a("iese",-1,2),new a("aste",-1,2),new a("iste",-1,2),new a("an",-1,2),new a("aban",16,2),new a("aran",16,2),new a("ieran",16,2),new a("\u00edan",16,2),new a("ar\u00edan",
+20,2),new a("er\u00edan",20,2),new a("ir\u00edan",20,2),new a("en",-1,1),new a("asen",24,2),new a("iesen",24,2),new a("aron",-1,2),new a("ieron",-1,2),new a("ar\u00e1n",-1,2),new a("er\u00e1n",-1,2),new a("ir\u00e1n",-1,2),new a("ado",-1,2),new a("ido",-1,2),new a("ando",-1,2),new a("iendo",-1,2),new a("ar",-1,2),new a("er",-1,2),new a("ir",-1,2),new a("as",-1,2),new a("abas",39,2),new a("adas",39,2),new a("idas",39,2),new a("aras",39,2),new a("ieras",39,2),new a("\u00edas",39,2),new a("ar\u00edas",
+45,2),new a("er\u00edas",45,2),new a("ir\u00edas",45,2),new a("es",-1,1),new a("ases",49,2),new a("ieses",49,2),new a("abais",-1,2),new a("arais",-1,2),new a("ierais",-1,2),new a("\u00edais",-1,2),new a("ar\u00edais",55,2),new a("er\u00edais",55,2),new a("ir\u00edais",55,2),new a("aseis",-1,2),new a("ieseis",-1,2),new a("asteis",-1,2),new a("isteis",-1,2),new a("\u00e1is",-1,2),new a("\u00e9is",-1,1),new a("ar\u00e9is",64,2),new a("er\u00e9is",64,2),new a("ir\u00e9is",64,2),new a("ados",-1,2),new a("idos",
+-1,2),new a("amos",-1,2),new a("\u00e1bamos",70,2),new a("\u00e1ramos",70,2),new a("i\u00e9ramos",70,2),new a("\u00edamos",70,2),new a("ar\u00edamos",74,2),new a("er\u00edamos",74,2),new a("ir\u00edamos",74,2),new a("emos",-1,1),new a("aremos",78,2),new a("eremos",78,2),new a("iremos",78,2),new a("\u00e1semos",78,2),new a("i\u00e9semos",78,2),new a("imos",-1,2),new a("ar\u00e1s",-1,2),new a("er\u00e1s",-1,2),new a("ir\u00e1s",-1,2),new a("\u00eds",-1,2),new a("ar\u00e1",-1,2),new a("er\u00e1",-1,
+2),new a("ir\u00e1",-1,2),new a("ar\u00e9",-1,2),new a("er\u00e9",-1,2),new a("ir\u00e9",-1,2),new a("i\u00f3",-1,2)],t=[new a("a",-1,1),new a("e",-1,2),new a("o",-1,1),new a("os",-1,1),new a("\u00e1",-1,1),new a("\u00e9",-1,2),new a("\u00ed",-1,1),new a("\u00f3",-1,1)],d=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,1,17,4,10],o,f,b,c=new G;this.setCurrent=function(l){c.s_c(l)};this.getCurrent=function(){return c.g_c()};this.stem=function(){var l=c.c,C=c.c;o=f=b=c.l;a:{var F=c.c;if(n()){c.c=F;if(!c.o_g(d,
+97,252))break a;F=c.c;if(v()){c.c=F;if(!c.i_g(d,97,252)||c.c>=c.l)break a;c.c++}}b=c.c}c.c=C;if(q()){f=c.c;if(q())o=c.c}c.lb=l;c.c=c.l;c.k=c.c;if(c.f_a_b(j,13)){c.b=c.c;if((l=c.f_a_b(y,11))&&b<=c.c)switch(l){case 1:c.b=c.c;c.s_f("iendo");break;case 2:c.b=c.c;c.s_f("ando");break;case 3:c.b=c.c;c.s_f("ar");break;case 4:c.b=c.c;c.s_f("er");break;case 5:c.b=c.c;c.s_f("ir");break;case 6:c.s_d();break;case 7:c.e_s_b(1,"u")&&c.s_d()}}c.c=c.l;if(!w()){c.c=c.l;if(!i()){c.c=c.l;if(c.c>=b){C=c.lb;c.lb=b;c.k=
+c.c;l=c.f_a_b(r,96);c.lb=C;if(l){c.b=c.c;switch(l){case 1:l=c.l-c.c;if(c.e_s_b(1,"u")){C=c.l-c.c;c.c=c.e_s_b(1,"g")?c.l-C:c.l-l}else c.c=c.l-l;c.b=c.c;case 2:c.s_d()}}}}}c.c=c.l;c.k=c.c;if(l=c.f_a_b(t,8)){c.b=c.c;switch(l){case 1:b<=c.c&&c.s_d();break;case 2:if(b<=c.c){c.s_d();c.k=c.c;if(c.e_s_b(1,"u")){c.b=c.c;l=c.l-c.c;if(c.e_s_b(1,"g")){c.c=c.l-l;b<=c.c&&c.s_d()}}}}}for(c.c=c.lb;;){c.b=c.c;if(l=c.f_a(x,6)){c.k=c.c;switch(l){case 1:c.s_f("a");continue;case 2:c.s_f("e");continue;case 3:c.s_f("i");
+continue;case 4:c.s_f("o");continue;case 5:c.s_f("u");continue;case 6:if(c.c>=c.l)break;c.c++;continue}}break}return true}},SwedishStemmer:function(){var v=[new a("a",-1,1),new a("arna",0,1),new a("erna",0,1),new a("heterna",2,1),new a("orna",0,1),new a("ad",-1,1),new a("e",-1,1),new a("ade",6,1),new a("ande",6,1),new a("arne",6,1),new a("are",6,1),new a("aste",6,1),new a("en",-1,1),new a("anden",12,1),new a("aren",12,1),new a("heten",12,1),new a("ern",-1,1),new a("ar",-1,1),new a("er",-1,1),new a("heter",
+18,1),new a("or",-1,1),new a("s",-1,2),new a("as",21,1),new a("arnas",22,1),new a("ernas",22,1),new a("ornas",22,1),new a("es",21,1),new a("ades",26,1),new a("andes",26,1),new a("ens",21,1),new a("arens",29,1),new a("hetens",29,1),new a("erns",21,1),new a("at",-1,1),new a("andet",-1,1),new a("het",-1,1),new a("ast",-1,1)],n=[new a("dd",-1,-1),new a("gd",-1,-1),new a("nn",-1,-1),new a("dt",-1,-1),new a("gt",-1,-1),new a("kt",-1,-1),new a("tt",-1,-1)],q=[new a("ig",-1,1),new a("lig",0,1),new a("els",
+-1,1),new a("fullt",-1,3),new a("l\u00f6st",-1,2)],m=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,24,0,32],s=[119,127,149],z,w,i=new G;this.setCurrent=function(x){i.s_c(x)};this.getCurrent=function(){return i.g_c()};this.stem=function(){var x=i.c;a:{var j;j=i.c+3;w=i.l;if(0<=j||j<=i.l){for(z=j;;){j=i.c;if(i.i_g(m,97,246)){i.c=j;break}i.c=j;if(i.c>=i.l)break a;i.c++}for(;!i.o_g(m,97,246);){if(i.c>=i.l)break a;i.c++}w=i.c;if(w<z)w=z}}i.lb=x;i.c=i.l;j=i.lb;if(i.c>=w){i.lb=w;i.c=i.l;i.k=i.c;x=i.f_a_b(v,37);i.lb=
+j;if(x){i.b=i.c;switch(x){case 1:i.s_d();break;case 2:i.i_g_b(s,98,121)&&i.s_d()}}}i.c=i.l;x=i.lb;if(i.c>=w){i.lb=w;i.c=i.l;if(i.f_a_b(n,7)){i.c=i.l;i.k=i.c;if(i.c>i.lb){i.b=--i.c;i.s_d()}}i.lb=x}i.c=i.l;if(i.c>=w){j=i.lb;i.lb=w;i.c=i.l;i.k=i.c;if(x=i.f_a_b(q,5)){i.b=i.c;switch(x){case 1:i.s_d();break;case 2:i.s_f("l\u00f6s");break;case 3:i.s_f("full")}}i.lb=j}return true}},TurkishStemmer:function(){function v(p,u,E){for(;;){var D=e.l-e.c;if(e.i_g_b(p,u,E)){e.c=e.l-D;break}e.c=e.l-D;if(e.c<=e.lb)return false;
+e.c--}return true}function n(){var p,u;p=e.l-e.c;v(H,97,305);for(var E=0;E<O.length;E++){u=e.l-e.c;var D=O[E];if(e.e_s_b(1,D[0])&&v(D[1],D[2],D[3])){e.c=e.l-p;return true}e.c=e.l-u}e.c=e.l-u;if(!e.e_s_b(1,"\u00fc")||!v(P,246,252))return false;e.c=e.l-p;return true}function q(p,u){var E=e.l-e.c,D;if(p()){e.c=e.l-E;if(e.c>e.lb){e.c--;D=e.l-e.c;if(u()){e.c=e.l-D;return true}}}e.c=e.l-E;if(p()){e.c=e.l-E;return false}e.c=e.l-E;if(e.c<=e.lb)return false;e.c--;if(!u())return false;e.c=e.l-E;return true}
+function m(p){return q(p,function(){return e.i_g_b(H,97,305)})}function s(){return m(function(){return e.e_s_b(1,"n")})}function z(){return m(function(){return e.e_s_b(1,"s")})}function w(){return m(function(){return e.e_s_b(1,"y")})}function i(){return q(function(){return e.i_g_b(I,105,305)},function(){return e.o_g_b(H,97,305)})}function x(){return e.f_a_b(l,10)&&i()}function j(){return n()&&e.i_g_b(I,105,305)&&z()}function y(){return e.f_a_b(C,2)}function A(){return n()&&e.f_a_b(W,4)&&w()}function B(){return n()&&
+e.f_a_b(X,4)&&w()}function g(){return n()&&e.f_a_b(Y,2)}function h(){return n()&&e.f_a_b(Z,32)&&w()}function k(){return n()&&e.f_a_b($,4)&&w()}function r(){if(!(n()&&e.f_a_b(aa,4)))return true;var p=e.l-e.c;if(!h()){e.c=e.l-p;if(!(e.f_a_b(J,8)&&w()))return true}return false}function t(){var p;e.k=e.c;if(e.e_s_b(2,"ki")){p=e.l-e.c;if(n()&&e.f_a_b(Q,4)){e.b=e.c;e.s_d();p=e.l-e.c;e.k=e.c;if(g()){e.b=e.c;e.s_d();t()}else{e.c=e.l-p;if(x()){e.b=e.c;e.s_d();e.k=e.c;if(g()){e.b=e.c;e.s_d();t()}}}return true}e.c=
+e.l-p;if(n()&&e.f_a_b(R,4)&&s()){e.b=e.c;e.s_d();e.k=e.c;p=e.l-e.c;if(y()){e.b=e.c;e.s_d()}else{e.c=e.l-p;e.k=e.c;if(!x()){e.c=e.l-p;if(!j()){e.c=e.l-p;if(!t())return true}}e.b=e.c;e.s_d();e.k=e.c;if(g()){e.b=e.c;e.s_d();t()}}return true}e.c=e.l-p;if(n()&&e.f_a_b(S,2)){p=e.l-e.c;if(y()){e.b=e.c;e.s_d()}else{e.c=e.l-p;if(j()){e.b=e.c;e.s_d();e.k=e.c;if(g()){e.b=e.c;e.s_d();t()}}else{e.c=e.l-p;if(!t())return false}}return true}}return false}function d(){var p=e.l-e.c;e.k=e.c;if(!(n()&&e.f_a_b(R,4)&&
+s())){e.c=e.l-p;if(!(n()&&e.f_a_b(ba,2)&&w()))return false}e.b=e.c;e.s_d();p=e.l-e.c;e.k=e.c;if(g()){e.b=e.c;e.s_d();if(t())return true}e.c=e.l-p;e.k=e.c;if(!x()){e.c=e.l-p;if(!j()){e.c=e.l-p;if(!t())return true}}e.b=e.c;e.s_d();e.k=e.c;if(g()){e.b=e.c;e.s_d();t()}return true}function o(){var p=e.l-e.c;e.k=e.c;if(!(n()&&e.f_a_b(Q,4))){e.c=e.l-p;if(!(n()&&e.i_g_b(I,105,305)&&w())){e.c=e.l-p;if(!(n()&&e.f_a_b(ca,2)&&w()))return false}}e.b=e.c;e.s_d();e.k=e.c;p=e.l-e.c;if(x()){e.b=e.c;e.s_d();p=e.l-
+e.c;e.k=e.c;if(!g())e.c=e.l-p}else{e.c=e.l-p;if(!g())return true}e.b=e.c;e.s_d();e.k=e.c;t();return true}function f(){var p=e.l-e.c;e.k=e.c;if(g()){e.b=e.c;e.s_d();t()}else{e.c=e.l-p;e.k=e.c;if(n()&&e.f_a_b(da,2)&&s()){e.b=e.c;e.s_d();p=e.l-e.c;e.k=e.c;if(y()){e.b=e.c;e.s_d()}else{e.c=e.l-p;e.k=e.c;if(!x()){e.c=e.l-p;if(!j()){e.c=e.l-p;e.k=e.c;if(!g())return;e.b=e.c;e.s_d();if(!t())return}}e.b=e.c;e.s_d();e.k=e.c;if(g()){e.b=e.c;e.s_d();t()}}}else{e.c=e.l-p;var u;a:{e.k=e.c;if(!(n()&&e.f_a_b(S,2))){e.c=
+e.l-p;if(!(n()&&e.f_a_b(ea,2))){u=false;break a}}u=e.l-e.c;if(y()){e.b=e.c;e.s_d()}else{e.c=e.l-u;if(j()){e.b=e.c;e.s_d();e.k=e.c;if(g()){e.b=e.c;e.s_d();t()}}else{e.c=e.l-u;if(!t()){u=false;break a}}}u=true}if(!u){e.c=e.l-p;a:{e.k=e.c;if(!(n()&&e.f_a_b(fa,2))){e.c=e.l-p;if(!(n()&&e.f_a_b(F,4))){u=false;break a}}u=e.l-e.c;if(!j()){e.c=e.l-u;if(!y()){u=false;break a}}e.b=e.c;e.s_d();e.k=e.c;if(g()){e.b=e.c;e.s_d();t()}u=true}if(!u){e.c=e.l-p;e.k=e.c;if(n()&&e.f_a_b(ga,4)){e.b=e.c;e.s_d();e.k=e.c;p=
+e.l-e.c;if(x()){e.b=e.c;e.s_d();e.k=e.c;if(g()){e.b=e.c;e.s_d();t()}}else{e.c=e.l-p;if(g()){e.b=e.c;e.s_d()}else e.c=e.l-p;t()}}else{e.c=e.l-p;if(!d()){e.c=e.l-p;if(y()){e.b=e.c;e.s_d()}else{e.c=e.l-p;if(!t()){e.c=e.l-p;if(!o()){e.c=e.l-p;e.k=e.c;if(!x()){e.c=e.l-p;if(!j())return}e.b=e.c;e.s_d();e.k=e.c;if(g()){e.b=e.c;e.s_d();t()}}}}}}}}}}}function b(p,u,E){e.c=e.l-p;var D;a:{for(;;){D=e.l-e.c;if(e.i_g_b(H,97,305)){e.c=e.l-D;break}e.c=e.l-D;if(e.c<=e.lb){D=false;break a}e.c--}D=true}if(D){D=e.l-
+e.c;if(!e.e_s_b(1,u)){e.c=e.l-D;if(!e.e_s_b(1,E))return true}e.c=e.l-p;p=e.c;e.i_(e.c,e.c,E);e.c=p;return false}return true}function c(p,u,E){for(;!e.e_s(u,E);){if(e.c>=e.l)return true;e.c++}T=u;if(T!=e.l)return true;e.c=p;return false}var l=[new a("m",-1,-1),new a("n",-1,-1),new a("miz",-1,-1),new a("niz",-1,-1),new a("muz",-1,-1),new a("nuz",-1,-1),new a("m\u00fcz",-1,-1),new a("n\u00fcz",-1,-1),new a("m\u0131z",-1,-1),new a("n\u0131z",-1,-1)],C=[new a("leri",-1,-1),new a("lar\u0131",-1,-1)],F=
+[new a("ni",-1,-1),new a("nu",-1,-1),new a("n\u00fc",-1,-1),new a("n\u0131",-1,-1)],R=[new a("in",-1,-1),new a("un",-1,-1),new a("\u00fcn",-1,-1),new a("\u0131n",-1,-1)],ca=[new a("a",-1,-1),new a("e",-1,-1)],ea=[new a("na",-1,-1),new a("ne",-1,-1)],Q=[new a("da",-1,-1),new a("ta",-1,-1),new a("de",-1,-1),new a("te",-1,-1)],S=[new a("nda",-1,-1),new a("nde",-1,-1)],ga=[new a("dan",-1,-1),new a("tan",-1,-1),new a("den",-1,-1),new a("ten",-1,-1)],fa=[new a("ndan",-1,-1),new a("nden",-1,-1)],ba=[new a("la",
+-1,-1),new a("le",-1,-1)],da=[new a("ca",-1,-1),new a("ce",-1,-1)],W=[new a("im",-1,-1),new a("um",-1,-1),new a("\u00fcm",-1,-1),new a("\u0131m",-1,-1)],K=[new a("sin",-1,-1),new a("sun",-1,-1),new a("s\u00fcn",-1,-1),new a("s\u0131n",-1,-1)],X=[new a("iz",-1,-1),new a("uz",-1,-1),new a("\u00fcz",-1,-1),new a("\u0131z",-1,-1)],L=[new a("siniz",-1,-1),new a("sunuz",-1,-1),new a("s\u00fcn\u00fcz",-1,-1),new a("s\u0131n\u0131z",-1,-1)],Y=[new a("lar",-1,-1),new a("ler",-1,-1)],aa=[new a("niz",-1,-1),
+new a("nuz",-1,-1),new a("n\u00fcz",-1,-1),new a("n\u0131z",-1,-1)],U=[new a("dir",-1,-1),new a("tir",-1,-1),new a("dur",-1,-1),new a("tur",-1,-1),new a("d\u00fcr",-1,-1),new a("t\u00fcr",-1,-1),new a("d\u0131r",-1,-1),new a("t\u0131r",-1,-1)],ha=[new a("cas\u0131na",-1,-1),new a("cesine",-1,-1)],Z=[new a("di",-1,-1),new a("ti",-1,-1),new a("dik",-1,-1),new a("tik",-1,-1),new a("duk",-1,-1),new a("tuk",-1,-1),new a("d\u00fck",-1,-1),new a("t\u00fck",-1,-1),new a("d\u0131k",-1,-1),new a("t\u0131k",
+-1,-1),new a("dim",-1,-1),new a("tim",-1,-1),new a("dum",-1,-1),new a("tum",-1,-1),new a("d\u00fcm",-1,-1),new a("t\u00fcm",-1,-1),new a("d\u0131m",-1,-1),new a("t\u0131m",-1,-1),new a("din",-1,-1),new a("tin",-1,-1),new a("dun",-1,-1),new a("tun",-1,-1),new a("d\u00fcn",-1,-1),new a("t\u00fcn",-1,-1),new a("d\u0131n",-1,-1),new a("t\u0131n",-1,-1),new a("du",-1,-1),new a("tu",-1,-1),new a("d\u00fc",-1,-1),new a("t\u00fc",-1,-1),new a("d\u0131",-1,-1),new a("t\u0131",-1,-1)],J=[new a("sa",-1,-1),
+new a("se",-1,-1),new a("sak",-1,-1),new a("sek",-1,-1),new a("sam",-1,-1),new a("sem",-1,-1),new a("san",-1,-1),new a("sen",-1,-1)],$=[new a("mi\u015f",-1,-1),new a("mu\u015f",-1,-1),new a("m\u00fc\u015f",-1,-1),new a("m\u0131\u015f",-1,-1)],ia=[new a("b",-1,1),new a("c",-1,2),new a("d",-1,3),new a("\u011f",-1,4)],H=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,8,0,0,0,0,0,0,1],I=[1,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,1],V=[65],P=[65],M,T,O=[["a",[1,64,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,1],97,305],["e",[17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,130],101,252],["\u0131",[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],97,305],["i",[17],101,105],["o",V,111,117],["\u00f6",P,246,252],["u",V,111,117]],e=new G;this.setCurrent=function(p){e.s_c(p)};this.getCurrent=function(){return e.g_c()};this.stem=function(){var p;a:for(var u=e.c,E=2,D;;){for(D=e.c;!e.i_g(H,97,305);){if(e.c>=e.l){e.c=D;if(E>0){p=false;break a}e.c=u;p=true;break a}e.c++}E--}if(p){e.lb=e.c;e.c=e.l;a:{p=
+e.l-e.c;e.k=e.c;M=true;b:{u=e.l-e.c;if(!k()){e.c=e.l-u;if(!h()){e.c=e.l-u;if(!(e.f_a_b(J,8)&&w())){e.c=e.l-u;if(!(e.e_s_b(3,"ken")&&w())){u=true;break b}}}}u=false}if(u){e.c=e.l-p;b:{if(e.f_a_b(ha,2)){u=e.l-e.c;if(!e.f_a_b(L,4)){e.c=e.l-u;if(!g()){e.c=e.l-u;if(!A()){e.c=e.l-u;if(!(n()&&e.f_a_b(K,4))){e.c=e.l-u;if(!B())e.c=e.l-u}}}}if(k()){u=false;break b}}u=true}if(u){e.c=e.l-p;if(g()){e.b=e.c;e.s_d();u=e.l-e.c;e.k=e.c;if(!(n()&&e.f_a_b(U,8))){e.c=e.l-u;if(!h()){e.c=e.l-u;if(!(e.f_a_b(J,8)&&w())){e.c=
+e.l-u;if(!k())e.c=e.l-u}}}u=M=false}else u=true;if(u){e.c=e.l-p;if(r()){e.c=e.l-p;b:{u=e.l-e.c;if(!e.f_a_b(L,4)){e.c=e.l-u;if(!B()){e.c=e.l-u;if(!(n()&&e.f_a_b(K,4))){e.c=e.l-u;if(!A()){u=true;break b}}}}e.b=e.c;e.s_d();u=e.l-e.c;e.k=e.c;if(!k())e.c=e.l-u;u=false}if(u){e.c=e.l-p;if(!(n()&&e.f_a_b(U,8)))break a;e.b=e.c;e.s_d();e.k=e.c;p=e.l-e.c;if(!e.f_a_b(L,4)){e.c=e.l-p;if(!g()){e.c=e.l-p;if(!A()){e.c=e.l-p;if(!(n()&&e.f_a_b(K,4))){e.c=e.l-p;if(!B())e.c=e.l-p}}}}if(!k())e.c=e.l-p}}}}}e.b=e.c;e.s_d()}e.c=
+e.l;if(M){f();e.c=e.lb;p=e.c;b:{u=e.c;if(c(u,2,"ad")){e.c=u;if(c(u,5,"soyad")){u=false;break b}}u=true}if(u)p=false;else{e.lb=p;e.c=e.l;b:{p=e.l-e.c;if(!e.e_s_b(1,"d")){e.c=e.l-p;if(!e.e_s_b(1,"g"))break b}b(p,"a","\u0131")&&b(p,"e","i")&&b(p,"o","u")&&b(p,"\u00f6","\u00fc")}e.c=e.l;e.k=e.c;if(p=e.f_a_b(ia,4)){e.b=e.c;switch(p){case 1:e.s_f("p");break;case 2:e.s_f("\u00e7");break;case 3:e.s_f("t");break;case 4:e.s_f("k")}}p=true}if(p)return true}}return false}}}[N.substring(0,1).toUpperCase()+N.substring(1).toLowerCase()+
+"Stemmer"])};
View
82 webapp/assets/js/word_frequency.js
@@ -29,7 +29,7 @@ var TUWordFrequency = function() {
/* our word temnplates... */
this.word_template = '<div class="word-frequency-word" id="${id}"><span class="word-frequency-count">' +
'${count}</span>&nbsp;${word}</div>';
- this.post_template = '<div style="padding: 10px;">${post} - <a href="http://twitter.com/${author}">${author}</a>';
+ this.post_template = '<div style="padding: 10px;">${post} <a href="http://twitter.com/${author}">${author}</a>';
/* our stop words... */
this.stop_words = new Array('i', 'a', '-', "a's", "able", "about", "above", "according", "accordingly", "across",
@@ -104,7 +104,9 @@ var TUWordFrequency = function() {
}
$('.word_frequency').each(function(index) {
$(this).click(function() {
- tu_word_freq.find_words();
+ $('#word-frequency-spinner').show();
+ $('#word-frequency-div').show();
+ setTimeout(function() { tu_word_freq.find_words(); } , 300);
});
});
@@ -155,9 +157,9 @@ var TUWordFrequency = function() {
if(i >= 20 ) {
break;
}
- var sorted_word = this.sorted_words[i];
+ var sorted_word = this.sorted_words[i];
var litext = this.word_template.replace(/\${count}/, sorted_word['count']);
- var litext = litext.replace(/\${word}/, sorted_word['word']);
+ var litext = litext.replace(/\${word}/, sorted_word['default']);
var litext = litext.replace(/\${id}/, 'sorted_word' + i);
$('#word-frequency-words').append(litext);
}
@@ -176,11 +178,17 @@ var TUWordFrequency = function() {
var author = $('#' + author_id).html();
var post = tu_word_freq.post_template.replace(/\${post}/, post);
if(author) {
- var post = post.replace(/\${author}/, author);
- var post = post.replace(/\${author}/, '@' + author);
+ post = post.replace(/\${author}/, author);
+ post = post.replace(/\${author}/, ' - @' + author);
+ } else {
+ post = post.replace(/\${author}/g, '');
}
var regex = new RegExp(sorted_word['word'], 'ig');
post = post.toString().replace(regex, '<strong><i>' + sorted_word['word'] + '</i></strong>');
+ for(var unstemmed in sorted_word['unstemmed'][key]) {
+ var regex = new RegExp(unstemmed, 'ig');
+ post = post.toString().replace(regex, '<strong><i>' + unstemmed + '</i></strong>');
+ }
$('#word-frequency-posts').append(post);
}
$('#word-frequency-posts-div').show();
@@ -197,34 +205,49 @@ var TUWordFrequency = function() {
*/
this.get_words = function(text, reply_id) {
var words = text.split(/\s+/g);
- words.pop(); words.shift();
var cleaned_words = Array();
+
for(j = 0; j < words.length; j++) {
var tmp_word = words[j].toLowerCase();
+
// clean a bit...
+ tmp_word = tmp_word.replace(/^("|\(|')|("|'|\))$/g, '');
tmp_word = tmp_word.replace(/('s|\?|\.|!|,|'s(\.|\?|!))$/g, '');
+ tmp_word = tmp_word.replace(/^'|^"|'$|"$/g, '');
var good_status = true;
- if(tmp_word.length < 3 || tmp_word.match(/^&/) || this.stop_words_lookup[tmp_word]) {
+
+ var stemmer = new Snowball('english');
+ stemmer.setCurrent(tmp_word);
+ stemmer.stem();
+ var stemmer_word = stemmer.getCurrent();
+
+ if(stemmer_word.length < 3 || tmp_word.match(/^&/) || this.stop_words_lookup[stemmer_word]) {
good_status = false;
}
if(good_status) {
- cleaned_words[cleaned_words.length] = tmp_word;
- if(this.words[tmp_word]) {
+ cleaned_words[cleaned_words.length] = stemmer_word;
+ if(this.words[stemmer_word]) {
var cnt =
- this.words[tmp_word]['count']++;
+ this.words[stemmer_word]['count']++;
} else {
- this.words[tmp_word] = {count: 1};
+ this.words[stemmer_word] = {count: 1};
}
}
// store post ids with the word...
- if( this.words[tmp_word] ) {
- if(! this.words[tmp_word]['reply_ids']) {
- this.words[tmp_word]['reply_ids'] = new Object();
+ if( this.words[stemmer_word] ) {
+ if(! this.words[stemmer_word]['reply_ids']) {
+ this.words[stemmer_word]['reply_ids'] = new Object();
+ this.words[stemmer_word]['unstemmed'] = new Object();
+ this.words[stemmer_word]['default'] = tmp_word;
+ }
+ if(! this.words[stemmer_word]['reply_ids'][reply_id]) {
+ this.words[stemmer_word]['reply_ids'][reply_id] = reply_id;
}
- if(! this.words[tmp_word]['reply_ids'][reply_id]) {
- this.words[tmp_word]['reply_ids'][reply_id] = reply_id;
+ if(! this.words[stemmer_word]['unstemmed'][reply_id]) {
+ this.words[stemmer_word]['unstemmed'][reply_id] = new Object();
}
+ this.words[stemmer_word]['unstemmed'][reply_id][tmp_word] = true;
}
}
return cleaned_words;
@@ -237,7 +260,14 @@ var TUWordFrequency = function() {
//create an array of word counts form our object for sorting
var wordlist = new Array();
for (var key in this.words) {
- wordlist[wordlist.length] = {word: key, count: this.words[key]['count']};
+ if(this.words[key]['count'] < 2) {
+ continue;
+ }
+ wordlist[wordlist.length] = {
+ word: key, count: this.words[key]['count'],
+ default: this.words[key]['default'],
+ unstemmed: this.words[key]['unstemmed']
+ };
}
// our comparator
@@ -251,6 +281,22 @@ var TUWordFrequency = function() {
wordlist = wordlist.sort(compare);
return wordlist;
}
+
+ /**
+ * soundex js
+ * NOTE: not currently using...
+ */
+ this.soundex = function(string, p){
+ var i, j, l, r, p = isNaN(p) ? 4 : p > 10 ? 10 : p < 4 ? 4 : p,
+ m = {BFPV: 1, CGJKQSXZ: 2, DT: 3, L: 4, MN: 5, R: 6},
+ r = (s = string.toUpperCase().replace(/[^A-Z]/g, "").split("")).splice(0, 1);
+ for(i = -1, l = s.length; ++i < l;)
+ for(j in m)
+ if(j.indexOf(s[i]) + 1 && r[r.length-1] != m[j] && r.push(m[j]))
+ break;
+ return r.length > p && (r.length = p), r.join("") + (new Array(p - r.length + 1)).join("0");
+ }
+
}
var tu_word_freq = new TUWordFrequency();
Something went wrong with that request. Please try again.